Skip to content

Instantly share code, notes, and snippets.

@mcollina
Created August 8, 2017 15:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mcollina/c5d25814d540cad6e9e24098ce8c446c to your computer and use it in GitHub Desktop.
Save mcollina/c5d25814d540cad6e9e24098ce8c446c to your computer and use it in GitHub Desktop.
$ ./deps/v8/tools/mac-tick-processor isolate-0x102801600-v8.log
Statistical profiling result from isolate-0x102801600-v8.log, (5977 ticks, 162 unaccounted, 0 excluded).
[Shared libraries]:
ticks total nonlib name
3 0.1% /usr/lib/system/libsystem_pthread.dylib
1 0.0% /usr/lib/system/libdyld.dylib
[JavaScript]:
ticks total nonlib name
732 12.2% 12.3% LazyCompile: *processImmediate timers.js:689:26
455 7.6% 7.6% LazyCompile: *main /Users/matteo/Repositories/node/benchmark/timers/set-immediate-breadth.js:8:14
80 1.3% 1.3% Stub: CallApiCallbackStub
76 1.3% 1.3% Stub: CallApiCallbackStub {1}
75 1.3% 1.3% LoadIC: A load IC from the snapshot
45 0.8% 0.8% Stub: RecordWriteStub
24 0.4% 0.4% Stub: CEntryStub
19 0.3% 0.3% Stub: RecordWriteStub {4}
8 0.1% 0.1% Handler: An IC handler from the snapshot
4 0.1% 0.1% Function: ~setImmediate timers.js:811:22
3 0.1% 0.1% Stub: RecordWriteStub {1}
2 0.0% 0.0% Stub: RecordWriteStub {2}
2 0.0% 0.0% Builtin: InterpreterEntryTrampoline
1 0.0% 0.0% Stub: StoreBufferOverflowStub
1 0.0% 0.0% Stub: RecordWriteStub {3}
1 0.0% 0.0% Stub: CallICStub
1 0.0% 0.0% KeyedLoadIC: A keyed load IC from the snapshot
1 0.0% 0.0% Function: ~tryOnImmediate timers.js:738:24
1 0.0% 0.0% Function: ~initTriggerId async_hooks.js:273:23
1 0.0% 0.0% Function: ~createImmediate timers.js:846:25
1 0.0% 0.0% Function: ~<anonymous> fs.js:1:11
1 0.0% 0.0% Builtin: LoadIC_Uninitialized
[C++]:
ticks total nonlib name
549 9.2% 9.2% v8::internal::HeapObject::HeapObjectShortPrint(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)
485 8.1% 8.1% v8::internal::ParserBase<v8::internal::Parser>::ParsePropertyName(v8::internal::AstRawString const**, v8::internal::ParserBase<v8::internal::Parser>::PropertyKind*, bool*, bool*, bool*, bool*, bool*, bool*)
418 7.0% 7.0% v8::internal::AsmJs::InstantiateAsmWasm(v8::internal::Isolate*, v8::internal::Handle<v8::internal::SharedFunctionInfo>, v8::internal::Handle<v8::internal::FixedArray>, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::JSArrayBuffer>)
229 3.8% 3.8% icu_59::SimpleDateFormat::checkIntSuffix(icu_59::UnicodeString const&, int, int, signed char) const
226 3.8% 3.8% v8::internal::JSFunction::CalculateInstanceSizeForDerivedClass(v8::internal::Handle<v8::internal::JSFunction>, v8::internal::InstanceType, int, int*, int*)
221 3.7% 3.7% v8::internal::JsonParser<true>::ParseJsonValue()
172 2.9% 2.9% _uprv_decNumberCompareTotal_59
169 2.8% 2.8% v8::internal::JsonParser<true>::ParseJsonNumber()
156 2.6% 2.6% v8::internal::Handle<v8::internal::String> v8::internal::JsonParser<true>::SlowScanJsonString<v8::internal::SeqOneByteString, unsigned char>(v8::internal::Handle<v8::internal::String>, int, int)
101 1.7% 1.7% v8::internal::ParserBase<v8::internal::Parser>::ParseForAwaitStatement(v8::internal::ZoneList<v8::internal::AstRawString const*>*, bool*)
93 1.6% 1.6% v8::internal::ParserBase<v8::internal::Parser>::ParseDoWhileStatement(v8::internal::ZoneList<v8::internal::AstRawString const*>*, bool*)
91 1.5% 1.5% v8::internal::RegExpEngine::Compile(v8::internal::Isolate*, v8::internal::Zone*, v8::internal::RegExpCompileData*, v8::base::Flags<v8::internal::JSRegExp::Flag, int>, v8::internal::Handle<v8::internal::String>, v8::internal::Handle<v8::internal::String>, bool)
88 1.5% 1.5% v8::internal::ParserBase<v8::internal::PreParser>::ParsePrimaryExpression(bool*, bool*)
78 1.3% 1.3% v8::internal::JsonParser<true>::AdvanceSkipWhitespace()
68 1.1% 1.1% v8::internal::(anonymous namespace)::InstantiateObject(v8::internal::Isolate*, v8::internal::Handle<v8::internal::ObjectTemplateInfo>, v8::internal::Handle<v8::internal::JSReceiver>, bool, bool)
60 1.0% 1.0% v8::internal::JsonParser<false>::ParseJsonObject()
59 1.0% 1.0% icu_59::FixedPrecision::initVisibleDigits(double, icu_59::VisibleDigits&, UErrorCode&) const
52 0.9% 0.9% icu_59::CollationWeights::initForPrimary(signed char)
50 0.8% 0.8% icu_59::CollationTailoring::ensureOwnedData(UErrorCode&)
47 0.8% 0.8% v8::internal::ParserBase<v8::internal::PreParser>::BindingPatternUnexpectedToken()
47 0.8% 0.8% v8::internal::JsonParser<true>::ParseJsonObject()
46 0.8% 0.8% v8::internal::JSProxy::HasProperty(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSProxy>, v8::internal::Handle<v8::internal::Name>)
46 0.8% 0.8% std::__1::__tree_iterator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__tree_node<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, void*>*, long> std::__1::__tree<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__map_value_compare<v8::internal::Signature<v8::internal::MachineRepresentation>*, std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, v8::internal::wasm::WasmModuleBuilder::CompareFunctionSigs, true>, v8::internal::ZoneAllocator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int> > >::find<v8::internal::Signature<v8::internal::MachineRepresentation>*>(v8::internal::Signature<v8::internal::MachineRepresentation>* const&)
42 0.7% 0.7% v8::internal::MaterializedLiteral::BuildConstants(v8::internal::Isolate*)
40 0.7% 0.7% v8::internal::AsmJsScanner::Next()
38 0.6% 0.6% v8::internal::Object::IterationHasObservableEffects()
35 0.6% 0.6% v8::internal::interpreter::Interpreter::LookupNameOfBytecodeHandler(v8::internal::Code*)
32 0.5% 0.5% icu_59::CollationWeights::CollationWeights()
29 0.5% 0.5% v8::internal::interpreter::InterpreterCompilationJob::FinalizeJobImpl()
29 0.5% 0.5% v8::internal::Stats_Runtime_LoadGlobalIC_Slow(int, v8::internal::Object**, v8::internal::Isolate*)
26 0.4% 0.4% v8::internal::JSReceiver::SetOrCopyDataProperties(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::Object>, v8::internal::ScopedVector<v8::internal::Handle<v8::internal::Object> > const*, bool)
25 0.4% 0.4% icu_59::CollationCacheEntry::~CollationCacheEntry()
22 0.4% 0.4% icu_59::MeasureUnit::createHour(UErrorCode&)
22 0.4% 0.4% _mach_vm_purgable_control
19 0.3% 0.3% v8::internal::JSFunction::GetName(v8::internal::Handle<v8::internal::JSFunction>)
18 0.3% 0.3% v8::internal::JsonParser<true>::JsonParser(v8::internal::Isolate*, v8::internal::Handle<v8::internal::String>)
18 0.3% 0.3% v8::internal::JSObject::New(v8::internal::Handle<v8::internal::JSFunction>, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::AllocationSite>)
18 0.3% 0.3% v8::internal::AstTraversalVisitor<v8::internal::AstFunctionLiteralIdReindexer>::VisitNoStackOverflowCheck(v8::internal::AstNode*)
17 0.3% 0.3% v8::internal::Parser::PatternRewriter::VisitFunctionDeclaration(v8::internal::FunctionDeclaration*)
17 0.3% 0.3% _mach_msg
16 0.3% 0.3% void v8::internal::String::WriteToFlat<unsigned short>(v8::internal::String*, unsigned short*, int, int)
14 0.2% 0.2% v8::internal::MaterializedLiteral::GetBoilerplateValue(v8::internal::Expression*, v8::internal::Isolate*)
14 0.2% 0.2% v8::internal::Map::GetVisitorId(v8::internal::Map*)
13 0.2% 0.2% v8::internal::Object::ShortPrint(__sFILE*)
11 0.2% 0.2% v8::internal::Handle<v8::internal::String> v8::internal::JsonParser<true>::ScanJsonString<true>()
11 0.2% 0.2% __os_nospin_lock_unlock_slow
10 0.2% 0.2% v8::internal::Parser::PatternRewriter::VisitSpread(v8::internal::Spread*)
9 0.2% 0.2% icu_59::CollationTailoring::makeBaseVersion(unsigned char const*, unsigned char*)
9 0.2% 0.2% _munmap
8 0.1% 0.1% v8::internal::interpreter::ConstantArrayBuilder::Insert(v8::internal::AstRawString const*)
8 0.1% 0.1% v8::internal::interpreter::ConstantArrayBuilder::AllocateIndex(v8::internal::interpreter::ConstantArrayBuilder::Entry)
8 0.1% 0.1% v8::internal::JSFunction::GetDerivedMap(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSFunction>, v8::internal::Handle<v8::internal::JSReceiver>)
7 0.1% 0.1% v8::internal::Parser::PatternRewriter::VisitSloppyBlockFunctionStatement(v8::internal::SloppyBlockFunctionStatement*)
7 0.1% 0.1% v8::internal::JsonParseInternalizer::InternalizeJsonProperty(v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::String>)
7 0.1% 0.1% v8::internal::JSFunction::PrintName(__sFILE*)
7 0.1% 0.1% icu_59::CollationTailoring::setVersion(unsigned char const*, unsigned char const*)
6 0.1% 0.1% v8::internal::interpreter::ConstantArrayBuilder::Insert(v8::internal::AstValue const*)
6 0.1% 0.1% std::__1::__tree_node_base<void*>*& std::__1::__tree<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__map_value_compare<v8::internal::Signature<v8::internal::MachineRepresentation>*, std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, v8::internal::wasm::WasmModuleBuilder::CompareFunctionSigs, true>, v8::internal::ZoneAllocator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int> > >::__find_equal<v8::internal::Signature<v8::internal::MachineRepresentation>*>(std::__1::__tree_end_node<std::__1::__tree_node_base<void*>*>*&, v8::internal::Signature<v8::internal::MachineRepresentation>* const&)
6 0.1% 0.1% __enlarge
5 0.1% 0.1% v8::internal::ParserBase<v8::internal::PreParser>::ParseMemberExpressionContinuation(v8::internal::PreParserExpression, bool*, bool*)
4 0.1% 0.1% v8::internal::PropertyCell::PrepareForValue(v8::internal::Handle<v8::internal::GlobalDictionary>, int, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyDetails)
4 0.1% 0.1% v8::internal::Parser::PatternRewriter::VisitSuperCallReference(v8::internal::SuperCallReference*)
4 0.1% 0.1% v8::internal::Parser::PatternRewriter::VisitRegExpLiteral(v8::internal::RegExpLiteral*)
4 0.1% 0.1% v8::internal::JsonParser<false>::ParseJsonValue()
4 0.1% 0.1% icu_59::CollationWeights::initForSecondary()
3 0.1% 0.1% v8::internal::interpreter::ConstantArrayBuilder::InsertAsyncIteratorSymbol()
3 0.1% 0.1% v8::internal::JSObject::SetNormalizedProperty(v8::internal::Handle<v8::internal::JSObject>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyDetails)
3 0.1% 0.1% _mprotect
2 0.0% 0.0% v8::internal::compiler::JSCallReducer::ReduceJSCall(v8::internal::compiler::Node*)
2 0.0% 0.0% v8::internal::Parser::PatternRewriter::VisitReturnStatement(v8::internal::ReturnStatement*)
2 0.0% 0.0% v8::internal::AstStringConstants::AstStringConstants(v8::internal::Isolate*, unsigned int)
2 0.0% 0.0% v8::internal::(anonymous namespace)::SetPropertyWithInterceptorInternal(v8::internal::LookupIterator*, v8::internal::Handle<v8::internal::InterceptorInfo>, v8::internal::Object::ShouldThrow, v8::internal::Handle<v8::internal::Object>)
2 0.0% 0.0% icu_59::CollationTailoring::getUCAVersion() const
2 0.0% 0.0% _small_free_list_remove_ptr_no_clear
2 0.0% 0.0% _setaudit
2 0.0% 0.0% __malloc_initialize
1 0.0% 0.0% v8::internal::interpreter::BytecodeGenerator::VisitSloppyBlockFunctionStatement(v8::internal::SloppyBlockFunctionStatement*)
1 0.0% 0.0% v8::internal::interpreter::BytecodeGenerator::VisitCommaExpression(v8::internal::BinaryOperation*)
1 0.0% 0.0% v8::internal::interpreter::BytecodeArrayBuilder::LogicalNot(v8::internal::interpreter::BytecodeArrayBuilder::ToBooleanMode)
1 0.0% 0.0% v8::internal::interpreter::BytecodeArrayBuilder::CompareOperation(v8::internal::Token::Value, v8::internal::interpreter::Register, int)
1 0.0% 0.0% v8::internal::interpreter::BytecodeArrayBuilder::CompareOperation(v8::internal::Token::Value, v8::internal::interpreter::Register)
1 0.0% 0.0% v8::internal::interpreter::BytecodeArrayAccessor::UpdateOperandScale()
1 0.0% 0.0% v8::internal::compiler::SimplifiedOperatorBuilder::SimplifiedOperatorBuilder(v8::internal::Zone*)
1 0.0% 0.0% v8::internal::compiler::RepresentationSelector::VisitNode(v8::internal::compiler::Node*, v8::internal::compiler::Truncation, v8::internal::compiler::SimplifiedLowering*)
1 0.0% 0.0% v8::internal::compiler::JSCallReducer::ReduceArrayForEach(v8::internal::Handle<v8::internal::JSFunction>, v8::internal::compiler::Node*)
1 0.0% 0.0% v8::internal::compiler::(anonymous namespace)::TraceSchedule(v8::internal::CompilationInfo*, v8::internal::compiler::Schedule*)
1 0.0% 0.0% v8::internal::Stats_Runtime_StringParseFloat(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.0% 0.0% v8::internal::Stats_Runtime_MapGrow(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.0% 0.0% v8::internal::Stats_Runtime_FunctionSetPrototype(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.0% 0.0% v8::internal::Stats_Runtime_AtomicsOr(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.0% 0.0% v8::internal::ScopeInfo::ContextSlotIndex(v8::internal::Handle<v8::internal::ScopeInfo>, v8::internal::Handle<v8::internal::String>, v8::internal::VariableMode*, v8::internal::InitializationFlag*, v8::internal::MaybeAssignedFlag*)
1 0.0% 0.0% v8::internal::RegExpParser::ParsePropertyClass(v8::internal::ZoneList<v8::internal::CharacterRange>*, bool)
1 0.0% 0.0% v8::internal::RegExpParser::ParseCharacterClass()
1 0.0% 0.0% v8::internal::PropertyCallbackArguments::Call(void (*)(v8::Local<v8::Name>, v8::Local<v8::Value>, v8::PropertyCallbackInfo<void> const&), v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Object>)
1 0.0% 0.0% v8::internal::ProfilerEventsProcessor::AddCurrentStack(v8::internal::Isolate*, bool)
1 0.0% 0.0% v8::internal::ParserBase<v8::internal::Parser>::ParseMemberExpressionContinuation(v8::internal::Expression*, bool*, bool*)
1 0.0% 0.0% v8::internal::Object::SetSuperProperty(v8::internal::LookupIterator*, v8::internal::Handle<v8::internal::Object>, v8::internal::LanguageMode, v8::internal::Object::StoreFromKeyed)
1 0.0% 0.0% v8::internal::Object::GetProperty(v8::internal::LookupIterator*)
1 0.0% 0.0% v8::internal::Object::CreateListFromArrayLike(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::ElementTypes)
1 0.0% 0.0% v8::internal::Map::GeneralizeAllFields(v8::internal::Handle<v8::internal::Map>)
1 0.0% 0.0% v8::internal::Map::CopyGeneralizeAllFields(v8::internal::Handle<v8::internal::Map>, v8::internal::ElementsKind, int, v8::internal::PropertyKind, v8::internal::PropertyAttributes, char const*)
1 0.0% 0.0% v8::internal::KeyAccumulator::GetOwnEnumPropertyKeys(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSObject>)
1 0.0% 0.0% v8::internal::KeyAccumulator::CollectAccessCheckInterceptorKeys(v8::internal::Handle<v8::internal::AccessCheckInfo>, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::JSObject>)
1 0.0% 0.0% v8::internal::JsonParser<false>::ParseElement(v8::internal::Handle<v8::internal::JSObject>)
1 0.0% 0.0% v8::internal::JSReceiver::GetCreationContext()
1 0.0% 0.0% v8::internal::JSProxy::DeletePropertyOrElement(v8::internal::Handle<v8::internal::JSProxy>, v8::internal::Handle<v8::internal::Name>, v8::internal::LanguageMode)
1 0.0% 0.0% v8::internal::Handle<v8::internal::String> v8::internal::JsonParser<true>::SlowScanJsonString<v8::internal::SeqTwoByteString, unsigned short>(v8::internal::Handle<v8::internal::String>, int, int)
1 0.0% 0.0% v8::internal::Handle<v8::internal::String> v8::internal::JsonParser<false>::SlowScanJsonString<v8::internal::SeqTwoByteString, unsigned short>(v8::internal::Handle<v8::internal::String>, int, int)
1 0.0% 0.0% v8::internal::Handle<v8::internal::String> v8::internal::JsonParser<false>::ScanJsonString<true>()
1 0.0% 0.0% v8::internal::CompilationCacheRegExp::Put(v8::internal::Handle<v8::internal::String>, v8::base::Flags<v8::internal::JSRegExp::Flag, int>, v8::internal::Handle<v8::internal::FixedArray>)
1 0.0% 0.0% v8::internal::AstTraversalVisitor<v8::internal::(anonymous namespace)::Rewriter>::VisitNoStackOverflowCheck(v8::internal::AstNode*)
1 0.0% 0.0% v8::internal::Assembler::tzcntq(v8::internal::Register, v8::internal::Operand const&)
1 0.0% 0.0% v8::internal::(anonymous namespace)::CollectElementIndices(v8::internal::Handle<v8::internal::JSObject>, unsigned int, v8::internal::List<unsigned int, v8::internal::FreeStoreAllocationPolicy>*)
1 0.0% 0.0% v8::base::ieee754::sin(double)
1 0.0% 0.0% v8::base::(anonymous namespace)::PrettyPrintChar(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int)
1 0.0% 0.0% node::http2::Http2Session::Send(uv_buf_t*, unsigned long)
1 0.0% 0.0% node::crypto::DiffieHellman::DiffieHellmanGroup(v8::FunctionCallbackInfo<v8::Value> const&)
1 0.0% 0.0% icu_59::MessageFormat::adoptFormat(int, icu_59::Format*)
1 0.0% 0.0% icu_59::DecimalFormatSymbols::initialize(icu_59::Locale const&, UErrorCode&, signed char)
1 0.0% 0.0% disasm::DisassemblerX64::AVXInstruction(unsigned char*)
1 0.0% 0.0% decMultiplyOp(decNumber*, decNumber const*, decNumber const*, decContext*, unsigned int*)
1 0.0% 0.0% bool v8::internal::BodyDescriptorApply<v8::internal::CallIsValidSlot, bool, v8::internal::HeapObject*, int, int>(v8::internal::InstanceType, v8::internal::HeapObject*, int, int)
1 0.0% 0.0% _unwind_stack_from_table_index
1 0.0% 0.0% _tiny_malloc_from_free_list
1 0.0% 0.0% __simple_dprintf
1 0.0% 0.0% __pthread_mutex_unlock_slow
1 0.0% 0.0% ___vfwscanf
1 0.0% 0.0% ___gdtoa
[Summary]:
ticks total nonlib name
1534 25.7% 25.7% JavaScript
4277 71.6% 71.6% C++
2282 38.2% 38.2% GC
4 0.1% Shared libraries
162 2.7% Unaccounted
[C++ entry points]:
ticks cpp total name
905 46.3% 15.1% std::__1::__tree_iterator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__tree_node<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, void*>*, long> std::__1::__tree<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__map_value_compare<v8::internal::Signature<v8::internal::MachineRepresentation>*, std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, v8::internal::wasm::WasmModuleBuilder::CompareFunctionSigs, true>, v8::internal::ZoneAllocator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int> > >::find<v8::internal::Signature<v8::internal::MachineRepresentation>*>(v8::internal::Signature<v8::internal::MachineRepresentation>* const&)
418 21.4% 7.0% v8::internal::AsmJs::InstantiateAsmWasm(v8::internal::Isolate*, v8::internal::Handle<v8::internal::SharedFunctionInfo>, v8::internal::Handle<v8::internal::FixedArray>, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::JSArrayBuffer>)
254 13.0% 4.2% v8::internal::Builtin_Impl_Stats_JsonStringify(int, v8::internal::Object**, v8::internal::Isolate*)
68 3.5% 1.1% v8::internal::(anonymous namespace)::InstantiateObject(v8::internal::Isolate*, v8::internal::Handle<v8::internal::ObjectTemplateInfo>, v8::internal::Handle<v8::internal::JSReceiver>, bool, bool)
59 3.0% 1.0% icu_59::FixedPrecision::initVisibleDigits(double, icu_59::VisibleDigits&, UErrorCode&) const
52 2.7% 0.9% icu_59::CollationWeights::initForPrimary(signed char)
50 2.6% 0.8% icu_59::CollationTailoring::ensureOwnedData(UErrorCode&)
40 2.0% 0.7% v8::internal::AsmJsScanner::Next()
32 1.6% 0.5% icu_59::CollationWeights::CollationWeights()
25 1.3% 0.4% icu_59::CollationCacheEntry::~CollationCacheEntry()
14 0.7% 0.2% v8::internal::TransitionsAccessor::TraverseTransitionTreeInternal(void (*)(v8::internal::Map*, void*), void*, v8::internal::PerThreadAssertScopeDebugOnly<(v8::internal::PerThreadAssertType)0, false>*)
9 0.5% 0.2% icu_59::CollationTailoring::makeBaseVersion(unsigned char const*, unsigned char*)
7 0.4% 0.1% icu_59::CollationTailoring::setVersion(unsigned char const*, unsigned char const*)
6 0.3% 0.1% v8::internal::Uri::Decode(v8::internal::Isolate*, v8::internal::Handle<v8::internal::String>, bool)
4 0.2% 0.1% icu_59::CollationWeights::initForSecondary()
2 0.1% 0.0% v8::internal::WasmDebugInfo::RunInterpreter(unsigned char*, int, unsigned char*)
2 0.1% 0.0% v8::internal::TransitionArray::Sort()
2 0.1% 0.0% v8::internal::String::CalculateLineEnds(v8::internal::Handle<v8::internal::String>, bool)
2 0.1% 0.0% icu_59::CollationTailoring::getUCAVersion() const
1 0.1% 0.0% v8::internal::JsonParser<false>::ParseJsonValue()
1 0.1% 0.0% v8::(anonymous namespace)::WebAssemblyTable(v8::FunctionCallbackInfo<v8::Value> const&)
[Bottom up (heavy) profile]:
Note: percentage shows a share of a particular caller in the total
amount of its parent calls.
Callers occupying less than 1.0% are not shown.
ticks parent name
732 12.2% LazyCompile: *processImmediate timers.js:689:26
549 9.2% v8::internal::HeapObject::HeapObjectShortPrint(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)
485 8.1% v8::internal::ParserBase<v8::internal::Parser>::ParsePropertyName(v8::internal::AstRawString const**, v8::internal::ParserBase<v8::internal::Parser>::PropertyKind*, bool*, bool*, bool*, bool*, bool*, bool*)
455 7.6% LazyCompile: *main /Users/matteo/Repositories/node/benchmark/timers/set-immediate-breadth.js:8:14
455 100.0% Function: ~Benchmark.process.nextTick /Users/matteo/Repositories/node/benchmark/common.js:34:22
455 100.0% Function: ~_combinedTickCallback internal/process/next_tick.js:129:33
455 100.0% Function: ~_tickCallback internal/process/next_tick.js:151:25
455 100.0% Function: ~Module.runMain module.js:607:26
455 100.0% Function: ~startup bootstrap_node.js:12:19
418 7.0% v8::internal::AsmJs::InstantiateAsmWasm(v8::internal::Isolate*, v8::internal::Handle<v8::internal::SharedFunctionInfo>, v8::internal::Handle<v8::internal::FixedArray>, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::JSArrayBuffer>)
418 100.0% LazyCompile: *processImmediate timers.js:689:26
229 3.8% icu_59::SimpleDateFormat::checkIntSuffix(icu_59::UnicodeString const&, int, int, signed char) const
229 100.0% v8::internal::Builtin_Impl_Stats_JsonStringify(int, v8::internal::Object**, v8::internal::Isolate*)
229 100.0% Function: ~spawnSync internal/child_process.js:933:19
229 100.0% Function: ~spawnSync child_process.js:506:19
220 96.1% Function: ~AutocannonBenchmarker /Users/matteo/Repositories/node/benchmark/_http-benchmarkers.js:14:14
220 100.0% Function: ~<anonymous> /Users/matteo/Repositories/node/benchmark/_http-benchmarkers.js:1:11
6 2.6% Function: ~H2LoadBenchmarker /Users/matteo/Repositories/node/benchmark/_http-benchmarkers.js:118:14
6 100.0% Function: ~<anonymous> /Users/matteo/Repositories/node/benchmark/_http-benchmarkers.js:1:11
3 1.3% Function: ~WrkBenchmarker /Users/matteo/Repositories/node/benchmark/_http-benchmarkers.js:50:14
3 100.0% Function: ~<anonymous> /Users/matteo/Repositories/node/benchmark/_http-benchmarkers.js:1:11
226 3.8% v8::internal::JSFunction::CalculateInstanceSizeForDerivedClass(v8::internal::Handle<v8::internal::JSFunction>, v8::internal::InstanceType, int, int*, int*)
226 100.0% std::__1::__tree_iterator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__tree_node<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, void*>*, long> std::__1::__tree<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__map_value_compare<v8::internal::Signature<v8::internal::MachineRepresentation>*, std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, v8::internal::wasm::WasmModuleBuilder::CompareFunctionSigs, true>, v8::internal::ZoneAllocator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int> > >::find<v8::internal::Signature<v8::internal::MachineRepresentation>*>(v8::internal::Signature<v8::internal::MachineRepresentation>* const&)
226 100.0% LazyCompile: *main /Users/matteo/Repositories/node/benchmark/timers/set-immediate-breadth.js:8:14
226 100.0% Function: ~Benchmark.process.nextTick /Users/matteo/Repositories/node/benchmark/common.js:34:22
226 100.0% Function: ~_combinedTickCallback internal/process/next_tick.js:129:33
226 100.0% Function: ~_tickCallback internal/process/next_tick.js:151:25
221 3.7% v8::internal::JsonParser<true>::ParseJsonValue()
172 2.9% _uprv_decNumberCompareTotal_59
172 100.0% std::__1::__tree_iterator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__tree_node<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, void*>*, long> std::__1::__tree<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__map_value_compare<v8::internal::Signature<v8::internal::MachineRepresentation>*, std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, v8::internal::wasm::WasmModuleBuilder::CompareFunctionSigs, true>, v8::internal::ZoneAllocator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int> > >::find<v8::internal::Signature<v8::internal::MachineRepresentation>*>(v8::internal::Signature<v8::internal::MachineRepresentation>* const&)
172 100.0% LazyCompile: *main /Users/matteo/Repositories/node/benchmark/timers/set-immediate-breadth.js:8:14
172 100.0% Function: ~Benchmark.process.nextTick /Users/matteo/Repositories/node/benchmark/common.js:34:22
172 100.0% Function: ~_combinedTickCallback internal/process/next_tick.js:129:33
172 100.0% Function: ~_tickCallback internal/process/next_tick.js:151:25
169 2.8% v8::internal::JsonParser<true>::ParseJsonNumber()
162 2.7% UNKNOWN
2 1.2% std::__1::__tree_iterator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__tree_node<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, void*>*, long> std::__1::__tree<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__map_value_compare<v8::internal::Signature<v8::internal::MachineRepresentation>*, std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, v8::internal::wasm::WasmModuleBuilder::CompareFunctionSigs, true>, v8::internal::ZoneAllocator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int> > >::find<v8::internal::Signature<v8::internal::MachineRepresentation>*>(v8::internal::Signature<v8::internal::MachineRepresentation>* const&)
2 100.0% LazyCompile: *main /Users/matteo/Repositories/node/benchmark/timers/set-immediate-breadth.js:8:14
2 100.0% Function: ~Benchmark.process.nextTick /Users/matteo/Repositories/node/benchmark/common.js:34:22
2 100.0% Function: ~_combinedTickCallback internal/process/next_tick.js:129:33
2 100.0% Function: ~_tickCallback internal/process/next_tick.js:151:25
156 2.6% v8::internal::Handle<v8::internal::String> v8::internal::JsonParser<true>::SlowScanJsonString<v8::internal::SeqOneByteString, unsigned char>(v8::internal::Handle<v8::internal::String>, int, int)
101 1.7% v8::internal::ParserBase<v8::internal::Parser>::ParseForAwaitStatement(v8::internal::ZoneList<v8::internal::AstRawString const*>*, bool*)
101 100.0% std::__1::__tree_iterator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__tree_node<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, void*>*, long> std::__1::__tree<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__map_value_compare<v8::internal::Signature<v8::internal::MachineRepresentation>*, std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, v8::internal::wasm::WasmModuleBuilder::CompareFunctionSigs, true>, v8::internal::ZoneAllocator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int> > >::find<v8::internal::Signature<v8::internal::MachineRepresentation>*>(v8::internal::Signature<v8::internal::MachineRepresentation>* const&)
101 100.0% LazyCompile: *main /Users/matteo/Repositories/node/benchmark/timers/set-immediate-breadth.js:8:14
101 100.0% Function: ~Benchmark.process.nextTick /Users/matteo/Repositories/node/benchmark/common.js:34:22
101 100.0% Function: ~_combinedTickCallback internal/process/next_tick.js:129:33
101 100.0% Function: ~_tickCallback internal/process/next_tick.js:151:25
93 1.6% v8::internal::ParserBase<v8::internal::Parser>::ParseDoWhileStatement(v8::internal::ZoneList<v8::internal::AstRawString const*>*, bool*)
93 100.0% std::__1::__tree_iterator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__tree_node<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, void*>*, long> std::__1::__tree<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__map_value_compare<v8::internal::Signature<v8::internal::MachineRepresentation>*, std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, v8::internal::wasm::WasmModuleBuilder::CompareFunctionSigs, true>, v8::internal::ZoneAllocator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int> > >::find<v8::internal::Signature<v8::internal::MachineRepresentation>*>(v8::internal::Signature<v8::internal::MachineRepresentation>* const&)
93 100.0% LazyCompile: *main /Users/matteo/Repositories/node/benchmark/timers/set-immediate-breadth.js:8:14
93 100.0% Function: ~Benchmark.process.nextTick /Users/matteo/Repositories/node/benchmark/common.js:34:22
93 100.0% Function: ~_combinedTickCallback internal/process/next_tick.js:129:33
93 100.0% Function: ~_tickCallback internal/process/next_tick.js:151:25
91 1.5% v8::internal::RegExpEngine::Compile(v8::internal::Isolate*, v8::internal::Zone*, v8::internal::RegExpCompileData*, v8::base::Flags<v8::internal::JSRegExp::Flag, int>, v8::internal::Handle<v8::internal::String>, v8::internal::Handle<v8::internal::String>, bool)
88 1.5% v8::internal::ParserBase<v8::internal::PreParser>::ParsePrimaryExpression(bool*, bool*)
88 100.0% std::__1::__tree_iterator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__tree_node<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, void*>*, long> std::__1::__tree<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, std::__1::__map_value_compare<v8::internal::Signature<v8::internal::MachineRepresentation>*, std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int>, v8::internal::wasm::WasmModuleBuilder::CompareFunctionSigs, true>, v8::internal::ZoneAllocator<std::__1::__value_type<v8::internal::Signature<v8::internal::MachineRepresentation>*, unsigned int> > >::find<v8::internal::Signature<v8::internal::MachineRepresentation>*>(v8::internal::Signature<v8::internal::MachineRepresentation>* const&)
88 100.0% LazyCompile: *main /Users/matteo/Repositories/node/benchmark/timers/set-immediate-breadth.js:8:14
88 100.0% Function: ~Benchmark.process.nextTick /Users/matteo/Repositories/node/benchmark/common.js:34:22
88 100.0% Function: ~_combinedTickCallback internal/process/next_tick.js:129:33
88 100.0% Function: ~_tickCallback internal/process/next_tick.js:151:25
80 1.3% Stub: CallApiCallbackStub
48 60.0% LazyCompile: *processImmediate timers.js:689:26
78 1.3% v8::internal::JsonParser<true>::AdvanceSkipWhitespace()
76 1.3% Stub: CallApiCallbackStub {1}
49 64.5% LazyCompile: *processImmediate timers.js:689:26
75 1.3% LoadIC: A load IC from the snapshot
75 100.0% LazyCompile: *main /Users/matteo/Repositories/node/benchmark/timers/set-immediate-breadth.js:8:14
75 100.0% Function: ~Benchmark.process.nextTick /Users/matteo/Repositories/node/benchmark/common.js:34:22
75 100.0% Function: ~_combinedTickCallback internal/process/next_tick.js:129:33
75 100.0% Function: ~_tickCallback internal/process/next_tick.js:151:25
75 100.0% Function: ~Module.runMain module.js:607:26
68 1.1% v8::internal::(anonymous namespace)::InstantiateObject(v8::internal::Isolate*, v8::internal::Handle<v8::internal::ObjectTemplateInfo>, v8::internal::Handle<v8::internal::JSReceiver>, bool, bool)
68 100.0% LazyCompile: *processImmediate timers.js:689:26
60 1.0% v8::internal::JsonParser<false>::ParseJsonObject()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment