mirror of
https://github.com/jlfwong/speedscope.git
synced 2025-01-06 02:16:07 +03:00
Add tests for importers (#56)
This also fixes deep copy import for Instruments when copying from Instruments 7 Related to #14
This commit is contained in:
parent
405e751bbb
commit
2207ff54ce
@ -7,7 +7,11 @@ import {importFromBGFlameGraph} from './import/bg-flamegraph'
|
||||
import {importFromStackprof} from './import/stackprof'
|
||||
import {importFromChromeTimeline, importFromChromeCPUProfile} from './import/chrome'
|
||||
import {importFromFirefox} from './import/firefox'
|
||||
import {importFromInstrumentsDeepCopy, importFromInstrumentsTrace} from './import/instruments'
|
||||
import {
|
||||
importFromInstrumentsDeepCopy,
|
||||
importFromInstrumentsTrace,
|
||||
FileSystemDirectoryEntry,
|
||||
} from './import/instruments'
|
||||
|
||||
import {FlamechartRenderer} from './flamechart-renderer'
|
||||
import {CanvasContext} from './canvas-context'
|
||||
@ -82,7 +86,7 @@ function importProfile(fileName: string, contents: string): Profile | null {
|
||||
|
||||
// If the first line contains "Symbol Name", preceded by a tab, it's probably
|
||||
// a deep copy from OS X Instruments.app
|
||||
if (/^[\w \t]*\tSymbol Name/.exec(contents)) {
|
||||
if (/^[\w \t\(\)]*\tSymbol Name/.exec(contents)) {
|
||||
console.log('Importing as Instruments.app deep copy')
|
||||
return importFromInstrumentsDeepCopy(contents)
|
||||
}
|
||||
@ -366,7 +370,7 @@ export class Application extends ReloadableComponent<{}, ApplicationState> {
|
||||
|
||||
const firstItem = ev.dataTransfer.items[0]
|
||||
if ('webkitGetAsEntry' in firstItem) {
|
||||
const webkitEntry: WebKitEntry = firstItem.webkitGetAsEntry()
|
||||
const webkitEntry: FileSystemDirectoryEntry = firstItem.webkitGetAsEntry()
|
||||
|
||||
// Instrument.app file format is actually a directory.
|
||||
if (webkitEntry.isDirectory && webkitEntry.name.endsWith('.trace')) {
|
||||
@ -415,7 +419,7 @@ export class Application extends ReloadableComponent<{}, ApplicationState> {
|
||||
async maybeLoadHashParamProfile() {
|
||||
if (this.hashParams.profileURL) {
|
||||
this.loadProfile(async () => {
|
||||
const response = await fetch(this.hashParams.profileURL)
|
||||
const response = await fetch(this.hashParams.profileURL!)
|
||||
let filename = new URL(this.hashParams.profileURL!).pathname
|
||||
if (filename.includes('/')) {
|
||||
filename = filename.slice(filename.lastIndexOf('/') + 1)
|
||||
|
50
import/__snapshots__/bg-flamegraph.test.ts.snap
Normal file
50
import/__snapshots__/bg-flamegraph.test.ts.snap
Normal file
@ -0,0 +1,50 @@
|
||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`importFromBGFlameGraph 1`] = `
|
||||
Object {
|
||||
"frames": Array [
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": undefined,
|
||||
"key": "a",
|
||||
"line": undefined,
|
||||
"name": "a",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 14,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": undefined,
|
||||
"key": "b",
|
||||
"line": undefined,
|
||||
"name": "b",
|
||||
"selfWeight": 5,
|
||||
"totalWeight": 14,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": undefined,
|
||||
"key": "c",
|
||||
"line": undefined,
|
||||
"name": "c",
|
||||
"selfWeight": 5,
|
||||
"totalWeight": 5,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": undefined,
|
||||
"key": "d",
|
||||
"line": undefined,
|
||||
"name": "d",
|
||||
"selfWeight": 4,
|
||||
"totalWeight": 4,
|
||||
},
|
||||
],
|
||||
"stacks": Array [
|
||||
"a;b;c 2",
|
||||
"a;b;d 4",
|
||||
"a;b;c 3",
|
||||
"a;b 5",
|
||||
],
|
||||
}
|
||||
`;
|
284
import/__snapshots__/chrome.test.ts.snap
Normal file
284
import/__snapshots__/chrome.test.ts.snap
Normal file
@ -0,0 +1,284 @@
|
||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`importFromChromeCPUProfile 1`] = `
|
||||
Object {
|
||||
"frames": Array [
|
||||
Frame {
|
||||
"col": -1,
|
||||
"file": "",
|
||||
"key": "(root)::-1:-1",
|
||||
"line": -1,
|
||||
"name": "(root)",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 45920,
|
||||
},
|
||||
Frame {
|
||||
"col": 0,
|
||||
"file": "",
|
||||
"key": "(anonymous)::0:0",
|
||||
"line": 0,
|
||||
"name": "(anonymous)",
|
||||
"selfWeight": 11575,
|
||||
"totalWeight": 45920,
|
||||
},
|
||||
Frame {
|
||||
"col": 10,
|
||||
"file": "",
|
||||
"key": "a::0:10",
|
||||
"line": 0,
|
||||
"name": "a",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 34345,
|
||||
},
|
||||
Frame {
|
||||
"col": 10,
|
||||
"file": "",
|
||||
"key": "b::5:10",
|
||||
"line": 5,
|
||||
"name": "b",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 16788,
|
||||
},
|
||||
Frame {
|
||||
"col": 10,
|
||||
"file": "",
|
||||
"key": "d::13:10",
|
||||
"line": 13,
|
||||
"name": "d",
|
||||
"selfWeight": 34345,
|
||||
"totalWeight": 34345,
|
||||
},
|
||||
Frame {
|
||||
"col": 10,
|
||||
"file": "",
|
||||
"key": "c::9:10",
|
||||
"line": 9,
|
||||
"name": "c",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 17557,
|
||||
},
|
||||
],
|
||||
"stacks": Array [
|
||||
"(root);(anonymous) 11.57ms",
|
||||
"(root);(anonymous);a;b;d 16.79ms",
|
||||
"(root);(anonymous);a;c;d 17.56ms",
|
||||
],
|
||||
}
|
||||
`;
|
||||
|
||||
exports[`importFromChromeTimeline 1`] = `
|
||||
Object {
|
||||
"frames": Array [
|
||||
Frame {
|
||||
"col": -1,
|
||||
"file": "",
|
||||
"key": "(root)::-1:-1",
|
||||
"line": -1,
|
||||
"name": "(root)",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 555107,
|
||||
},
|
||||
Frame {
|
||||
"col": -1,
|
||||
"file": "",
|
||||
"key": "(program)::-1:-1",
|
||||
"line": -1,
|
||||
"name": "(program)",
|
||||
"selfWeight": 12244,
|
||||
"totalWeight": 12244,
|
||||
},
|
||||
Frame {
|
||||
"col": -1,
|
||||
"file": "",
|
||||
"key": "(idle)::-1:-1",
|
||||
"line": -1,
|
||||
"name": "(idle)",
|
||||
"selfWeight": 509679,
|
||||
"totalWeight": 509679,
|
||||
},
|
||||
Frame {
|
||||
"col": 10,
|
||||
"file": "file:///Users/jlfwong/code/speedscope/sample/programs/javascript/simple.js",
|
||||
"key": "a:file:///Users/jlfwong/code/speedscope/sample/programs/javascript/simple.js:0:10",
|
||||
"line": 0,
|
||||
"name": "a",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 33184,
|
||||
},
|
||||
Frame {
|
||||
"col": 10,
|
||||
"file": "file:///Users/jlfwong/code/speedscope/sample/programs/javascript/simple.js",
|
||||
"key": "c:file:///Users/jlfwong/code/speedscope/sample/programs/javascript/simple.js:13:10",
|
||||
"line": 13,
|
||||
"name": "c",
|
||||
"selfWeight": 16197,
|
||||
"totalWeight": 16197,
|
||||
},
|
||||
Frame {
|
||||
"col": 10,
|
||||
"file": "file:///Users/jlfwong/code/speedscope/sample/programs/javascript/simple.js",
|
||||
"key": "b:file:///Users/jlfwong/code/speedscope/sample/programs/javascript/simple.js:7:10",
|
||||
"line": 7,
|
||||
"name": "b",
|
||||
"selfWeight": 16987,
|
||||
"totalWeight": 16987,
|
||||
},
|
||||
],
|
||||
"stacks": Array [
|
||||
"(root);(program) 10.16ms",
|
||||
"(root);(idle) 1.99ms",
|
||||
"(root);(program) 926.00µs",
|
||||
"(root);(idle) 85.95ms",
|
||||
"(root);(program) 133.00µs",
|
||||
"(root);(idle) 8.40ms",
|
||||
"(root);(program) 134.00µs",
|
||||
"(root);a;c 257.00µs",
|
||||
"(root);a;b 534.00µs",
|
||||
"(root);a;c 513.00µs",
|
||||
"(root);a;b 513.00µs",
|
||||
"(root);a;c 257.00µs",
|
||||
"(root);a;b 518.00µs",
|
||||
"(root);a;c 514.00µs",
|
||||
"(root);a;b 261.00µs",
|
||||
"(root);a;c 517.00µs",
|
||||
"(root);a;b 258.00µs",
|
||||
"(root);a;c 145.00µs",
|
||||
"(root);a;b 134.00µs",
|
||||
"(root);a;c 292.00µs",
|
||||
"(root);a;b 272.00µs",
|
||||
"(root);a;c 129.00µs",
|
||||
"(root);a;b 145.00µs",
|
||||
"(root);a;c 265.00µs",
|
||||
"(root);a;b 142.00µs",
|
||||
"(root);a;c 141.00µs",
|
||||
"(root);a;b 139.00µs",
|
||||
"(root);a;c 397.00µs",
|
||||
"(root);a;b 126.00µs",
|
||||
"(root);a;c 131.00µs",
|
||||
"(root);a;b 126.00µs",
|
||||
"(root);a;c 521.00µs",
|
||||
"(root);a;b 128.00µs",
|
||||
"(root);a;c 261.00µs",
|
||||
"(root);a;b 127.00µs",
|
||||
"(root);a;c 130.00µs",
|
||||
"(root);a;b 128.00µs",
|
||||
"(root);a;c 136.00µs",
|
||||
"(root);a;b 272.00µs",
|
||||
"(root);a;c 146.00µs",
|
||||
"(root);a;b 661.00µs",
|
||||
"(root);a;c 113.00µs",
|
||||
"(root);a;b 135.00µs",
|
||||
"(root);a;c 585.00µs",
|
||||
"(root);a;b 294.00µs",
|
||||
"(root);a;c 274.00µs",
|
||||
"(root);a;b 129.00µs",
|
||||
"(root);a;c 127.00µs",
|
||||
"(root);a;b 128.00µs",
|
||||
"(root);a;c 247.00µs",
|
||||
"(root);a;b 526.00µs",
|
||||
"(root);a;c 125.00µs",
|
||||
"(root);a;b 129.00µs",
|
||||
"(root);a;c 131.00µs",
|
||||
"(root);a;b 253.00µs",
|
||||
"(root);a;c 135.00µs",
|
||||
"(root);a;b 123.00µs",
|
||||
"(root);a;c 128.00µs",
|
||||
"(root);a;b 257.00µs",
|
||||
"(root);a;c 137.00µs",
|
||||
"(root);a;b 256.00µs",
|
||||
"(root);a;c 411.00µs",
|
||||
"(root);a;b 892.00µs",
|
||||
"(root);a;c 146.00µs",
|
||||
"(root);a;b 148.00µs",
|
||||
"(root);a;c 309.00µs",
|
||||
"(root);a;b 140.00µs",
|
||||
"(root);a;c 151.00µs",
|
||||
"(root);a;b 458.00µs",
|
||||
"(root);a;c 156.00µs",
|
||||
"(root);a;b 170.00µs",
|
||||
"(root);a;c 139.00µs",
|
||||
"(root);a;b 290.00µs",
|
||||
"(root);a;c 115.00µs",
|
||||
"(root);a;b 281.00µs",
|
||||
"(root);a;c 270.00µs",
|
||||
"(root);a;b 283.00µs",
|
||||
"(root);a;c 144.00µs",
|
||||
"(root);a;b 146.00µs",
|
||||
"(root);a;c 410.00µs",
|
||||
"(root);a;b 146.00µs",
|
||||
"(root);a;c 147.00µs",
|
||||
"(root);a;b 312.00µs",
|
||||
"(root);a;c 146.00µs",
|
||||
"(root);a;b 907.00µs",
|
||||
"(root);a;c 231.00µs",
|
||||
"(root);a;b 138.00µs",
|
||||
"(root);a;c 280.00µs",
|
||||
"(root);a;b 255.00µs",
|
||||
"(root);a;c 257.00µs",
|
||||
"(root);a;b 130.00µs",
|
||||
"(root);a;c 255.00µs",
|
||||
"(root);a;b 128.00µs",
|
||||
"(root);a;c 526.00µs",
|
||||
"(root);a;b 128.00µs",
|
||||
"(root);a;c 384.00µs",
|
||||
"(root);a;b 398.00µs",
|
||||
"(root);a;c 260.00µs",
|
||||
"(root);a;b 664.00µs",
|
||||
"(root);a;c 150.00µs",
|
||||
"(root);a;b 147.00µs",
|
||||
"(root);a;c 156.00µs",
|
||||
"(root);a;b 137.00µs",
|
||||
"(root);a;c 141.00µs",
|
||||
"(root);a;b 140.00µs",
|
||||
"(root);a;c 141.00µs",
|
||||
"(root);a;b 141.00µs",
|
||||
"(root);a;c 140.00µs",
|
||||
"(root);a;b 140.00µs",
|
||||
"(root);a;c 139.00µs",
|
||||
"(root);a;b 129.00µs",
|
||||
"(root);a;c 269.00µs",
|
||||
"(root);a;b 293.00µs",
|
||||
"(root);a;c 148.00µs",
|
||||
"(root);a;b 293.00µs",
|
||||
"(root);a;c 292.00µs",
|
||||
"(root);a;b 296.00µs",
|
||||
"(root);a;c 147.00µs",
|
||||
"(root);a;b 140.00µs",
|
||||
"(root);a;c 139.00µs",
|
||||
"(root);a;b 139.00µs",
|
||||
"(root);a;c 511.00µs",
|
||||
"(root);a;b 515.00µs",
|
||||
"(root);a;c 386.00µs",
|
||||
"(root);a;b 514.00µs",
|
||||
"(root);a;c 272.00µs",
|
||||
"(root);a;b 242.00µs",
|
||||
"(root);a;c 128.00µs",
|
||||
"(root);a;b 134.00µs",
|
||||
"(root);a;c 112.00µs",
|
||||
"(root);a;b 288.00µs",
|
||||
"(root);a;c 451.00µs",
|
||||
"(root);a;b 138.00µs",
|
||||
"(root);a;c 292.00µs",
|
||||
"(root);a;b 145.00µs",
|
||||
"(root);a;c 259.00µs",
|
||||
"(root);a;b 148.00µs",
|
||||
"(root);a;c 293.00µs",
|
||||
"(root);a;b 140.00µs",
|
||||
"(root);a;c 140.00µs",
|
||||
"(root);(idle) 61.61ms",
|
||||
"(root);(program) 118.00µs",
|
||||
"(root);(idle) 134.00µs",
|
||||
"(root);(program) 128.00µs",
|
||||
"(root);(idle) 16.40ms",
|
||||
"(root);(program) 125.00µs",
|
||||
"(root);(idle) 16.64ms",
|
||||
"(root);(program) 129.00µs",
|
||||
"(root);(idle) 16.72ms",
|
||||
"(root);(program) 130.00µs",
|
||||
"(root);(idle) 294.15ms",
|
||||
"(root);(program) 129.00µs",
|
||||
"(root);(idle) 7.68ms",
|
||||
"(root);(program) 131.00µs",
|
||||
],
|
||||
}
|
||||
`;
|
59
import/__snapshots__/firefox.test.ts.snap
Normal file
59
import/__snapshots__/firefox.test.ts.snap
Normal file
@ -0,0 +1,59 @@
|
||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`importFromFirefox 1`] = `
|
||||
Object {
|
||||
"frames": Array [
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "file:///Users/jlfwong/code/speedscope/sample/simple.js",
|
||||
"key": "a (file:///Users/jlfwong/code/speedscope/sample/simple.js:1)",
|
||||
"line": 1,
|
||||
"name": "a",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 31.992820999992546,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "file:///Users/jlfwong/code/speedscope/sample/simple.js",
|
||||
"key": "b (file:///Users/jlfwong/code/speedscope/sample/simple.js:8)",
|
||||
"line": 8,
|
||||
"name": "b",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 20.971447000018088,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "file:///Users/jlfwong/code/speedscope/sample/simple.js",
|
||||
"key": "d (file:///Users/jlfwong/code/speedscope/sample/simple.js:20)",
|
||||
"line": 20,
|
||||
"name": "d",
|
||||
"selfWeight": 31.992820999992546,
|
||||
"totalWeight": 31.992820999992546,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "file:///Users/jlfwong/code/speedscope/sample/simple.js",
|
||||
"key": "c (file:///Users/jlfwong/code/speedscope/sample/simple.js:14)",
|
||||
"line": 14,
|
||||
"name": "c",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 11.021373999974458,
|
||||
},
|
||||
],
|
||||
"stacks": Array [
|
||||
"a;b;d 989.53µs",
|
||||
"a;c;d 1.02ms",
|
||||
"a;b;d 982.04µs",
|
||||
"a;c;d 1.02ms",
|
||||
"a;b;d 7.00ms",
|
||||
"a;c;d 2.00ms",
|
||||
"a;b;d 981.44µs",
|
||||
"a;c;d 2.00ms",
|
||||
"a;b;d 2.00ms",
|
||||
"a;c;d 3.02ms",
|
||||
"a;b;d 4.03ms",
|
||||
"a;c;d 1.96ms",
|
||||
"a;b;d 4.99ms",
|
||||
],
|
||||
}
|
||||
`;
|
8757
import/__snapshots__/instruments.test.ts.snap
Normal file
8757
import/__snapshots__/instruments.test.ts.snap
Normal file
File diff suppressed because it is too large
Load Diff
851
import/__snapshots__/stackprof.test.ts.snap
Normal file
851
import/__snapshots__/stackprof.test.ts.snap
Normal file
@ -0,0 +1,851 @@
|
||||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`importFromStackprof 1`] = `
|
||||
Object {
|
||||
"frames": Array [
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "simple.rb",
|
||||
"key": 70098912279220,
|
||||
"line": undefined,
|
||||
"name": "<main>",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 1087582,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "/Users/jlfwong/code/speedscope/sample/programs/ruby/simple.rb",
|
||||
"key": 70098928804560,
|
||||
"line": undefined,
|
||||
"name": "<main>",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 1087582,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "/Users/jlfwong/code/speedscope/sample/programs/ruby/simple.rb",
|
||||
"key": 70098916424940,
|
||||
"line": 31,
|
||||
"name": "block in <main>",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 1087582,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "/Users/jlfwong/code/speedscope/sample/programs/ruby/simple.rb",
|
||||
"key": 70098916485880,
|
||||
"line": 4,
|
||||
"name": "Object#a",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 1087582,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "/Users/jlfwong/code/speedscope/sample/programs/ruby/simple.rb",
|
||||
"key": 70098916485860,
|
||||
"line": 11,
|
||||
"name": "Object#b",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 540472,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "/Users/jlfwong/code/speedscope/sample/programs/ruby/simple.rb",
|
||||
"key": 70098916485820,
|
||||
"line": 23,
|
||||
"name": "Object#d",
|
||||
"selfWeight": 1087582,
|
||||
"totalWeight": 1087582,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "",
|
||||
"key": 313,
|
||||
"line": undefined,
|
||||
"name": "(garbage collection)",
|
||||
"selfWeight": 464022,
|
||||
"totalWeight": 464022,
|
||||
},
|
||||
Frame {
|
||||
"col": undefined,
|
||||
"file": "/Users/jlfwong/code/speedscope/sample/programs/ruby/simple.rb",
|
||||
"key": 70098916485840,
|
||||
"line": 17,
|
||||
"name": "Object#c",
|
||||
"selfWeight": 0,
|
||||
"totalWeight": 547110,
|
||||
},
|
||||
],
|
||||
"stacks": Array [
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 6.11ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.96ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.10ms",
|
||||
"(garbage collection) 919.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.98ms",
|
||||
"(garbage collection) 955.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.06ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.96ms",
|
||||
"(garbage collection) 2.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 892.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.14ms",
|
||||
"(garbage collection) 1.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.96ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.03ms",
|
||||
"(garbage collection) 995.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.97ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 899.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 7.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.96ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.95ms",
|
||||
"(garbage collection) 1.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.98ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 998.00µs",
|
||||
"(garbage collection) 1.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.96ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.07ms",
|
||||
"(garbage collection) 892.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.03ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 969.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.99ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 994.00µs",
|
||||
"(garbage collection) 986.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 926.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.98ms",
|
||||
"(garbage collection) 989.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.05ms",
|
||||
"(garbage collection) 977.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.16ms",
|
||||
"(garbage collection) 921.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.89ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.84ms",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.03ms",
|
||||
"(garbage collection) 1.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.98ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.97ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.02ms",
|
||||
"(garbage collection) 1.13ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.87ms",
|
||||
"(garbage collection) 1.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.87ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.98ms",
|
||||
"(garbage collection) 2.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.82ms",
|
||||
"(garbage collection) 1.14ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.96ms",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 946.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.92ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.08ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.97ms",
|
||||
"(garbage collection) 1.91ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.08ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.00ms",
|
||||
"(garbage collection) 1.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 965.00µs",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.90ms",
|
||||
"(garbage collection) 1.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.95ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 996.00µs",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.82ms",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.90ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.01ms",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 980.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.99ms",
|
||||
"(garbage collection) 988.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.90ms",
|
||||
"(garbage collection) 1.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.93ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.04ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.85ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 2.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.94ms",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.00ms",
|
||||
"(garbage collection) 1.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.96ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.96ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.00ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.98ms",
|
||||
"(garbage collection) 4.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.14ms",
|
||||
"(garbage collection) 1.85ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 989.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.95ms",
|
||||
"(garbage collection) 962.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.85ms",
|
||||
"(garbage collection) 1.17ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 942.00µs",
|
||||
"(garbage collection) 1.93ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.96ms",
|
||||
"(garbage collection) 4.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.86ms",
|
||||
"(garbage collection) 997.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.12ms",
|
||||
"(garbage collection) 985.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.01ms",
|
||||
"(garbage collection) 996.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.90ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.09ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 974.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 998.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 6.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 845.00µs",
|
||||
"(garbage collection) 3.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 803.00µs",
|
||||
"(garbage collection) 1.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 959.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.90ms",
|
||||
"(garbage collection) 1.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.90ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.08ms",
|
||||
"(garbage collection) 3.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 970.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.99ms",
|
||||
"(garbage collection) 2.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.96ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 903.00µs",
|
||||
"(garbage collection) 4.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.08ms",
|
||||
"(garbage collection) 1.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 1.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 979.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.87ms",
|
||||
"(garbage collection) 2.13ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 930.00µs",
|
||||
"(garbage collection) 2.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.98ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.98ms",
|
||||
"(garbage collection) 943.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.99ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 871.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.11ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 987.00µs",
|
||||
"(garbage collection) 898.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.98ms",
|
||||
"(garbage collection) 968.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.14ms",
|
||||
"(garbage collection) 879.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 934.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 6.05ms",
|
||||
"(garbage collection) 4.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.98ms",
|
||||
"(garbage collection) 998.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.88ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.13ms",
|
||||
"(garbage collection) 2.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 909.00µs",
|
||||
"(garbage collection) 996.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.08ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.99ms",
|
||||
"(garbage collection) 4.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 997.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.90ms",
|
||||
"(garbage collection) 1.14ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.93ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.00ms",
|
||||
"(garbage collection) 995.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 986.00µs",
|
||||
"(garbage collection) 944.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.08ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 972.00µs",
|
||||
"(garbage collection) 3.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 964.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.01ms",
|
||||
"(garbage collection) 1.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.89ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 6.04ms",
|
||||
"(garbage collection) 4.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 898.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.09ms",
|
||||
"(garbage collection) 4.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.85ms",
|
||||
"(garbage collection) 4.17ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 901.00µs",
|
||||
"(garbage collection) 1.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.92ms",
|
||||
"(garbage collection) 3.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 6.86ms",
|
||||
"(garbage collection) 2.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 938.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.05ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 981.00µs",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.00ms",
|
||||
"(garbage collection) 981.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.92ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.08ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 974.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.97ms",
|
||||
"(garbage collection) 2.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.93ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.99ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.98ms",
|
||||
"(garbage collection) 3.97ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.04ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.98ms",
|
||||
"(garbage collection) 910.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.07ms",
|
||||
"(garbage collection) 1.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 978.00µs",
|
||||
"(garbage collection) 2.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.91ms",
|
||||
"(garbage collection) 1.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.98ms",
|
||||
"(garbage collection) 1.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.89ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.84ms",
|
||||
"(garbage collection) 1.14ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.97ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.98ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.04ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 6.93ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.97ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.94ms",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.97ms",
|
||||
"(garbage collection) 888.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 6.10ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.99ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 981.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 939.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.06ms",
|
||||
"(garbage collection) 2.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.91ms",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.96ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 979.00µs",
|
||||
"(garbage collection) 936.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.07ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 895.00µs",
|
||||
"(garbage collection) 2.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.97ms",
|
||||
"(garbage collection) 1.17ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 713.00µs",
|
||||
"(garbage collection) 1.14ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 899.00µs",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.87ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.09ms",
|
||||
"(garbage collection) 3.04ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.96ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 997.00µs",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 847.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.05ms",
|
||||
"(garbage collection) 2.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.97ms",
|
||||
"(garbage collection) 1.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 986.00µs",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 6.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.93ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.05ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 936.00µs",
|
||||
"(garbage collection) 1.28ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 780.00µs",
|
||||
"(garbage collection) 4.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 947.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.02ms",
|
||||
"(garbage collection) 983.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.88ms",
|
||||
"(garbage collection) 1.17ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.94ms",
|
||||
"(garbage collection) 1.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.95ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.98ms",
|
||||
"(garbage collection) 1.67ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.27ms",
|
||||
"(garbage collection) 1.14ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.82ms",
|
||||
"(garbage collection) 1.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.93ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.89ms",
|
||||
"(garbage collection) 1.14ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.95ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 6.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.01ms",
|
||||
"(garbage collection) 951.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.04ms",
|
||||
"(garbage collection) 1.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 836.00µs",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 996.00µs",
|
||||
"(garbage collection) 908.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.10ms",
|
||||
"(garbage collection) 883.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 898.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.10ms",
|
||||
"(garbage collection) 969.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.01ms",
|
||||
"(garbage collection) 913.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.37ms",
|
||||
"(garbage collection) 681.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.93ms",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 904.00µs",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.96ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.18ms",
|
||||
"(garbage collection) 899.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.98ms",
|
||||
"(garbage collection) 1.17ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.82ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.00ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 990.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 963.00µs",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.96ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 979.00µs",
|
||||
"(garbage collection) 956.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.05ms",
|
||||
"(garbage collection) 3.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.98ms",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.89ms",
|
||||
"(garbage collection) 1.13ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 774.00µs",
|
||||
"(garbage collection) 1.13ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 966.00µs",
|
||||
"(garbage collection) 1.08ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 803.00µs",
|
||||
"(garbage collection) 1.15ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 969.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.99ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 992.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.99ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 977.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 979.00µs",
|
||||
"(garbage collection) 1.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 885.00µs",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 918.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.08ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 968.00µs",
|
||||
"(garbage collection) 997.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 5.92ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 7.96ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 6.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.99ms",
|
||||
"(garbage collection) 2.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 987.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 987.00µs",
|
||||
"(garbage collection) 980.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 990.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.99ms",
|
||||
"(garbage collection) 984.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 977.00µs",
|
||||
"(garbage collection) 997.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.02ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 995.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.88ms",
|
||||
"(garbage collection) 1.17ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.95ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.88ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.10ms",
|
||||
"(garbage collection) 999.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.01ms",
|
||||
"(garbage collection) 937.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.04ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.97ms",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 861.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.11ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.00ms",
|
||||
"(garbage collection) 1.97ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.03ms",
|
||||
"(garbage collection) 1.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.87ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 942.00µs",
|
||||
"(garbage collection) 1.08ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.97ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.99ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 986.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.94ms",
|
||||
"(garbage collection) 2.07ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 6.91ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 7.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.00ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.98ms",
|
||||
"(garbage collection) 1.04ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 949.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 992.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 955.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.07ms",
|
||||
"(garbage collection) 1.19ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 769.00µs",
|
||||
"(garbage collection) 3.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 6.92ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 6.93ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 999.00µs",
|
||||
"(garbage collection) 2.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.93ms",
|
||||
"(garbage collection) 3.04ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 954.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.02ms",
|
||||
"(garbage collection) 995.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 971.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.99ms",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 901.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.04ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.89ms",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 881.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.12ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.97ms",
|
||||
"(garbage collection) 997.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 954.00µs",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 1.17ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 907.00µs",
|
||||
"(garbage collection) 834.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.09ms",
|
||||
"(garbage collection) 2.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 993.00µs",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.89ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.99ms",
|
||||
"(garbage collection) 1.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.97ms",
|
||||
"(garbage collection) 923.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.10ms",
|
||||
"(garbage collection) 977.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.00ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 7.97ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.98ms",
|
||||
"(garbage collection) 903.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.11ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.98ms",
|
||||
"(garbage collection) 943.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.06ms",
|
||||
"(garbage collection) 3.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 982.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 948.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.04ms",
|
||||
"(garbage collection) 1.92ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 990.00µs",
|
||||
"(garbage collection) 3.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 993.00µs",
|
||||
"(garbage collection) 922.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.09ms",
|
||||
"(garbage collection) 1.13ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 854.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.97ms",
|
||||
"(garbage collection) 1.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.96ms",
|
||||
"(garbage collection) 1.17ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.82ms",
|
||||
"(garbage collection) 1.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 976.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 976.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 922.00µs",
|
||||
"(garbage collection) 1.26ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 683.00µs",
|
||||
"(garbage collection) 1.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 989.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 7.00ms",
|
||||
"(garbage collection) 996.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.91ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.93ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.13ms",
|
||||
"(garbage collection) 2.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.88ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.08ms",
|
||||
"(garbage collection) 1.07ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.80ms",
|
||||
"(garbage collection) 1.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.95ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.04ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 973.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.97ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 997.00µs",
|
||||
"(garbage collection) 980.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.00ms",
|
||||
"(garbage collection) 1.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.89ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.99ms",
|
||||
"(garbage collection) 1.08ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 872.00µs",
|
||||
"(garbage collection) 1.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 982.00µs",
|
||||
"(garbage collection) 966.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.02ms",
|
||||
"(garbage collection) 1.04ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.90ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.03ms",
|
||||
"(garbage collection) 2.04ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 997.00µs",
|
||||
"(garbage collection) 994.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.04ms",
|
||||
"(garbage collection) 1.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.01ms",
|
||||
"(garbage collection) 968.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.99ms",
|
||||
"(garbage collection) 1.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.92ms",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.89ms",
|
||||
"(garbage collection) 962.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.04ms",
|
||||
"(garbage collection) 2.97ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.94ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 7.05ms",
|
||||
"(garbage collection) 956.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.98ms",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.96ms",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.95ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 982.00µs",
|
||||
"(garbage collection) 1.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.90ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.01ms",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 956.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.98ms",
|
||||
"(garbage collection) 1.04ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.94ms",
|
||||
"(garbage collection) 1.28ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.65ms",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 925.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.04ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 950.00µs",
|
||||
"(garbage collection) 1.07ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 5.97ms",
|
||||
"(garbage collection) 933.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.07ms",
|
||||
"(garbage collection) 990.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.00ms",
|
||||
"(garbage collection) 998.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 929.00µs",
|
||||
"(garbage collection) 1.08ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.91ms",
|
||||
"(garbage collection) 1.16ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.91ms",
|
||||
"(garbage collection) 1.18ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 766.00µs",
|
||||
"(garbage collection) 1.06ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.91ms",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 969.00µs",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 882.00µs",
|
||||
"(garbage collection) 1.13ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.99ms",
|
||||
"(garbage collection) 2.48ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 510.00µs",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 4.96ms",
|
||||
"(garbage collection) 3.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 4.98ms",
|
||||
"(garbage collection) 1.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.02ms",
|
||||
"(garbage collection) 3.00ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.97ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.98ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.90ms",
|
||||
"(garbage collection) 1.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.98ms",
|
||||
"(garbage collection) 1.07ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.92ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.97ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 970.00µs",
|
||||
"(garbage collection) 1.05ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 981.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 975.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.00ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 991.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 994.00µs",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 990.00µs",
|
||||
"(garbage collection) 2.03ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 902.00µs",
|
||||
"(garbage collection) 1.95ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.12ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 7.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.89ms",
|
||||
"(garbage collection) 2.10ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 967.00µs",
|
||||
"(garbage collection) 2.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.84ms",
|
||||
"(garbage collection) 1.09ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 3.98ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 6.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.99ms",
|
||||
"(garbage collection) 2.04ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.95ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.93ms",
|
||||
"(garbage collection) 2.11ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 3.88ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.07ms",
|
||||
"(garbage collection) 974.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.04ms",
|
||||
"(garbage collection) 2.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 2.96ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.00ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.99ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 976.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.00ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 974.00µs",
|
||||
"(garbage collection) 925.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.08ms",
|
||||
"(garbage collection) 994.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 1.99ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.87ms",
|
||||
"(garbage collection) 1.16ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.96ms",
|
||||
"(garbage collection) 1.02ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.98ms",
|
||||
"(garbage collection) 1.01ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 994.00µs",
|
||||
"(garbage collection) 932.00µs",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#b;Object#b;Object#d;Object#d 5.06ms",
|
||||
"(garbage collection) 1.04ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 2.94ms",
|
||||
"(garbage collection) 1.08ms",
|
||||
"<main>;<main>;block in <main>;Object#a;Object#a;Object#c;Object#c;Object#d;Object#d 1.93ms",
|
||||
],
|
||||
}
|
||||
`;
|
9
import/bg-flamegraph.test.ts
Normal file
9
import/bg-flamegraph.test.ts
Normal file
@ -0,0 +1,9 @@
|
||||
import * as fs from 'fs'
|
||||
import {importFromBGFlameGraph} from './bg-flamegraph'
|
||||
import {dumpProfile} from '../test-utils'
|
||||
|
||||
test('importFromBGFlameGraph', () => {
|
||||
const input = fs.readFileSync('./sample/profiles/stackcollapse/simple.txt', 'utf8')
|
||||
const profile = importFromBGFlameGraph(input)
|
||||
expect(dumpProfile(profile)).toMatchSnapshot()
|
||||
})
|
15
import/chrome.test.ts
Normal file
15
import/chrome.test.ts
Normal file
@ -0,0 +1,15 @@
|
||||
import * as fs from 'fs'
|
||||
import {dumpProfile} from '../test-utils'
|
||||
import {importFromChromeCPUProfile, importFromChromeTimeline} from './chrome'
|
||||
|
||||
test('importFromChromeCPUProfile', () => {
|
||||
const input = fs.readFileSync('./sample/profiles/Chrome/65/simple.cpuprofile', 'utf8')
|
||||
const profile = importFromChromeCPUProfile(JSON.parse(input))
|
||||
expect(dumpProfile(profile)).toMatchSnapshot()
|
||||
})
|
||||
|
||||
test('importFromChromeTimeline', () => {
|
||||
const input = fs.readFileSync('./sample/profiles/Chrome/65/simple-timeline.json', 'utf8')
|
||||
const profile = importFromChromeTimeline(JSON.parse(input))
|
||||
expect(dumpProfile(profile)).toMatchSnapshot()
|
||||
})
|
9
import/firefox.test.ts
Normal file
9
import/firefox.test.ts
Normal file
@ -0,0 +1,9 @@
|
||||
import * as fs from 'fs'
|
||||
import {dumpProfile} from '../test-utils'
|
||||
import {importFromFirefox} from './firefox'
|
||||
|
||||
test('importFromFirefox', () => {
|
||||
const input = fs.readFileSync('./sample/profiles/Firefox/59/simple-firefox.json', 'utf8')
|
||||
const profile = importFromFirefox(JSON.parse(input))
|
||||
expect(dumpProfile(profile)).toMatchSnapshot()
|
||||
})
|
109
import/instruments.test.ts
Normal file
109
import/instruments.test.ts
Normal file
@ -0,0 +1,109 @@
|
||||
import * as fs from 'fs'
|
||||
import * as path from 'path'
|
||||
import {dumpProfile} from '../test-utils'
|
||||
import {
|
||||
importFromInstrumentsDeepCopy,
|
||||
FileSystemEntry,
|
||||
importFromInstrumentsTrace,
|
||||
} from './instruments'
|
||||
|
||||
import * as JSZip from 'jszip'
|
||||
|
||||
describe('importFromInstrumentsDeepCopy', () => {
|
||||
test('time profile', () => {
|
||||
const input = fs.readFileSync(
|
||||
'./sample/profiles/Instruments/7.3.1/simple-time-profile-deep-copy.txt',
|
||||
'utf8',
|
||||
)
|
||||
const profile = importFromInstrumentsDeepCopy(input)
|
||||
expect(dumpProfile(profile)).toMatchSnapshot()
|
||||
})
|
||||
|
||||
test('allocations profile', () => {
|
||||
const input = fs.readFileSync(
|
||||
'./sample/profiles/Instruments/7.3.1/random-allocations-deep-copy.txt',
|
||||
'utf8',
|
||||
)
|
||||
const profile = importFromInstrumentsDeepCopy(input)
|
||||
expect(dumpProfile(profile)).toMatchSnapshot()
|
||||
})
|
||||
})
|
||||
|
||||
class ZipBackedFileSystemEntry implements FileSystemEntry {
|
||||
readonly isFile: boolean
|
||||
readonly isDirectory: boolean
|
||||
readonly name: string
|
||||
readonly fullPath: string
|
||||
|
||||
private zipDir: JSZip | null
|
||||
private zipFile: JSZip.JSZipObject | null
|
||||
|
||||
constructor(private zip: JSZip, fullPath: string) {
|
||||
this.fullPath = fullPath
|
||||
|
||||
this.zipFile = zip.file(fullPath)
|
||||
this.isFile = !!this.zipFile
|
||||
|
||||
if (this.isFile) {
|
||||
this.zipDir = null
|
||||
this.isDirectory = false
|
||||
} else {
|
||||
this.zipDir = zip.folder(fullPath)
|
||||
this.isDirectory = true
|
||||
}
|
||||
|
||||
this.name = path.basename(this.fullPath)
|
||||
}
|
||||
|
||||
file(cb: (file: File) => void, errCb: (error: Error) => void) {
|
||||
if (!this.zipFile) return errCb(new Error('Failed to extract file'))
|
||||
this.zipFile
|
||||
.async('blob')
|
||||
.then(
|
||||
blob => {
|
||||
;(blob as any).name = this.name
|
||||
cb(blob as File)
|
||||
},
|
||||
err => {
|
||||
errCb(err)
|
||||
},
|
||||
)
|
||||
.catch(errCb)
|
||||
}
|
||||
|
||||
createReader() {
|
||||
return {
|
||||
readEntries: (cb: (entries: FileSystemEntry[]) => void, errCb: (error: Error) => void) => {
|
||||
if (!this.zipDir) return errCb(new Error('Failed to read folder entries'))
|
||||
const ret: FileSystemEntry[] = []
|
||||
this.zipDir.forEach((relativePath, file) => {
|
||||
if (relativePath.split('/').length === (relativePath.endsWith('/') ? 2 : 1)) {
|
||||
ret.push(new ZipBackedFileSystemEntry(this.zip, file.name))
|
||||
}
|
||||
})
|
||||
cb(ret)
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
describe('importFromInstrumentsTrace', () => {
|
||||
async function importFromTrace(tracePath: string) {
|
||||
const zip = await new Promise<JSZip>((resolve, reject) => {
|
||||
fs.readFile(tracePath, (err, data) => {
|
||||
if (err) return reject(err)
|
||||
JSZip.loadAsync(data).then(resolve)
|
||||
})
|
||||
})
|
||||
const root = new ZipBackedFileSystemEntry(zip, 'simple-time-profile.trace')
|
||||
const profile = await importFromInstrumentsTrace(root)
|
||||
expect(dumpProfile(profile)).toMatchSnapshot()
|
||||
}
|
||||
|
||||
test('Instruments 8.3.3', async () => {
|
||||
await importFromTrace('./sample/profiles/Instruments/8.3.3/simple-time-profile.trace.zip')
|
||||
})
|
||||
test('Instruments 9.3.1', async () => {
|
||||
await importFromTrace('./sample/profiles/Instruments/9.3.1/simple-time-profile.trace.zip')
|
||||
})
|
||||
})
|
@ -65,9 +65,9 @@ function getWeight(deepCopyRow: any): number {
|
||||
throw new Error(`Unrecognized units ${units}`)
|
||||
}
|
||||
|
||||
if ('Weight' in deepCopyRow) {
|
||||
const weightString = deepCopyRow['Weight']
|
||||
const parts = /\s*(\d+(?:[.]\d+)?) (\w+)\s+(?:\d+(?:[.]\d+))%/.exec(weightString)
|
||||
if ('Weight' in deepCopyRow || 'Running Time' in deepCopyRow) {
|
||||
const weightString = deepCopyRow['Weight'] || deepCopyRow['Running Time']
|
||||
const parts = /\s*(\d+(?:[.]\d+)?) ?(\w+)\s+(?:\d+(?:[.]\d+))%/.exec(weightString)
|
||||
if (!parts) return 0
|
||||
const value = parseInt(parts[1], 10)
|
||||
const units = parts[2]
|
||||
@ -135,7 +135,7 @@ export function importFromInstrumentsDeepCopy(contents: string): Profile {
|
||||
|
||||
if ('Bytes Used' in rows[0]) {
|
||||
profile.setValueFormatter(new ByteFormatter())
|
||||
} else if ('Weight' in rows[0]) {
|
||||
} else if ('Weight' in rows[0] || 'Running Time' in rows[0]) {
|
||||
profile.setValueFormatter(new TimeFormatter('milliseconds'))
|
||||
}
|
||||
|
||||
@ -148,25 +148,45 @@ interface TraceDirectoryTree {
|
||||
subdirectories: Map<string, TraceDirectoryTree>
|
||||
}
|
||||
|
||||
async function extractDirectoryTree(entry: WebKitEntry): Promise<TraceDirectoryTree> {
|
||||
// The bits of this API that we care about. This is implemented by WebKitEntry
|
||||
// https://wicg.github.io/entries-api/#api-entry
|
||||
export interface FileSystemDirectoryReader {
|
||||
readEntries(cb: (entries: FileSystemEntry[]) => void, error: (err: Error) => void): void
|
||||
}
|
||||
export interface FileSystemEntry {
|
||||
readonly isFile: boolean
|
||||
readonly isDirectory: boolean
|
||||
readonly name: string
|
||||
readonly fullPath: string
|
||||
}
|
||||
export interface FileSystemDirectoryEntry extends FileSystemEntry {
|
||||
createReader(): FileSystemDirectoryReader
|
||||
}
|
||||
export interface FileSystemFileEntry extends FileSystemEntry {
|
||||
file(cb: (file: File) => void, errCb: (err: Error) => void): void
|
||||
}
|
||||
|
||||
async function extractDirectoryTree(entry: FileSystemDirectoryEntry): Promise<TraceDirectoryTree> {
|
||||
const node: TraceDirectoryTree = {
|
||||
name: entry.name,
|
||||
files: new Map(),
|
||||
subdirectories: new Map(),
|
||||
}
|
||||
|
||||
const children = await new Promise<WebKitEntry[]>((resolve, reject) => {
|
||||
;(entry as any).createReader().readEntries((entries: any[]) => {
|
||||
const children = await new Promise<FileSystemEntry[]>((resolve, reject) => {
|
||||
entry.createReader().readEntries((entries: any[]) => {
|
||||
resolve(entries)
|
||||
})
|
||||
}, reject)
|
||||
})
|
||||
|
||||
for (let child of children) {
|
||||
if (child.isDirectory) {
|
||||
const subtree = await extractDirectoryTree(child)
|
||||
const subtree = await extractDirectoryTree(child as FileSystemDirectoryEntry)
|
||||
node.subdirectories.set(subtree.name, subtree)
|
||||
} else {
|
||||
const file = await new Promise<File>(resolve => (child as any).file(resolve))
|
||||
const file = await new Promise<File>((resolve, reject) => {
|
||||
;(child as FileSystemFileEntry).file(resolve, reject)
|
||||
})
|
||||
node.files.set(file.name, file)
|
||||
}
|
||||
}
|
||||
@ -416,7 +436,9 @@ async function readFormTemplate(tree: TraceDirectoryTree): Promise<FormTemplateD
|
||||
}
|
||||
|
||||
// Import from a .trace file saved from Mac Instruments.app
|
||||
export async function importFromInstrumentsTrace(entry: WebKitEntry): Promise<Profile> {
|
||||
export async function importFromInstrumentsTrace(
|
||||
entry: FileSystemDirectoryEntry,
|
||||
): Promise<Profile> {
|
||||
const tree = await extractDirectoryTree(entry)
|
||||
|
||||
const {version, selectedRun, instrument, addressToFrameMap} = await readFormTemplate(tree)
|
||||
|
9
import/stackprof.test.ts
Normal file
9
import/stackprof.test.ts
Normal file
@ -0,0 +1,9 @@
|
||||
import * as fs from 'fs'
|
||||
import {dumpProfile} from '../test-utils'
|
||||
import {importFromStackprof} from './stackprof'
|
||||
|
||||
test('importFromStackprof', () => {
|
||||
const input = fs.readFileSync('./sample/profiles/stackprof/simple-stackprof.json', 'utf8')
|
||||
const profile = importFromStackprof(JSON.parse(input))
|
||||
expect(dumpProfile(profile)).toMatchSnapshot()
|
||||
})
|
83
package-lock.json
generated
83
package-lock.json
generated
@ -30,6 +30,21 @@
|
||||
"integrity": "sha512-e74sM9W/4qqWB6D4TWV9FQk0WoHtX1X4FJpbjxucMSVJHtFjbQOH3H6yp+xno4br0AKG0wz/kPtaN599GUOvAg==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/jszip": {
|
||||
"version": "3.1.4",
|
||||
"resolved": "https://registry.npmjs.org/@types/jszip/-/jszip-3.1.4.tgz",
|
||||
"integrity": "sha512-UaVbz4buRlBEolZYrxqkrGDOypugYlbqGNrUFB4qBaexrLypTH0jyvaF5jolNy5D+5C4kKV1WJ3Yx9cn/JH8oA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/node": "10.1.4"
|
||||
}
|
||||
},
|
||||
"@types/node": {
|
||||
"version": "10.1.4",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.1.4.tgz",
|
||||
"integrity": "sha512-GpQxofkdlHYxjHad98UUdNoMO7JrmzQZoAaghtNg14Gwg7YkohcrCoJEcEMSgllx4VIZ+mYw7ZHjfaeIagP/rg==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/pako": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/pako/-/pako-1.0.0.tgz",
|
||||
@ -2427,6 +2442,12 @@
|
||||
"integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
|
||||
"dev": true
|
||||
},
|
||||
"core-js": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz",
|
||||
"integrity": "sha1-+rg/uwstjchfpjbEudNMdUIMbWU=",
|
||||
"dev": true
|
||||
},
|
||||
"core-util-is": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
|
||||
@ -3156,6 +3177,12 @@
|
||||
"is-symbol": "1.0.1"
|
||||
}
|
||||
},
|
||||
"es6-promise": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.0.2.tgz",
|
||||
"integrity": "sha1-AQ1YWEI6XxGJeWZfRkhqlcbuK7Y=",
|
||||
"dev": true
|
||||
},
|
||||
"escape-html": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
|
||||
@ -5313,6 +5340,12 @@
|
||||
"integrity": "sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==",
|
||||
"dev": true
|
||||
},
|
||||
"immediate": {
|
||||
"version": "3.0.6",
|
||||
"resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz",
|
||||
"integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=",
|
||||
"dev": true
|
||||
},
|
||||
"import-local": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz",
|
||||
@ -6428,6 +6461,47 @@
|
||||
"typify-parser": "1.1.0"
|
||||
}
|
||||
},
|
||||
"jszip": {
|
||||
"version": "3.1.5",
|
||||
"resolved": "https://registry.npmjs.org/jszip/-/jszip-3.1.5.tgz",
|
||||
"integrity": "sha512-5W8NUaFRFRqTOL7ZDDrx5qWHJyBXy6velVudIzQUSoqAAYqzSh2Z7/m0Rf1QbmQJccegD0r+YZxBjzqoBiEeJQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"core-js": "2.3.0",
|
||||
"es6-promise": "3.0.2",
|
||||
"lie": "3.1.1",
|
||||
"pako": "1.0.6",
|
||||
"readable-stream": "2.0.6"
|
||||
},
|
||||
"dependencies": {
|
||||
"process-nextick-args": {
|
||||
"version": "1.0.7",
|
||||
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
|
||||
"integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=",
|
||||
"dev": true
|
||||
},
|
||||
"readable-stream": {
|
||||
"version": "2.0.6",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
|
||||
"integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"core-util-is": "1.0.2",
|
||||
"inherits": "2.0.3",
|
||||
"isarray": "1.0.0",
|
||||
"process-nextick-args": "1.0.7",
|
||||
"string_decoder": "0.10.31",
|
||||
"util-deprecate": "1.0.2"
|
||||
}
|
||||
},
|
||||
"string_decoder": {
|
||||
"version": "0.10.31",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
|
||||
"integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"kind-of": {
|
||||
"version": "3.2.2",
|
||||
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
|
||||
@ -6487,6 +6561,15 @@
|
||||
"type-check": "0.3.2"
|
||||
}
|
||||
},
|
||||
"lie": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz",
|
||||
"integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"immediate": "3.0.6"
|
||||
}
|
||||
},
|
||||
"load-json-file": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
|
||||
|
21
package.json
21
package.json
@ -12,11 +12,16 @@
|
||||
"test": "tsc --noEmit && npm run lint && npm run coverage",
|
||||
"serve": "parcel index.html --open --no-autoinstall"
|
||||
},
|
||||
"browserslist": ["last 2 Chrome versions", "last 2 Firefox versions"],
|
||||
"browserslist": [
|
||||
"last 2 Chrome versions",
|
||||
"last 2 Firefox versions"
|
||||
],
|
||||
"author": "",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"@types/jest": "^22.2.3",
|
||||
"@types/jszip": "^3.1.4",
|
||||
"@types/node": "^10.1.4",
|
||||
"@types/pako": "1.0.0",
|
||||
"aphrodite": "2.1.0",
|
||||
"coveralls": "^3.0.1",
|
||||
@ -24,6 +29,7 @@
|
||||
"eslint-plugin-prettier": "^2.6.0",
|
||||
"jest": "^23.0.1",
|
||||
"jsverify": "^0.8.3",
|
||||
"jszip": "^3.1.5",
|
||||
"pako": "1.0.6",
|
||||
"parcel-bundler": "1.7.0",
|
||||
"preact": "8.2.7",
|
||||
@ -39,7 +45,16 @@
|
||||
"^.+\\.tsx?$": "ts-jest"
|
||||
},
|
||||
"testRegex": "\\.test\\.tsx?$",
|
||||
"collectCoverageFrom": ["*.{ts,tsx}", "!*.d.{ts,tsx}"],
|
||||
"moduleFileExtensions": ["ts", "tsx", "js", "jsx", "json"]
|
||||
"collectCoverageFrom": [
|
||||
"**/*.{ts,tsx}",
|
||||
"!**/*.d.{ts,tsx}"
|
||||
],
|
||||
"moduleFileExtensions": [
|
||||
"ts",
|
||||
"tsx",
|
||||
"js",
|
||||
"jsx",
|
||||
"json"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,7 @@ import {ValueFormatter, RawValueFormatter} from './value-formatters'
|
||||
const demangleCppModule = import('./demangle-cpp')
|
||||
|
||||
// Force eager loading of the module
|
||||
demangleCppModule.then(() => console.log('CPP demangler loaded'))
|
||||
demangleCppModule.then(() => {})
|
||||
|
||||
export interface FrameInfo {
|
||||
key: string | number
|
||||
|
3551
sample/profiles/Chrome/65/simple-timeline.json
Normal file
3551
sample/profiles/Chrome/65/simple-timeline.json
Normal file
File diff suppressed because one or more lines are too long
@ -0,0 +1,29 @@
|
||||
Bytes Used Count Symbol Name
|
||||
429.93 MB 100.0% 84671 start
|
||||
429.93 MB 100.0% 84671 main
|
||||
217.09 MB 50.4% 42749 delta()
|
||||
73.35 MB 17.0% 14337 alpha()
|
||||
73.35 MB 17.0% 14337 leakMemory()
|
||||
73.35 MB 17.0% 14337 malloc
|
||||
73.35 MB 17.0% 14337 malloc_zone_malloc
|
||||
72.36 MB 16.8% 14316 beta()
|
||||
72.36 MB 16.8% 14316 leakMemory()
|
||||
72.36 MB 16.8% 14316 malloc
|
||||
72.36 MB 16.8% 14316 malloc_zone_malloc
|
||||
71.38 MB 16.6% 14096 leakMemory()
|
||||
71.38 MB 16.6% 14096 malloc
|
||||
71.38 MB 16.6% 14096 malloc_zone_malloc
|
||||
71.79 MB 16.6% 14078 alpha()
|
||||
71.79 MB 16.6% 14078 leakMemory()
|
||||
71.79 MB 16.6% 14078 malloc
|
||||
71.79 MB 16.6% 14078 malloc_zone_malloc
|
||||
71.31 MB 16.5% 14078 gamma()
|
||||
71.31 MB 16.5% 14078 leakMemory()
|
||||
71.31 MB 16.5% 14078 malloc
|
||||
71.31 MB 16.5% 14078 malloc_zone_malloc
|
||||
69.74 MB 16.2% 13766 beta()
|
||||
69.74 MB 16.2% 13766 leakMemory()
|
||||
69.74 MB 16.2% 13766 malloc
|
||||
69.74 MB 16.2% 13766 malloc_zone_malloc
|
||||
|
||||
|
@ -0,0 +1,61 @@
|
||||
Running Time Self (ms) Symbol Name
|
||||
4273.0ms 99.9% 0 start
|
||||
4273.0ms 99.9% 0 main
|
||||
2126.0ms 49.7% 693 delta()
|
||||
713.0ms 16.6% 696 alpha()
|
||||
17.0ms 0.3% 1 leakMemory()
|
||||
16.0ms 0.3% 1 malloc
|
||||
15.0ms 0.3% 1 malloc_zone_malloc
|
||||
7.0ms 0.1% 2 szone_malloc_should_clear
|
||||
4.0ms 0.0% 4 small_malloc_from_free_list
|
||||
1.0ms 0.0% 0 allocate_pages_securely
|
||||
1.0ms 0.0% 0 mach_vm_map
|
||||
1.0ms 0.0% 1 _kernelrpc_mach_vm_map_trap
|
||||
5.0ms 0.1% 5 _os_lock_spin_lock
|
||||
2.0ms 0.0% 2 os_lock_lock
|
||||
711.0ms 16.6% 702 beta()
|
||||
9.0ms 0.2% 0 leakMemory()
|
||||
9.0ms 0.2% 0 malloc
|
||||
9.0ms 0.2% 0 malloc_zone_malloc
|
||||
7.0ms 0.1% 6 szone_malloc_should_clear
|
||||
1.0ms 0.0% 1 small_malloc_from_free_list
|
||||
2.0ms 0.0% 2 _os_lock_spin_lock
|
||||
9.0ms 0.2% 0 leakMemory()
|
||||
9.0ms 0.2% 0 malloc
|
||||
8.0ms 0.1% 0 malloc_zone_malloc
|
||||
5.0ms 0.1% 4 szone_malloc_should_clear
|
||||
1.0ms 0.0% 1 small_malloc_from_free_list
|
||||
2.0ms 0.0% 2 _os_lock_spin_lock
|
||||
1.0ms 0.0% 1 os_lock_lock
|
||||
1.0ms 0.0% 0 <Unknown Address>
|
||||
1.0ms 0.0% 1 szone_malloc
|
||||
725.0ms 16.9% 715 alpha()
|
||||
10.0ms 0.2% 0 leakMemory()
|
||||
10.0ms 0.2% 1 malloc
|
||||
9.0ms 0.2% 1 malloc_zone_malloc
|
||||
6.0ms 0.1% 2 szone_malloc_should_clear
|
||||
4.0ms 0.0% 4 small_malloc_from_free_list
|
||||
2.0ms 0.0% 2 _os_lock_spin_lock
|
||||
716.0ms 16.7% 704 beta()
|
||||
12.0ms 0.2% 0 leakMemory()
|
||||
12.0ms 0.2% 1 malloc
|
||||
11.0ms 0.2% 0 malloc_zone_malloc
|
||||
9.0ms 0.2% 5 szone_malloc_should_clear
|
||||
3.0ms 0.0% 3 small_malloc_from_free_list
|
||||
1.0ms 0.0% 0 allocate_pages_securely
|
||||
1.0ms 0.0% 0 mach_vm_map
|
||||
1.0ms 0.0% 1 _kernelrpc_mach_vm_map_trap
|
||||
1.0ms 0.0% 1 _os_lock_spin_lock
|
||||
1.0ms 0.0% 1 DYLD-STUB$$os_lock_unlock
|
||||
706.0ms 16.5% 696 gamma()
|
||||
10.0ms 0.2% 0 leakMemory()
|
||||
10.0ms 0.2% 0 malloc
|
||||
10.0ms 0.2% 1 malloc_zone_malloc
|
||||
5.0ms 0.1% 2 szone_malloc_should_clear
|
||||
3.0ms 0.0% 3 small_malloc_from_free_list
|
||||
2.0ms 0.0% 2 _os_lock_spin_lock
|
||||
1.0ms 0.0% 1 os_lock_unlock
|
||||
1.0ms 0.0% 0 <Unknown Address>
|
||||
1.0ms 0.0% 1 small_malloc_from_free_list
|
||||
|
||||
|
1
sample/profiles/stackprof/simple-stackprof.json
Normal file
1
sample/profiles/stackprof/simple-stackprof.json
Normal file
File diff suppressed because one or more lines are too long
@ -30,3 +30,5 @@ a()
|
||||
setTimeout(() => {
|
||||
console.profileEnd('a')
|
||||
}, 0)
|
||||
|
||||
window.addEventListener('click', a)
|
||||
|
35
sample/programs/ruby/simple.rb
Normal file
35
sample/programs/ruby/simple.rb
Normal file
@ -0,0 +1,35 @@
|
||||
require 'json'
|
||||
require 'stackprof'
|
||||
|
||||
def a
|
||||
for i in 0..100 do
|
||||
b
|
||||
c
|
||||
end
|
||||
end
|
||||
|
||||
def b
|
||||
for i in 0..10
|
||||
d
|
||||
end
|
||||
end
|
||||
|
||||
def c
|
||||
for i in 0..10
|
||||
d
|
||||
end
|
||||
end
|
||||
|
||||
def d
|
||||
prod = 1
|
||||
for i in 1..1000
|
||||
prod *= i
|
||||
end
|
||||
prod
|
||||
end
|
||||
|
||||
profile = StackProf.run(mode: :wall, raw: true) do
|
||||
a
|
||||
end
|
||||
|
||||
puts JSON.generate(profile)
|
41
test-utils.ts
Normal file
41
test-utils.ts
Normal file
@ -0,0 +1,41 @@
|
||||
import {Profile, CallTreeNode, Frame} from './profile'
|
||||
|
||||
interface DumpedProfile {
|
||||
stacks: string[]
|
||||
frames: Frame[]
|
||||
}
|
||||
|
||||
export function dumpProfile(profile: Profile): any {
|
||||
const dump: DumpedProfile = {
|
||||
stacks: [],
|
||||
frames: [],
|
||||
}
|
||||
|
||||
profile.forEachFrame(f => dump.frames.push(f))
|
||||
|
||||
let lastValue = 0
|
||||
const curStack: (number | string)[] = []
|
||||
|
||||
function maybeEmit(value: number) {
|
||||
if (lastValue != value) {
|
||||
dump.stacks.push(
|
||||
curStack.map(k => `${k}`).join(';') + ` ${profile.formatValue(value - lastValue)}`,
|
||||
)
|
||||
lastValue = value
|
||||
}
|
||||
}
|
||||
|
||||
function openFrame(node: CallTreeNode, value: number) {
|
||||
maybeEmit(value)
|
||||
curStack.push(node.frame.name)
|
||||
}
|
||||
|
||||
function closeFrame(value: number) {
|
||||
maybeEmit(value)
|
||||
curStack.pop()
|
||||
}
|
||||
|
||||
profile.forEachCall(openFrame, closeFrame)
|
||||
|
||||
return dump
|
||||
}
|
Loading…
Reference in New Issue
Block a user