Skip to content

Instantly share code, notes, and snippets.

@Fishrock123
Created September 17, 2018 17:10
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 Fishrock123/ff218a0c05f41671bf56e784662fb055 to your computer and use it in GitHub Desktop.
Save Fishrock123/ff218a0c05f41671bf56e784662fb055 to your computer and use it in GitHub Desktop.
Node.js --prof of https://github.com/nodejs/node/pull/22842 @ 3fdbbb02caf5b6038e56f687aaf4089c1db096a6 for benchmark/timers/timers-timeout-pooled.js n=10000000
Statistical profiling result from isolate-2-patch-v8.log, (6806 ticks, 37 unaccounted, 0 excluded).
[Shared libraries]:
ticks total nonlib name
10 0.1% /usr/lib/system/libsystem_pthread.dylib
3 0.0% /usr/lib/libc++abi.dylib
1 0.0% /usr/lib/system/libsystem_platform.dylib
[JavaScript]:
ticks total nonlib name
677 9.9% 10.0% LazyCompile: *listOnTimeout timers.js:262:23
379 5.6% 5.6% LazyCompile: *main /Users/Jeremiah/Documents/node/benchmark/timers/timers-timeout-pooled.js:11:14
139 2.0% 2.0% Builtin: CallApiCallback_Argc0
113 1.7% 1.7% LazyCompile: *remove internal/linkedlist.js:15:16
106 1.6% 1.6% LazyCompile: *_tickCallback internal/process/next_tick.js:41:25
56 0.8% 0.8% Builtin: RecordWrite
50 0.7% 0.7% LazyCompile: *validateAsyncId internal/async_hooks.js:118:25
41 0.6% 0.6% LazyCompile: *cb2 /Users/Jeremiah/Documents/node/benchmark/timers/timers-timeout-pooled.js:23:15
31 0.5% 0.5% LazyCompile: *cb /Users/Jeremiah/Documents/node/benchmark/timers/timers-timeout-pooled.js:18:14
28 0.4% 0.4% LazyCompile: *getDefaultTriggerAsyncId internal/async_hooks.js:271:34
11 0.2% 0.2% Builtin: CallFunction_ReceiverIsNotNullOrUndefined
7 0.1% 0.1% Builtin: Call_ReceiverIsNotNullOrUndefined
3 0.0% 0.0% Builtin: InterpreterEntryTrampoline
2 0.0% 0.0% LazyCompile: ~tryOnTimeout timers.js:327:22
2 0.0% 0.0% LazyCompile: ~listOnTimeout timers.js:262:23
2 0.0% 0.0% LazyCompile: ~_tickCallback internal/process/next_tick.js:41:25
2 0.0% 0.0% LazyCompile: ~Timeout internal/timers.js:56:17
1 0.0% 0.0% Stub: StoreFastElementStub
1 0.0% 0.0% LazyCompile: ~validateAsyncId internal/async_hooks.js:118:25
1 0.0% 0.0% LazyCompile: ~ontimeout timers.js:454:19
1 0.0% 0.0% LazyCompile: ~main /Users/Jeremiah/Documents/node/benchmark/timers/timers-timeout-pooled.js:11:14
1 0.0% 0.0% LazyCompile: ~isEmpty internal/fixed_queue.js:63:10
1 0.0% 0.0% LazyCompile: ~insert timers.js:196:16
1 0.0% 0.0% LazyCompile: ~emitBeforeScript internal/async_hooks.js:341:26
1 0.0% 0.0% LazyCompile: *shift internal/fixed_queue.js:76:8
1 0.0% 0.0% LazyCompile: *setTimeout timers.js:413:20
1 0.0% 0.0% Builtin: KeyedLoadIC
1 0.0% 0.0% Builtin: Call_ReceiverIsAny
[C++]:
ticks total nonlib name
3070 45.1% 45.2% T _mach_vm_purgable_control
402 5.9% 5.9% t v8::internal::Scavenger::ScavengeObject(v8::internal::HeapObjectReference**, v8::internal::HeapObject*)
191 2.8% 2.8% T v8::internal::Isolate::RunMicrotasks()
160 2.4% 2.4% T node::SyncProcessRunner::Spawn(v8::FunctionCallbackInfo<v8::Value> const&)
147 2.2% 2.2% T __kernelrpc_vm_remap
87 1.3% 1.3% t _uv__hrtime
74 1.1% 1.1% t v8::internal::IterateAndScavengePromotedObjectsVisitor::HandleSlot(v8::internal::HeapObject*, unsigned long, v8::internal::HeapObject*)
69 1.0% 1.0% T v8::internal::Map::FindRootMap(v8::internal::Isolate*) const
60 0.9% 0.9% T v8::Value::IsExternal() const
59 0.9% 0.9% T v8::internal::LayoutDescriptor::IsTagged(int, int, int*)
49 0.7% 0.7% T v8::Isolate::SuppressMicrotaskExecutionScope::~SuppressMicrotaskExecutionScope()
48 0.7% 0.7% T v8::internal::LayoutDescriptorHelper::IsTagged(int, int, int*)
43 0.6% 0.6% t void v8::internal::BodyDescriptorBase::IterateBodyImpl<v8::internal::IterateAndScavengePromotedObjectsVisitor>(v8::internal::Map*, v8::internal::HeapObject*, int, int, v8::internal::IterateAndScavengePromotedObjectsVisitor*)
43 0.6% 0.6% T v8::Isolate::SuppressMicrotaskExecutionScope::SuppressMicrotaskExecutionScope(v8::Isolate*)
37 0.5% 0.5% T _uv_update_time
30 0.4% 0.4% t v8::internal::Worklist<std::__1::pair<v8::internal::HeapObject*, int>, 256>::Pop(int, std::__1::pair<v8::internal::HeapObject*, int>*)
29 0.4% 0.4% T _vm_purgable_control
28 0.4% 0.4% t node::(anonymous namespace)::GetLibuvNow(v8::FunctionCallbackInfo<v8::Value> const&)
26 0.4% 0.4% T v8::internal::Heap::Scavenge()
26 0.4% 0.4% T node::contextify::ContextifyScript::New(v8::FunctionCallbackInfo<v8::Value> const&)
23 0.3% 0.3% T v8::internal::Scavenger::Process(v8::internal::OneshotBarrier*)
21 0.3% 0.3% t void v8::internal::BodyDescriptorBase::IterateBodyImpl<v8::internal::ScavengeVisitor>(v8::internal::Map*, v8::internal::HeapObject*, int, int, v8::internal::ScavengeVisitor*)
20 0.3% 0.3% T v8::Integer::NewFromUnsigned(v8::Isolate*, unsigned int)
19 0.3% 0.3% T _mach_vm_protect
17 0.2% 0.3% T node::Environment::GetNow()
16 0.2% 0.2% t v8::internal::PagedSpace::AllocateRaw(int, v8::internal::AllocationAlignment)
16 0.2% 0.2% T _uv_now
15 0.2% 0.2% T v8::External::Value() const
13 0.2% 0.2% T v8::internal::IncrementalMarking::Step(unsigned long, v8::internal::IncrementalMarking::CompletionAction, v8::internal::StepOrigin, v8::internal::WorklistToProcess)
13 0.2% 0.2% T v8::internal::IncrementalMarking::RecordWriteSlow(v8::internal::HeapObject*, v8::internal::HeapObjectReference**, v8::internal::Object*)
13 0.2% 0.2% T ___guarded_open_np
11 0.2% 0.2% t v8::internal::PagedSpace::Available()
10 0.1% 0.1% T v8::internal::MemoryChunk::Initialize(v8::internal::Heap*, unsigned long, unsigned long, unsigned long, unsigned long, v8::internal::Executability, v8::internal::Space*, v8::internal::VirtualMemory*)
10 0.1% 0.1% T v8::Isolate::RunMicrotasks()
9 0.1% 0.1% t v8::internal::LocalAllocator::AllocateInLAB(int, v8::internal::AllocationAlignment)
9 0.1% 0.1% t v8::internal::HeapObject::SizeFromMap(v8::internal::Map*) const
9 0.1% 0.1% T _mach_error_type
8 0.1% 0.1% t void v8::internal::BodyDescriptorApply<v8::internal::CallIterateBody, void, v8::internal::Map*, v8::internal::HeapObject*, int, v8::internal::IterateAndScavengePromotedObjectsVisitor*>(v8::internal::InstanceType, v8::internal::Map*, v8::internal::HeapObject*, int, v8::internal::IterateAndScavengePromotedObjectsVisitor*)
7 0.1% 0.1% T node::RunMicrotasks(v8::FunctionCallbackInfo<v8::Value> const&)
7 0.1% 0.1% T _vm_read
6 0.1% 0.1% t _szone_malloc_should_clear
6 0.1% 0.1% T v8::internal::Heap::GetFillToAlign(unsigned long, v8::internal::AllocationAlignment)
5 0.1% 0.1% t void v8::internal::BodyDescriptorBase::IteratePointers<v8::internal::MarkingVisitor<(v8::internal::FixedArrayVisitationMode)1, (v8::internal::TraceRetainingPathMode)1, v8::internal::IncrementalMarkingState> >(v8::internal::HeapObject*, int, int, v8::internal::MarkingVisitor<(v8::internal::FixedArrayVisitationMode)1, (v8::internal::TraceRetainingPathMode)1, v8::internal::IncrementalMarkingState>*)
5 0.1% 0.1% t v8::internal::CompactionSpace::is_local()
5 0.1% 0.1% T node::TTYWrap::New(v8::FunctionCallbackInfo<v8::Value> const&)
3 0.0% 0.0% t void v8::internal::Worklist<v8::internal::HeapObject*, 64>::Update<v8::internal::IncrementalMarking::UpdateMarkingWorklistAfterScavenge()::$_0>(v8::internal::IncrementalMarking::UpdateMarkingWorklistAfterScavenge()::$_0)
3 0.0% 0.0% T v8::internal::Bitmap::Clear()
3 0.0% 0.0% T __platform_memcmp
2 0.0% 0.0% t void v8::internal::Page::ForAllFreeListCategories<v8::internal::PagedSpace::UnlinkFreeListCategories(v8::internal::Page*)::'lambda'(v8::internal::FreeListCategory*)>(v8::internal::PagedSpace::UnlinkFreeListCategories(v8::internal::Page*)::'lambda'(v8::internal::FreeListCategory*))
2 0.0% 0.0% t void v8::internal::BodyDescriptorApply<v8::internal::CallIterateBody, void, v8::internal::Map*, v8::internal::HeapObject*, int, v8::internal::PointersUpdatingVisitor*>(v8::internal::InstanceType, v8::internal::Map*, v8::internal::HeapObject*, int, v8::internal::PointersUpdatingVisitor*)
2 0.0% 0.0% t v8::internal::ParserBase<v8::internal::Parser>::ParseExpressionOrLabelledStatement(v8::internal::ZoneList<v8::internal::AstRawString const*>*, v8::internal::AllowLabelledFunctionStatement, bool*)
2 0.0% 0.0% t node::GetInternalBinding(v8::FunctionCallbackInfo<v8::Value> const&)
2 0.0% 0.0% t node::GetBinding(v8::FunctionCallbackInfo<v8::Value> const&)
2 0.0% 0.0% T v8::internal::compiler::Graph::NewNode(v8::internal::compiler::Operator const*, int, v8::internal::compiler::Node* const*, bool)
2 0.0% 0.0% T v8::internal::Sweeper::RawSweep(v8::internal::Page*, v8::internal::Sweeper::FreeListRebuildingMode, v8::internal::FreeSpaceTreatmentMode)
2 0.0% 0.0% T v8::internal::SerializerDeserializer::Iterate(v8::internal::Isolate*, v8::internal::RootVisitor*)
2 0.0% 0.0% T v8::internal::Scavenger::ScavengePage(v8::internal::MemoryChunk*)
2 0.0% 0.0% T v8::internal::CancelableTaskManager::TryAbort(unsigned long long)
1 0.0% 0.0% t v8::internal::compiler::ScheduleEarlyNodeVisitor::PropagateMinimumPositionToNode(v8::internal::compiler::BasicBlock*, v8::internal::compiler::Node*)
1 0.0% 0.0% t v8::internal::compiler::RepresentationSelector::VisitNode(v8::internal::compiler::Node*, v8::internal::compiler::Truncation, v8::internal::compiler::SimplifiedLowering*)
1 0.0% 0.0% t v8::internal::compiler::(anonymous namespace)::SourcePositionWrapper::Reduce(v8::internal::compiler::Node*)
1 0.0% 0.0% t v8::internal::Worklist<v8::internal::HeapObject*, 64>::Pop(int, v8::internal::HeapObject**)
1 0.0% 0.0% t v8::internal::RecordMigratedSlotVisitor::RecordMigratedSlot(v8::internal::HeapObject*, v8::internal::MaybeObject*, unsigned long)
1 0.0% 0.0% t v8::internal::ParserBase<v8::internal::PreParser>::ParsePrimaryExpression(bool*, bool*)
1 0.0% 0.0% t v8::internal::ParserBase<v8::internal::Parser>::ParseExpressionCoverGrammar(bool, bool*)
1 0.0% 0.0% t v8::internal::ParserBase<v8::internal::Parser>::ParseAssignmentExpression(bool, bool*)
1 0.0% 0.0% t v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<false>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, v8::internal::BuiltinArguments)
1 0.0% 0.0% t v8::internal::MarkCompactCollector::RootMarkingVisitor::VisitRootPointer(v8::internal::Root, char const*, v8::internal::Object**)
1 0.0% 0.0% t v8::internal::LocalAllocator::NewLocalAllocationBuffer()
1 0.0% 0.0% t v8::internal::KeywordOrIdentifierToken(unsigned char const*, int)
1 0.0% 0.0% t v8::internal::InternalizedStringTableCleaner::VisitPointers(v8::internal::HeapObject*, v8::internal::Object**, v8::internal::Object**)
1 0.0% 0.0% t v8::internal::BufferedCharacterStream<unsigned char, v8::internal::OnHeapStream>::ReadBlock()
1 0.0% 0.0% t v8::internal::AddFunctionAndCode(v8::internal::SharedFunctionInfo*, v8::internal::AbstractCode*, v8::internal::Handle<v8::internal::SharedFunctionInfo>*, v8::internal::Handle<v8::internal::AbstractCode>*, int)
1 0.0% 0.0% t v8::internal::(anonymous namespace)::ElementsAccessorBase<v8::internal::(anonymous namespace)::FastHoleySmiElementsAccessor, v8::internal::(anonymous namespace)::ElementsKindTraits<(v8::internal::ElementsKind)1> >::GetEntryForIndex(v8::internal::Isolate*, v8::internal::JSObject*, v8::internal::FixedArrayBase*, unsigned int)
1 0.0% 0.0% t v8::CallGCCallbackWithoutData(v8::Isolate*, v8::GCType, v8::GCCallbackFlags, void*)
1 0.0% 0.0% t std::__1::vector<std::__1::locale::facet*, std::__1::__sso_allocator<std::__1::locale::facet*, 28ul> >::deallocate()
1 0.0% 0.0% t std::__1::basic_ostream<char, std::__1::char_traits<char> >::operator<<(long)
1 0.0% 0.0% t std::__1::basic_ostream<char, std::__1::char_traits<char> >::flush()
1 0.0% 0.0% t node::fs::InternalModuleStat(v8::FunctionCallbackInfo<v8::Value> const&)
1 0.0% 0.0% t node::(anonymous namespace)::SignalWrap::Start(v8::FunctionCallbackInfo<v8::Value> const&)
1 0.0% 0.0% t _mvm_deallocate_pages
1 0.0% 0.0% t _mvm_allocate_pages_securely
1 0.0% 0.0% t _mvm_allocate_pages
1 0.0% 0.0% T void v8::internal::EvacuateVisitorBase::RawMigrateObject<(v8::internal::EvacuateVisitorBase::MigrationMode)1>(v8::internal::EvacuateVisitorBase*, v8::internal::HeapObject*, v8::internal::HeapObject*, int, v8::internal::AllocationSpace)
1 0.0% 0.0% T v8::internal::interpreter::Register::FromParameterIndex(int, int)
1 0.0% 0.0% T v8::internal::interpreter::BytecodeRegisterOptimizer::RegisterTransfer(v8::internal::interpreter::BytecodeRegisterOptimizer::RegisterInfo*, v8::internal::interpreter::BytecodeRegisterOptimizer::RegisterInfo*)
1 0.0% 0.0% T v8::internal::interpreter::BytecodeRegisterOptimizer::Flush()
1 0.0% 0.0% T v8::internal::interpreter::BytecodeArrayWriter::EmitBytecode(v8::internal::interpreter::BytecodeNode const*)
1 0.0% 0.0% T v8::internal::compiler::Schedule::AddNode(v8::internal::compiler::BasicBlock*, v8::internal::compiler::Node*)
1 0.0% 0.0% T v8::internal::compiler::PipelineCompilationJob::RegisterWeakObjectsInOptimizedCode(v8::internal::Handle<v8::internal::Code>, v8::internal::Isolate*)
1 0.0% 0.0% T v8::internal::compiler::ParameterIndexOf(v8::internal::compiler::Operator const*)
1 0.0% 0.0% T v8::internal::compiler::OperatorProperties::HasFrameStateInput(v8::internal::compiler::Operator const*)
1 0.0% 0.0% T v8::internal::compiler::Operator::Operator(unsigned short, v8::base::Flags<v8::internal::compiler::Operator::Property, unsigned char>, char const*, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long)
1 0.0% 0.0% T v8::internal::compiler::Node::New(v8::internal::Zone*, unsigned int, v8::internal::compiler::Operator const*, int, v8::internal::compiler::Node* const*, bool)
1 0.0% 0.0% T v8::internal::compiler::LiveRangeBuilder::Define(v8::internal::compiler::LifetimePosition, v8::internal::compiler::InstructionOperand*, void*, v8::internal::compiler::UsePositionHintType)
1 0.0% 0.0% T v8::internal::compiler::Linkage::NeedsFrameStateInput(v8::internal::Runtime::FunctionId)
1 0.0% 0.0% T v8::internal::compiler::JSInliningHeuristic::Reduce(v8::internal::compiler::Node*)
1 0.0% 0.0% T v8::internal::compiler::InstructionSelector::VisitWord32Equal(v8::internal::compiler::Node*)
1 0.0% 0.0% T v8::internal::compiler::InstructionSelector::VisitBlock(v8::internal::compiler::BasicBlock*)
1 0.0% 0.0% T v8::internal::compiler::CommonOperatorReducer::Reduce(v8::internal::compiler::Node*)
1 0.0% 0.0% T v8::internal::compiler::BytecodeGraphBuilder::MakeNode(v8::internal::compiler::Operator const*, int, v8::internal::compiler::Node* const*, bool)
1 0.0% 0.0% T v8::internal::compiler::BytecodeAnalysis::IsLoopHeader(int) const
1 0.0% 0.0% T v8::internal::Zone::NewExpand(unsigned long)
1 0.0% 0.0% T v8::internal::StringTable::LookupKey(v8::internal::Isolate*, v8::internal::StringTableKey*)
1 0.0% 0.0% T v8::internal::StoreBuffer::FlipStoreBuffers()
1 0.0% 0.0% T v8::internal::StackFrameIteratorBase::StackFrameIteratorBase(v8::internal::Isolate*, bool)
1 0.0% 0.0% T v8::internal::StackFrameIterator::Advance()
1 0.0% 0.0% T v8::internal::Scope::AllowsLazyParsingWithoutUnresolvedVariables(v8::internal::Scope const*) const
1 0.0% 0.0% T v8::internal::RootScavengeVisitor::VisitRootPointers(v8::internal::Root, char const*, v8::internal::Object**, v8::internal::Object**)
1 0.0% 0.0% T v8::internal::RootScavengeVisitor::VisitRootPointer(v8::internal::Root, char const*, v8::internal::Object**)
1 0.0% 0.0% T v8::internal::Profiler::Engage()
1 0.0% 0.0% T v8::internal::PagedSpace::TearDown()
1 0.0% 0.0% T v8::internal::PagedSpace::SizeOfObjects()
1 0.0% 0.0% T v8::internal::PagedSpace::RemovePage(v8::internal::Page*)
1 0.0% 0.0% T v8::internal::PagedSpace::PagedSpace(v8::internal::Heap*, v8::internal::AllocationSpace, v8::internal::Executability)
1 0.0% 0.0% T v8::internal::PagedSpace::AddPage(v8::internal::Page*)
1 0.0% 0.0% T v8::internal::OFStreamBase::sync()
1 0.0% 0.0% T v8::internal::MarkCompactCollector::StartSweepSpace(v8::internal::PagedSpace*)
1 0.0% 0.0% T v8::internal::LookupIterator::PrepareTransitionToDataProperty(v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes, v8::internal::Object::StoreFromKeyed)
1 0.0% 0.0% T v8::internal::Log::MessageBuilder& v8::internal::Log::MessageBuilder::operator<<<v8::internal::LogSeparator>(v8::internal::LogSeparator)
1 0.0% 0.0% T v8::internal::ItemParallelJob::Task::~Task()
1 0.0% 0.0% T v8::internal::InnerPointerToCodeCache::GetCacheEntry(unsigned long)
1 0.0% 0.0% T v8::internal::Heap::ReserveSpace(std::__1::vector<v8::internal::Heap::Chunk, std::__1::allocator<v8::internal::Heap::Chunk> >*, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> >*)
1 0.0% 0.0% T v8::internal::Heap::CreateFillerObjectAt(unsigned long, int, v8::internal::ClearRecordedSlots, v8::internal::ClearFreedMemoryMode)
1 0.0% 0.0% T v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment)
1 0.0% 0.0% T v8::internal::GlobalHandles::UpdateListOfNewSpaceNodes()
1 0.0% 0.0% T v8::internal::GlobalHandles::MarkNewSpaceWeakUnmodifiedObjectsPending(bool (*)(v8::internal::Heap*, v8::internal::Object**))
1 0.0% 0.0% T v8::internal::GlobalHandles::InvokeSecondPassPhantomCallbacks()
1 0.0% 0.0% T v8::internal::GlobalHandles::DispatchPendingPhantomCallbacks(bool)
1 0.0% 0.0% T v8::internal::GCTracer::Start(v8::internal::GarbageCollector, v8::internal::GarbageCollectionReason, char const*)
1 0.0% 0.0% T v8::internal::GCTracer::NewSpaceAllocationThroughputInBytesPerMillisecond(double) const
1 0.0% 0.0% T v8::internal::GCTracer::CurrentOldGenerationAllocationThroughputInBytesPerMillisecond() const
1 0.0% 0.0% T v8::internal::Factory::NewStruct(v8::internal::InstanceType, v8::internal::PretenureFlag)
1 0.0% 0.0% T v8::internal::Factory::InitializeMap(v8::internal::Map*, v8::internal::InstanceType, int, v8::internal::ElementsKind, int)
1 0.0% 0.0% T v8::internal::ExitFrame::Iterate(v8::internal::RootVisitor*) const
1 0.0% 0.0% T v8::internal::ConcurrentMarking::ClearLiveness(v8::internal::MemoryChunk*)
1 0.0% 0.0% T v8::internal::Compiler::Compile(v8::internal::Handle<v8::internal::SharedFunctionInfo>, v8::internal::Compiler::ClearExceptionFlag)
1 0.0% 0.0% T v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.0% 0.0% T v8::internal::ArrayBufferTracker::ProcessBuffers(v8::internal::Page*, v8::internal::ArrayBufferTracker::ProcessingMode)
1 0.0% 0.0% T v8::internal::AccountingAllocator::GetSegment(unsigned long)
1 0.0% 0.0% T v8::internal::Accessors::FunctionPrototypeGetter(v8::Local<v8::Name>, v8::PropertyCallbackInfo<v8::Value> const&)
1 0.0% 0.0% T v8::base::OS::GetRandomMmapAddr()
1 0.0% 0.0% T std::__1::__num_get<char>::__stage2_int_prep(std::__1::ios_base&, char*, char&)
1 0.0% 0.0% T node::NodePlatform::MonotonicallyIncreasingTime()
1 0.0% 0.0% T node::EnvGetter(v8::Local<v8::Name>, v8::PropertyCallbackInfo<v8::Value> const&)
1 0.0% 0.0% T _malloc_set_zone_name
1 0.0% 0.0% T _mach_vm_map
1 0.0% 0.0% T _mach_msg_server_once
1 0.0% 0.0% T _freopen
1 0.0% 0.0% T _fputws_l
1 0.0% 0.0% T _fputwc
1 0.0% 0.0% T __pthread_set_self
1 0.0% 0.0% T ___getdirentries64
[Summary]:
ticks total nonlib name
1660 24.4% 24.4% JavaScript
5095 74.9% 75.0% C++
4004 58.8% 59.0% GC
14 0.2% Shared libraries
37 0.5% Unaccounted
[C++ entry points]:
ticks cpp total name
201 18.7% 3.0% T v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*)
191 17.7% 2.8% T v8::internal::Isolate::RunMicrotasks()
147 13.6% 2.2% T __kernelrpc_vm_remap
87 8.1% 1.3% t _uv__hrtime
69 6.4% 1.0% T v8::internal::Map::FindRootMap(v8::internal::Isolate*) const
60 5.6% 0.9% T v8::Value::IsExternal() const
49 4.5% 0.7% T v8::Isolate::SuppressMicrotaskExecutionScope::~SuppressMicrotaskExecutionScope()
43 4.0% 0.6% T v8::Isolate::SuppressMicrotaskExecutionScope::SuppressMicrotaskExecutionScope(v8::Isolate*)
37 3.4% 0.5% T _uv_update_time
25 2.3% 0.4% t node::(anonymous namespace)::GetLibuvNow(v8::FunctionCallbackInfo<v8::Value> const&)
20 1.9% 0.3% T v8::Integer::NewFromUnsigned(v8::Isolate*, unsigned int)
17 1.6% 0.2% T node::Environment::GetNow()
16 1.5% 0.2% T v8::internal::Runtime_CompileLazy(int, v8::internal::Object**, v8::internal::Isolate*)
16 1.5% 0.2% T _uv_now
15 1.4% 0.2% T v8::External::Value() const
13 1.2% 0.2% T v8::internal::IncrementalMarking::RecordWriteSlow(v8::internal::HeapObject*, v8::internal::HeapObjectReference**, v8::internal::Object*)
11 1.0% 0.2% T v8::internal::Runtime_CompileForOnStackReplacement(int, v8::internal::Object**, v8::internal::Isolate*)
10 0.9% 0.1% T v8::Isolate::RunMicrotasks()
9 0.8% 0.1% T v8::internal::Runtime_InterpreterDeserializeLazy(int, v8::internal::Object**, v8::internal::Isolate*)
9 0.8% 0.1% T v8::internal::Runtime_CompileOptimized_Concurrent(int, v8::internal::Object**, v8::internal::Isolate*)
7 0.6% 0.1% T node::RunMicrotasks(v8::FunctionCallbackInfo<v8::Value> const&)
4 0.4% 0.1% T v8::internal::Runtime_AllocateInNewSpace(int, v8::internal::Object**, v8::internal::Isolate*)
4 0.4% 0.1% T _vm_read
3 0.3% 0.0% T v8::internal::Runtime_KeyedStoreIC_Miss(int, v8::internal::Object**, v8::internal::Isolate*)
2 0.2% 0.0% T v8::internal::Runtime_StoreIC_Miss(int, v8::internal::Object**, v8::internal::Isolate*)
2 0.2% 0.0% T v8::internal::Runtime_NewObject(int, v8::internal::Object**, v8::internal::Isolate*)
2 0.2% 0.0% T v8::internal::Runtime_LoadIC_Miss(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.1% 0.0% t _mvm_allocate_pages
1 0.1% 0.0% T v8::internal::StoreBuffer::FlipStoreBuffers()
1 0.1% 0.0% T v8::internal::Runtime_StackGuard(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.1% 0.0% T v8::internal::Runtime_NotifyDeoptimized(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.1% 0.0% T v8::internal::Runtime_MapGrow(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.1% 0.0% T v8::internal::Runtime_DeserializeLazy(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.1% 0.0% T v8::internal::Runtime_CreateObjectLiteral(int, v8::internal::Object**, v8::internal::Isolate*)
1 0.1% 0.0% T ___getdirentries64
[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
3070 45.1% T _mach_vm_purgable_control
677 9.9% LazyCompile: *listOnTimeout timers.js:262:23
677 100.0% LazyCompile: ~processTimers timers.js:243:23
402 5.9% t v8::internal::Scavenger::ScavengeObject(v8::internal::HeapObjectReference**, v8::internal::HeapObject*)
379 5.6% LazyCompile: *main /Users/Jeremiah/Documents/node/benchmark/timers/timers-timeout-pooled.js:11:14
379 100.0% LazyCompile: ~Benchmark.process.nextTick /Users/Jeremiah/Documents/node/benchmark/common.js:34:22
379 100.0% LazyCompile: ~_tickCallback internal/process/next_tick.js:41:25
379 100.0% LazyCompile: ~Module.runMain internal/modules/cjs/loader.js:733:26
379 100.0% LazyCompile: ~startup internal/bootstrap/node.js:31:19
379 100.0% Script: ~bootstrapNodeJSCore internal/bootstrap/node.js:15:30
191 2.8% T v8::internal::Isolate::RunMicrotasks()
191 100.0% LazyCompile: *_tickCallback internal/process/next_tick.js:41:25
191 100.0% LazyCompile: *listOnTimeout timers.js:262:23
191 100.0% LazyCompile: ~processTimers timers.js:243:23
160 2.4% T node::SyncProcessRunner::Spawn(v8::FunctionCallbackInfo<v8::Value> const&)
160 100.0% T v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*)
160 100.0% LazyCompile: ~spawnSync internal/child_process.js:967:19
160 100.0% LazyCompile: ~spawnSync child_process.js:555:19
153 95.6% LazyCompile: ~AutocannonBenchmarker /Users/Jeremiah/Documents/node/benchmark/_http-benchmarkers.js:14:14
153 100.0% Script: ~<anonymous> /Users/Jeremiah/Documents/node/benchmark/_http-benchmarkers.js:1:11
5 3.1% LazyCompile: ~WrkBenchmarker /Users/Jeremiah/Documents/node/benchmark/_http-benchmarkers.js:50:14
5 100.0% Script: ~<anonymous> /Users/Jeremiah/Documents/node/benchmark/_http-benchmarkers.js:1:11
2 1.3% LazyCompile: ~H2LoadBenchmarker /Users/Jeremiah/Documents/node/benchmark/_http-benchmarkers.js:119:14
2 100.0% Script: ~<anonymous> /Users/Jeremiah/Documents/node/benchmark/_http-benchmarkers.js:1:11
147 2.2% T __kernelrpc_vm_remap
147 100.0% LazyCompile: *main /Users/Jeremiah/Documents/node/benchmark/timers/timers-timeout-pooled.js:11:14
147 100.0% LazyCompile: ~Benchmark.process.nextTick /Users/Jeremiah/Documents/node/benchmark/common.js:34:22
147 100.0% LazyCompile: ~_tickCallback internal/process/next_tick.js:41:25
147 100.0% LazyCompile: ~Module.runMain internal/modules/cjs/loader.js:733:26
147 100.0% LazyCompile: ~startup internal/bootstrap/node.js:31:19
139 2.0% Builtin: CallApiCallback_Argc0
47 33.8% LazyCompile: ~Benchmark.process.nextTick /Users/Jeremiah/Documents/node/benchmark/common.js:34:22
47 100.0% LazyCompile: ~_tickCallback internal/process/next_tick.js:41:25
47 100.0% LazyCompile: ~Module.runMain internal/modules/cjs/loader.js:733:26
47 100.0% LazyCompile: ~startup internal/bootstrap/node.js:31:19
47 100.0% Script: ~bootstrapNodeJSCore internal/bootstrap/node.js:15:30
44 31.7% LazyCompile: *_tickCallback internal/process/next_tick.js:41:25
44 100.0% LazyCompile: *listOnTimeout timers.js:262:23
44 100.0% LazyCompile: ~processTimers timers.js:243:23
39 28.1% LazyCompile: *main /Users/Jeremiah/Documents/node/benchmark/timers/timers-timeout-pooled.js:11:14
39 100.0% LazyCompile: ~Benchmark.process.nextTick /Users/Jeremiah/Documents/node/benchmark/common.js:34:22
39 100.0% LazyCompile: ~_tickCallback internal/process/next_tick.js:41:25
39 100.0% LazyCompile: ~Module.runMain internal/modules/cjs/loader.js:733:26
39 100.0% LazyCompile: ~startup internal/bootstrap/node.js:31:19
9 6.5% LazyCompile: *listOnTimeout timers.js:262:23
9 100.0% LazyCompile: ~processTimers timers.js:243:23
113 1.7% LazyCompile: *remove internal/linkedlist.js:15:16
113 100.0% LazyCompile: *listOnTimeout timers.js:262:23
113 100.0% LazyCompile: ~processTimers timers.js:243:23
106 1.6% LazyCompile: *_tickCallback internal/process/next_tick.js:41:25
106 100.0% LazyCompile: *listOnTimeout timers.js:262:23
106 100.0% LazyCompile: ~processTimers timers.js:243:23
87 1.3% t _uv__hrtime
87 100.0% LazyCompile: *main /Users/Jeremiah/Documents/node/benchmark/timers/timers-timeout-pooled.js:11:14
87 100.0% LazyCompile: ~Benchmark.process.nextTick /Users/Jeremiah/Documents/node/benchmark/common.js:34:22
87 100.0% LazyCompile: ~_tickCallback internal/process/next_tick.js:41:25
87 100.0% LazyCompile: ~Module.runMain internal/modules/cjs/loader.js:733:26
87 100.0% LazyCompile: ~startup internal/bootstrap/node.js:31:19
74 1.1% t v8::internal::IterateAndScavengePromotedObjectsVisitor::HandleSlot(v8::internal::HeapObject*, unsigned long, v8::internal::HeapObject*)
69 1.0% T v8::internal::Map::FindRootMap(v8::internal::Isolate*) const
69 100.0% LazyCompile: *main /Users/Jeremiah/Documents/node/benchmark/timers/timers-timeout-pooled.js:11:14
69 100.0% LazyCompile: ~Benchmark.process.nextTick /Users/Jeremiah/Documents/node/benchmark/common.js:34:22
69 100.0% LazyCompile: ~_tickCallback internal/process/next_tick.js:41:25
69 100.0% LazyCompile: ~Module.runMain internal/modules/cjs/loader.js:733:26
69 100.0% LazyCompile: ~startup internal/bootstrap/node.js:31:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment