Skip to content

Instantly share code, notes, and snippets.

@timo
Last active August 28, 2019 19:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save timo/f4020bb85a1021f39b53483424cf0276 to your computer and use it in GitHub Desktop.
Save timo/f4020bb85a1021f39b53483424cf0276 to your computer and use it in GitHub Desktop.
spesh event and gc event with pretty-printers
timo@schmand ~/p/ecosystem> perl6-m fsa_dump_visualizer.p6 /tmp/mvm_fsa_dump.26060.messagepack
file is 1812808 big
GCEvent:
seqnum 5
starttime 2638971059108
vmtime 514506
duration 3930
is_major 0
promoted 845241
thread 1
GCEvent:
seqnum 6
starttime 2638971072352
vmtime 527750
duration 1960
is_major 0
promoted 942800
thread 6
GCEvent:
seqnum 7
starttime 2638971077286
vmtime 532684
duration 1426
is_major 0
promoted 63920
thread 6
SpeshEvent:
seqnum 29
starttime 2638971074594
vmtime 529992
wait_before 1
thread_id 1
statstime 875
new_frames 6
updated_frames 1882
plantime 14
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 3683
frames_with_stats 125
totaltime 3969
GCEvent:
seqnum 8
starttime 2638971083620
vmtime 539018
duration 1198
is_major 0
promoted 47256
thread 6
GCEvent:
seqnum 9
starttime 2638971100029
vmtime 555427
duration 658
is_major 0
promoted 26216
thread 8
SpeshEvent:
seqnum 30
starttime 2638971079456
vmtime 534855
wait_before 0
thread_id 6
statstime 987
new_frames 179
updated_frames 2278
plantime 15
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 31593
frames_with_stats 229
totaltime 32063
SpeshEvent:
seqnum 31
starttime 2638971116145
vmtime 571543
wait_before 3614
thread_id 6
statstime 890
new_frames 16
updated_frames 2181
plantime 10
certain_spesh 1
observed_spesh 0
osr_spesh 0
speshtime 4605
frames_with_stats 95
totaltime 4900
GCEvent:
seqnum 10
starttime 2638971120083
vmtime 575481
duration 2903
is_major 0
promoted 20856
thread 6
GCEvent:
seqnum 11
starttime 2638971135843
vmtime 591241
duration 2503
is_major 0
promoted 31060
thread 6
SpeshEvent:
seqnum 32
starttime 2638971127854
vmtime 583252
wait_before 5903
thread_id 6
statstime 840
new_frames 16
updated_frames 1602
plantime 13
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 10631
frames_with_stats 111
totaltime 11196
SpeshEvent:
seqnum 33
starttime 2638971140091
vmtime 595489
wait_before 178
thread_id 4
statstime 994
new_frames 56
updated_frames 1994
plantime 18
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 1552
frames_with_stats 98
totaltime 2480
SpeshEvent:
seqnum 34
starttime 2638971143593
vmtime 598991
wait_before 0
thread_id 6
statstime 1125
new_frames 0
updated_frames 1235
plantime 8
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 1240
frames_with_stats 52
totaltime 1427
SpeshEvent:
seqnum 35
starttime 2638971146162
vmtime 601560
wait_before 0
thread_id 8
statstime 862
new_frames 10
updated_frames 2118
plantime 5
certain_spesh 1
observed_spesh 1
osr_spesh 0
speshtime 876
frames_with_stats 53
totaltime 1248
SpeshEvent:
seqnum 36
starttime 2638971155727
vmtime 611125
wait_before 7439
thread_id 6
statstime 1460
new_frames 0
updated_frames 1186
plantime 10
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 1239
frames_with_stats 49
totaltime 1463
GCEvent:
seqnum 12
starttime 2638971161949
vmtime 617347
duration 2585
is_major 0
promoted 824
thread 4
SpeshEvent:
seqnum 37
starttime 2638971171379
vmtime 626777
wait_before 12708
thread_id 6
statstime 716
new_frames 0
updated_frames 1058
plantime 22
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 5031
frames_with_stats 46
totaltime 5097
GCEvent:
seqnum 13
starttime 2638971186761
vmtime 642159
duration 1681
is_major 0
promoted 51312
thread 6
GCEvent:
seqnum 14
starttime 2638971205143
vmtime 660541
duration 1676
is_major 0
promoted 46544
thread 6
SpeshEvent:
seqnum 38
starttime 2638971191892
vmtime 647290
wait_before 14667
thread_id 6
statstime 744
new_frames 0
updated_frames 403
plantime 14
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 13797
frames_with_stats 41
totaltime 15059
GCEvent:
seqnum 15
starttime 2638971222174
vmtime 677572
duration 1610
is_major 0
promoted 46352
thread 6
SpeshEvent:
seqnum 39
starttime 2638971221369
vmtime 676767
wait_before 13654
thread_id 8
statstime 759
new_frames 0
updated_frames 1921
plantime 13
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 2222
frames_with_stats 36
totaltime 2445
GCEvent:
seqnum 16
starttime 2638971237603
vmtime 693001
duration 1783
is_major 0
promoted 45048
thread 6
SpeshEvent:
seqnum 40
starttime 2638971253038
vmtime 708436
wait_before 27532
thread_id 6
statstime 996
new_frames 12
updated_frames 1253
plantime 14
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 1022
frames_with_stats 53
totaltime 1048
GCEvent:
seqnum 17
starttime 2638971255189
vmtime 710587
duration 1759
is_major 0
promoted 48016
thread 6
SpeshEvent:
seqnum 41
starttime 2638971259863
vmtime 715261
wait_before 4745
thread_id 4
statstime 792
new_frames 51
updated_frames 1700
plantime 6
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 5717
frames_with_stats 59
totaltime 5835
GCEvent:
seqnum 18
starttime 2638971270701
vmtime 726099
duration 1857
is_major 0
promoted 40763
thread 6
SpeshEvent:
seqnum 42
starttime 2638971286566
vmtime 741964
wait_before 17193
thread_id 6
statstime 743
new_frames 27
updated_frames 1333
plantime 14
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 931
frames_with_stats 85
totaltime 962
GCEvent:
seqnum 19
starttime 2638971288782
vmtime 744180
duration 1774
is_major 0
promoted 56403
thread 6
SpeshEvent:
seqnum 43
starttime 2638971297299
vmtime 752697
wait_before 9004
thread_id 8
statstime 651
new_frames 0
updated_frames 1861
plantime 19
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 5457
frames_with_stats 34
totaltime 5492
GCEvent:
seqnum 20
starttime 2638971306784
vmtime 762182
duration 2121
is_major 0
promoted 57582
thread 6
SpeshEvent:
seqnum 44
starttime 2638971314927
vmtime 770325
wait_before 11165
thread_id 6
statstime 788
new_frames 0
updated_frames 1651
plantime 17
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 1572
frames_with_stats 83
totaltime 1602
GCEvent:
seqnum 21
starttime 2638971325310
vmtime 780708
duration 2006
is_major 0
promoted 56492
thread 6
GCEvent:
seqnum 22
starttime 2638971342265
vmtime 797663
duration 2110
is_major 0
promoted 49999
thread 6
SpeshEvent:
seqnum 45
starttime 2638971354964
vmtime 810362
wait_before 37619
thread_id 6
statstime 922
new_frames 0
updated_frames 1573
plantime 16
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 2448
frames_with_stats 81
totaltime 2487
GCEvent:
seqnum 23
starttime 2638971362901
vmtime 818299
duration 1828
is_major 0
promoted 54499
thread 6
GCEvent:
seqnum 24
starttime 2638971382183
vmtime 837581
duration 1934
is_major 0
promoted 57026
thread 6
GCEvent:
seqnum 25
starttime 2638971401858
vmtime 857256
duration 1830
is_major 0
promoted 54334
thread 6
SpeshEvent:
seqnum 46
starttime 2638971404122
vmtime 859520
wait_before 45342
thread_id 6
statstime 800
new_frames 0
updated_frames 1632
plantime 49
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 5133
frames_with_stats 79
totaltime 5171
GCEvent:
seqnum 26
starttime 2638971421006
vmtime 876404
duration 2076
is_major 0
promoted 56528
thread 6
GCEvent:
seqnum 27
starttime 2638971440704
vmtime 896102
duration 2466
is_major 0
promoted 56530
thread 6
GCEvent:
seqnum 28
starttime 2638971461397
vmtime 916795
duration 2008
is_major 0
promoted 57513
thread 6
GCEvent:
seqnum 29
starttime 2638971481199
vmtime 936597
duration 2196
is_major 0
promoted 59925
thread 6
SpeshEvent:
seqnum 47
starttime 2638971480308
vmtime 935706
wait_before 70155
thread_id 6
statstime 859
new_frames 0
updated_frames 1513
plantime 49
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 1002
frames_with_stats 72
totaltime 1120
GCEvent:
seqnum 30
starttime 2638971501977
vmtime 957375
duration 2066
is_major 0
promoted 58958
thread 6
GCEvent:
seqnum 31
starttime 2638971521852
vmtime 977251
duration 2725
is_major 0
promoted 60480
thread 6
GCEvent:
seqnum 32
starttime 2638971542788
vmtime 998186
duration 2498
is_major 0
promoted 59410
thread 6
GCEvent:
seqnum 33
starttime 2638971564075
vmtime 1019473
duration 2219
is_major 0
promoted 60304
thread 6
SpeshEvent:
seqnum 48
starttime 2638971562371
vmtime 1017769
wait_before 78456
thread_id 6
statstime 788
new_frames 0
updated_frames 1850
plantime 51
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 10185
frames_with_stats 72
totaltime 10225
GCEvent:
seqnum 34
starttime 2638971583939
vmtime 1039337
duration 1534
is_major 0
promoted 2064
thread 9
SpeshEvent:
seqnum 49
starttime 2638971585968
vmtime 1041366
wait_before 11438
thread_id 9
statstime 728
new_frames 57
updated_frames 1705
plantime 10
certain_spesh 0
observed_spesh 2
osr_spesh 0
speshtime 741
frames_with_stats 65
totaltime 833
0.59243 - boop 524288
GCEvent:
seqnum 35
starttime 2638971600980
vmtime 1056378
duration 2294
is_major 0
promoted 40417
thread 6
GCEvent:
seqnum 36
starttime 2638971616851
vmtime 1072249
duration 1867
is_major 0
promoted 55544
thread 6
GCEvent:
seqnum 37
starttime 2638971632707
vmtime 1088105
duration 2045
is_major 0
promoted 46928
thread 6
GCEvent:
seqnum 38
starttime 2638971648398
vmtime 1103796
duration 2139
is_major 0
promoted 46816
thread 6
GCEvent:
seqnum 39
starttime 2638971664706
vmtime 1120104
duration 2037
is_major 0
promoted 46576
thread 6
GCEvent:
seqnum 40
starttime 2638971681361
vmtime 1136759
duration 2310
is_major 0
promoted 43984
thread 6
GCEvent:
seqnum 41
starttime 2638971698478
vmtime 1153876
duration 2054
is_major 0
promoted 50235
thread 6
GCEvent:
seqnum 42
starttime 2638971714469
vmtime 1169867
duration 2179
is_major 0
promoted 48787
thread 6
GCEvent:
seqnum 43
starttime 2638971730765
vmtime 1186163
duration 2173
is_major 0
promoted 53528
thread 6
GCEvent:
seqnum 44
starttime 2638971747065
vmtime 1202464
duration 2395
is_major 0
promoted 43128
thread 6
GCEvent:
seqnum 45
starttime 2638971763699
vmtime 1219097
duration 2311
is_major 0
promoted 45539
thread 6
SpeshEvent:
seqnum 50
starttime 2638971766306
vmtime 1221704
wait_before 178631
thread_id 4
statstime 714
new_frames 38
updated_frames 1744
plantime 5
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 0
frames_with_stats 48
totaltime 38
GCEvent:
seqnum 46
starttime 2638971780505
vmtime 1235903
duration 2555
is_major 0
promoted 57064
thread 6
GCEvent:
seqnum 47
starttime 2638971799807
vmtime 1255205
duration 2343
is_major 0
promoted 54971
thread 6
GCEvent:
seqnum 48
starttime 2638971815942
vmtime 1271340
duration 2440
is_major 0
promoted 43066
thread 6
GCEvent:
seqnum 49
starttime 2638971832845
vmtime 1288243
duration 2625
is_major 0
promoted 58488
thread 6
^Csigint
done!
0:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13: GCEvent:
seqnum 50
starttime 2638971853976
vmtime 1309374
duration 2085
is_major 0
promoted 41113
thread 6
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43: GCEvent:
seqnum 51
starttime 2638971869650
vmtime 1325048
duration 2365
is_major 0
promoted 52139
thread 6
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
SpeshEvent:
seqnum 51
starttime 2638971866385
vmtime 1321783
wait_before 99122
thread_id 1
statstime 759
new_frames 43
updated_frames 1786
plantime 10
certain_spesh 0
observed_spesh 1
osr_spesh 0
speshtime 14528
frames_with_stats 79
totaltime 14580
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
SpeshEvent:
seqnum 52
starttime 2638971881986
vmtime 1337384
wait_before 0
thread_id 1
statstime 631
new_frames 0
updated_frames 1797
plantime 11
certain_spesh 0
observed_spesh 2
osr_spesh 0
speshtime 4164
frames_with_stats 53
totaltime 4213
GCEvent:
seqnum 52
starttime 2638971888638
vmtime 1344037
duration 2517
is_major 0
promoted 57720
thread 6
timo@schmand ~/p/ecosystem>
use nqp;
my $eventqueue;
INIT {
class QueueType is repr<ConcBlockingQueue> {}
constant $evq = QueueType.new;
class GCEvent is array[int64] is repr<VMArray> is array_type(int64) {
method gist {
"GCEvent:\n " ~ (<seqnum starttime vmtime duration is_major promoted thread> Z=> self.list).join("\n ");
}
}
class SpeshOverviewEvent is array[int64] is repr<VMArray> is array_type(int64) {
method gist {
"SpeshEvent:\n " ~ (<seqnum starttime vmtime wait_before thread_id statstime new_frames updated_frames plantime certain_spesh observed_spesh osr_spesh speshtime frames_with_stats totaltime> Z=> self.list).join("\n ");
}
}
nqp::vmeventsubscribe($evq<>,
nqp::hash(
'gcevent', GCEvent,
'speshoverviewevent', SpeshOverviewEvent)
);
$eventqueue = $evq;
}
start {
loop {
my $thing = nqp::shift($eventqueue<>);
$thing.say;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment