RFR: 8342818: Implement CPU Time Profiling for JFR [v4]

Markus Grönlund mgronlun at openjdk.org
Thu Oct 31 13:38:41 UTC 2024


On Wed, 30 Oct 2024 19:34:23 GMT, Johannes Bechberger <jbechberger at openjdk.org> wrote:

>> This is the code for the [JEP draft: CPU Time based profiling for JFR].
>
> Johannes Bechberger has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Remove min_valid_free_size_bytes

Linux x64-debug:

jfr/recorder/checkpoint/types/traceid/jfrTraceIdKlassQueue.cpp:190

assert(id > 0) failed: invariant

---------------  T H R E A D  ---------------

Current thread (0x00007efe60f3f280):  JavaThread "JFR Recorder Thread" daemon [_thread_in_vm, id=3499556, stack(0x00007efeb13f5000,0x00007efeb14f5000) (1024K)]

Stack: [0x00007efeb13f5000,0x00007efeb14f5000],  sp=0x00007efeb14f37d0,  free space=1017k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0xfcd274]  EpochDispatchOp<JfrEpochQueue<JfrEpochQueueKlassPolicy>::ElementDispatch<KlassFunctor> >::dispatch(bool, unsigned char const*, unsigned long)+0x194  (jfrTraceIdKlassQueue.cpp:190)
V  [libjvm.so+0xfcd75e]  void JfrEpochQueue<JfrEpochQueueKlassPolicy>::iterate<KlassFunctor>(KlassFunctor&, bool)+0x37e  (jfrStorageUtils.inline.hpp:160)
V  [libjvm.so+0xfcbc88]  JfrTraceIdKlassQueue::iterate(void (*)(Klass*), bool)+0x38  (jfrTraceIdKlassQueue.cpp:269)
V  [libjvm.so+0xfda2f4]  JfrTypeSet::serialize(JfrCheckpointWriter*, JfrCheckpointWriter*, bool, bool)+0xfb4  (jfrTypeSet.cpp:559)
V  [libjvm.so+0xf11b6d]  flush_type_set(Thread*)+0x8d  (jfrCheckpointManager.cpp:640)
V  [libjvm.so+0xf16a36]  JfrCheckpointManager::flush_type_set()+0x116  (jfrCheckpointManager.cpp:650)
V  [libjvm.so+0xf944a6]  JfrRecorderService::flush()+0xe6  (jfrRecorderService.cpp:158)
V  [libjvm.so+0xf94e2a]  JfrRecorderService::invoke_flush()+0xba  (jfrRecorderService.cpp:158)
V  [libjvm.so+0xf95dfa]  JfrRecorderService::flushpoint()+0x10a  (jfrRecorderService.cpp:680)
V  [libjvm.so+0xf96b38]  recorderthread_entry(JavaThread*, JavaThread*)+0x178  (jfrRecorderThreadLoop.cpp:83)
V  [libjvm.so+0xefc16c]  JavaThread::thread_main_inner()+0xcc  (javaThread.cpp:759)
V  [libjvm.so+0x1836106]  Thread::call_run()+0xb6  (thread.cpp:234)
V  [libjvm.so+0x15144a8]  thread_native_entry(Thread*)+0x128  (os_linux.cpp:858)

-------------

PR Comment: https://git.openjdk.org/jdk/pull/20752#issuecomment-2449860694


More information about the hotspot-dev mailing list