2013-04-23 149 views
4

在啓用+XX:PrintSafePointStatistics時,我看到stdout上的轉儲格式如下。任何人都可以請幫我解釋列名或JVM指南,這正確解釋了這一點?規範指南JVM似乎沒有涵蓋標題的含義及其解釋。JVM SafePointStatistics - 任何人都可以幫忙解釋它

@400000005175823c18c9d534 16762.525: GenCollectForAllocation   [  973   0    0 ]  [  0  0  0  5 53 ] 0 
@400000005175823c18c9f08c 16762.586: CMS_Initial_Mark     [  973   0    1 ]  [  0  0  0  4 24 ] 0 
@400000005175823c18ca0414 16774.619: GenCollectForAllocation   [  975   0    0 ]  [  0  0  0  5 77 ] 0 
@400000005175823c18ca0be4 16777.387: CMS_Final_Remark     [  975   0    0 ]  [  0  0  0  5 18 ] 0 
@400000005175823c18ca273c 16786.080: GenCollectForAllocation   [  974   0    1 ]  [  0  0  0  5  0 ] 0 
@400000005175823c18ca2f0c   vmop     [threads: total initially_running wait_to_block] [time: spin block sync cleanup vmop] page_trap_count 
@400000005175823c18ca3eac 16786.086: GenCollectFull     [  974   0    2 ]  [  0  0  0  4 89 ] 0 
@400000005175823c18ca5a04 16798.393: GenCollectForAllocation   [  974   1    1 ]  [  2  0  3  5 57 ] 1 
@400000005175823c18ca69a4 16811.539: GenCollectForAllocation   [  975   2    1 ]  [  1  0  1  5 61 ] 1 
@400000005175823c18ca7944 16824.551: GenCollectForAllocation   [  973   5    5 ]  [ 14  0 15  5  0 ] 5 
@400000005175823c18ca88e4 16824.572: GenCollectForAllocation   [  973   1    0 ]  [  0  0  0  4 60 ] 0 
@400000005175823c18ca9884 16824.639: GenCollectFull     [  973   0    4 ]  [  0  0  0  5 49 ] 0 
@400000005175823c18caa054 16837.516: GenCollectForAllocation   [  973   2    2 ]  [  3  0  3  5 31 ] 2 
@400000005175823c18cab7c4 16840.902: BulkRevokeBias     [  974   0    0 ]  [  0  0  0  5  6 ] 0 
@400000005175823c18cacf34 16848.729: GenCollectForAllocation   [  973   3    4 ]  [  4  0  5  4 55 ] 3 
@400000005175823c18cad704 16848.795: CMS_Initial_Mark     [  973   0    2 ]  [  0  0  0  4 24 ] 0 
@400000005175823c18caf25c 16853.969: GenCollectForAllocation   [  976   1    2 ]  [  2  0  3  5 92 ] 1 
@400000005175823c18cafa2c 16863.975: CMS_Final_Remark     [  977   0    0 ]  [  0  0  0  5 352 ] 0 
@400000005175823c18cb1584 16867.770: GenCollectForAllocation   [  976   0    0 ]  [  0  0  0  5 114 ] 0 
@400000005175823c18cb290c 16881.496: GenCollectForAllocation   [  976   3    2 ]  [  4  0  4  5 60 ] 2 
@400000005175823c18cb30dc 16891.580: RevokeBias      [  976   0    0 ]  [  0  0  0  5  0 ] 0 
@400000005175823c18cb4c34 16893.035: GenCollectForAllocation   [  976   1    1 ]  [ 10  0 11  4 58 ] 1 
@400000005175823c18cb5fbc 16904.123: GenCollectForAllocation   [  976   2    2 ]  [  5  0  5  5 65 ] 2 
@400000005175823c18cb678c 16911.201: no vm operation     [  975   0    0 ]  [  0  0  0  5  0 ] 0 
@400000005175823c18cb82e4 16916.963: GenCollectForAllocation   [  973   0    0 ]  [  0  0  0  5 56 ] 0 
@400000005175823c18cb966c 16927.307: GenCollectForAllocation   [  973   0    0 ]  [  0  0  0  4  0 ] 0 
@400000005175823c18cba60c 16927.312: GenCollectForAllocation   [  973   1    1 ]  [  0  0  0  4 54 ] 0 
@400000005175823c18cbb1c4 16927.373: CMS_Initial_Mark     [  973   0    7 ]  [  0  0  0  5 25 ] 0 
@400000005175823c18cbc934 16927.984: BulkRevokeBias     [  975   1    0 ]  [  0  0  0  5  7 ] 0 
@400000005175823c18cbe0a4 16938.088: GenCollectForAllocation   [  975   0    0 ]  [  0  0  0  5  0 ] 0 
@400000005175823c18cbe874 16938.096: GenCollectForAllocation   [  975   0    1 ]  [  0  0  0  4 77 ] 0 
@400000005175823c18cc0f84 16938.178: GenCollectFull     [  975   1    4 ]  [  0  0  0  4 76 ] 0 
@400000005175823c18cc136c 16941.404: CMS_Final_Remark     [  975   0    0 ]  [  0  0  0  5 17 ] 0 
@400000005175823c18cc230c 16948.600: GenCollectForAllocation   [  975   0    0 ]  [  0  0  0  5 33 ] 0 
@400000005175823c18cc2ec4 16959.957: GenCollectForAllocation   [  975   1    1 ]  [  5  0  5  5 56 ] 1 
@400000005175823c18cc4a1c 16969.805: GenCollectForAllocation   [  975   1    2 ]  [ 11  0 12  5 55 ] 1 
@400000005175823c18cc55d4   vmop     [threads: total initially_running wait_to_block] [time: spin block sync cleanup vmop] page_trap_count 
@400000005175823c18cc618c 16969.879: CMS_Initial_Mark     [  975   1    3 ]  [  0  0  0  4 22 ] 0 
@400000005175823c18cc712c 16981.455: GenCollectForAllocation   [  976   1    1 ]  [  8  0  8  4 76 ] 1 
@400000005175823c18cc80cc 16984.811: CMS_Final_Remark     [  976   1    1 ]  [  2  0  3  5 23 ] 1 
@400000005175823c18cc983c 16992.365: GenCollectForAllocation   [  975   5    5 ]  [ 23  0 23  4 95 ] 5 
@400000005175823c18cca3f4 17005.029: GenCollectForAllocation   [  975   0    0 ]  [  0  0  0  5 55 ] 0 
@400000005175823c18ccbb64 17013.074: BulkRevokeBias     [  976   0    0 ]  [  0  0  0  4  8 ] 0 
@400000005175823c18ccc71c 17015.502: GenCollectForAllocation   [  975   0    0 ]  [  0  0  0  5 57 ] 0 
@400000005175823c18ccde8c 17025.293: GenCollectForAllocation   [  975   0    0 ]  [  0  0  0  5 52 ] 0 
@400000005175823c18ccf214 17034.678: GenCollectForAllocation   [  973   3    3 ]  [ 15  0 16  4 45 ] 3 
@400000005175823c18ccfdcc 17045.910: GenCollectForAllocation   [  973   0    0 ]  [  0  0  0  5 54 ] 0 
@400000005175823c18cd153c 17056.883: GenCollectForAllocation   [  973   1    2 ]  [  1  0  1  5  0 ] 1 
+0

btw。這是什麼JVM版本? – 2013-04-23 22:16:43

+0

Java HotSpot(TM)64位服務器VM/1.6.0_35 – Ananth 2013-04-24 01:56:00

+0

請忽略上面日誌中的第一列。第一列是從寫日誌的非jvm工具生成的。 – Ananth 2013-04-28 01:10:22

回答

6

我發現在Java性能一書中的簡短說明:

每一行包含自VM推出的還原點操作的發生,類型虛擬機運行的,在VM活動線程的當前數目時,當前線程數量,最初運行的當前線程數量,等待阻塞的當前線程數量,線程花費的時間量(以毫秒爲單位),線程花費的時間量(以毫秒爲單位),線程花費的時間量(以毫秒爲單位進行同步),時間量以毫秒線程花費清理,在VM操作中花費的毫秒數量以及頁面陷阱數量。

在輸出結束時會打印一個摘要,彙總不同安全點操作的數量以及以毫秒爲單位的最大同步時間以及花費最長時間的安全點操作。

對於強調低延遲並希望將延遲事件與HotSpot VM引起的延遲相關聯的應用程序非常有用,因爲它們是安全點操作的結果。

另請參閱-XX:+PrintGCApplicationStoppedTime-XX+PrintGCApplicationConcurrentTime

+0

謝謝堆積啤酒。這真的很有幫助。 – Ananth 2013-04-24 00:57:26

2

嘗試this page on PrintSafepointStatistics。 我想一些進一步的研究,你會發現一些有用的東西。

+0

感謝您的指針。事實上,我更早地查看了鏈接,但無法獲得相同的指針。作者提到JVM SafePoint協議,尋找該指南也沒有幫助,因爲似乎沒有這樣的指南。 – Ananth 2013-04-23 20:14:45

+0

呃,我很抱歉偷你的時間。我希望你能得到更好的答案! – yrk 2013-04-23 20:21:25

相關問題