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

Markus Grönlund mgronlun at openjdk.org
Thu Oct 31 16:12:55 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-aarch64-debug

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

Current thread (0x0000ffffac4222b0):  JavaThread "JFR Recorder Thread" daemon [_thread_in_vm, id=144094, stack(0x0000ffff5e17a000,0x0000ffff5e378000) (2040K)]

Stack: [0x0000ffff5e17a000,0x0000ffff5e378000],  sp=0x0000ffff5e376110,  free space=2032k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0xe19e54]  get_cld(Klass const*)+0x34  (klass.hpp:684)
V  [libjvm.so+0xe1c674]  write_klass(JfrCheckpointWriter*, Klass const*, bool, int&)+0x70  (jfrTypeSet.cpp:370)
V  [libjvm.so+0xe22d40]  JfrArtifactCallbackHost<Klass const*, CompositeFunctor<Klass const*, CompositeFunctor<Klass const*, JfrTypeWriterHost<JfrPredicatedTypeWriterImplHost<Klass const*, LeakPredicate<Klass const*>, &(write__klass__leakp(JfrCheckpointWriter*, void const*))>, 183u>, JfrTypeWriterHost<JfrPredicatedTypeWriterImplHost<Klass const*, SerializePredicate<Klass const*>, &(write__klass(JfrCheckpointWriter*, void const*))>, 183u> >, KlassArtifactRegistrator> >::do_artifact(void const*)+0x90  (jfrTypeSet.cpp:398)
V  [libjvm.so+0xe14fe0]  EpochDispatchOp<JfrEpochQueue<JfrEpochQueueKlassPolicy>::ElementDispatch<KlassFunctor> >::dispatch(bool, unsigned char const*, unsigned long)+0xd0  (jfrTraceIdKlassQueue.hpp:42)
V  [libjvm.so+0xe15328]  void JfrEpochQueue<JfrEpochQueueKlassPolicy>::iterate<KlassFunctor>(KlassFunctor&, bool)+0xd8  (jfrStorageUtils.inline.hpp:160)
V  [libjvm.so+0xe13ad0]  JfrTraceIdKlassQueue::iterate(void (*)(Klass*), bool)+0x40  (jfrTraceIdKlassQueue.cpp:269)
V  [libjvm.so+0xe21358]  JfrTypeSet::serialize(JfrCheckpointWriter*, JfrCheckpointWriter*, bool, bool)+0x1c4  (jfrTypeSet.cpp:565)
V  [libjvm.so+0xd6baf4]  JfrCheckpointManager::write_type_set()+0x1a0  (jfrCheckpointManager.cpp:617)
V  [libjvm.so+0xddfa54]  JfrRecorderService::post_safepoint_write()+0xb0  (jfrRecorderService.cpp:613)
V  [libjvm.so+0xde0bdc]  JfrRecorderService::chunk_rotation()+0x3c  (jfrRecorderService.cpp:573)
V  [libjvm.so+0xde2104]  JfrRecorderService::rotate(int)+0x100  (jfrRecorderService.cpp:539)
V  [libjvm.so+0xde332c]  recorderthread_entry(JavaThread*, JavaThread*)+0x2ac  (jfrRecorderThreadLoop.cpp:81)
V  [libjvm.so+0xd50400]  JavaThread::thread_main_inner()+0xcc  (javaThread.cpp:759)
V  [libjvm.so+0x15e59e0]  Thread::call_run()+0xac  (thread.cpp:234)
V  [libjvm.so+0x131fae4]  thread_native_entry(Thread*)+0x130  (os_linux.cpp:858)
C  [libc.so.6+0x806b8]  start_thread+0x2d8

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

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


More information about the hotspot-dev mailing list