Skip to content

Instantly share code, notes, and snippets.

@softmoth
Created August 22, 2012 16:21
Show Gist options
  • Select an option

  • Save softmoth/3427178 to your computer and use it in GitHub Desktop.

Select an option

Save softmoth/3427178 to your computer and use it in GitHub Desktop.
OS X sample of nom in infinite loop (97-99% CPU, 1 thread)
Sampling process 55493 for 3 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling perl6 (pid 55493) every 1 millisecond
Process: perl6 [55493]
Path: /Users/tim/g/code/p6/rakudo/install/bin/perl6
Load Address: 0x100000000
Identifier: perl6
Version: ??? (???)
Code Type: X86-64 (Native)
Parent Process: sh [55492]
Date/Time: 2012-08-22 10:19:31.717 -0600
OS Version: Mac OS X 10.6.8 (10K549)
Report Version: 6
Call graph:
2183 Thread_6046882 DispatchQueue_1: com.apple.main-thread (serial)
2183 start
2183 main
2183 Parrot_api_run_bytecode
2183 Parrot_pf_execute_bytecode_program
2183 Parrot_cx_begin_execution
2183 Parrot_cx_outer_runloop
2183 Parrot_ext_call
2183 Parrot_pcc_invoke_from_sig_object
2183 Parrot_Task_invoke
2183 Parrot_ext_call
2183 Parrot_pcc_invoke_from_sig_object
2177 runops
2177 runops_int
2177 runops_fast_core
2150 Parrot_Sub_invoke
2148 Parrot_ex_throw_from_c_args
2147 Parrot_ex_throw_from_c
2147 Parrot_cx_find_handler_local
2141 Parrot_cx_find_handler_local
6 Parrot_pcc_invoke_method_from_c_args
4 Parrot_pcc_build_call_from_varargs
3 Parrot_pmc_new
3 get_new_pmc_header
2 Parrot_gc_new_pmc_header
1 Parrot_gc_new_pmc_header
1 gc_gms_allocate_pmc_header
1 pool_allocate
1 gc_gms_allocate_pmc_attributes
1 __bzero
1 set_call_from_varargs
1 Parrot_CallContext_push_pmc
1 ensure_positionals_storage_ap
1 pool_allocate
1 mem_sys_allocate_zeroed
1 calloc
1 malloc_zone_calloc
1 szone_malloc_should_clear
1 __bzero
1 Parrot_pcc_fill_params_from_varargs
1 parse_signature_string
1 Parrot_pmc_new_init_int
1 Parrot_ResizableIntegerArray_init_int
1 Parrot_FixedIntegerArray_init_int
1 gc_gms_allocate_memory_chunk
1 malloc
1 malloc_zone_malloc
1 szone_malloc_should_clear
1 tiny_malloc_from_free_list
1 Parrot_pcc_invoke_from_sig_object
1 Parrot_NativePCCMethod_invoke
1 Parrot_ExceptionHandler_nci_can_handle
1 Parrot_key_next
1 strchr
1 Parrot_Perl6LexPad_set_pointer
1 Parrot_pmc_new_init
8 Parrot_can_i_p_sc
8 Parrot_SixModelObject_can
8 default_find_method
8 Parrot_pcc_invoke_from_sig_object
8 runops
8 runops_int
8 runops_fast_core
1 Parrot_defined_i_p
1 Parrot_SixModelObject_defined
1 Parrot_pcc_invoke_from_sig_object
1 runops
1 runops_int
1 runops_fast_core
1 Parrot_istrue_i_p
1 Parrot_get_params_pc
1 fill_params
1 Parrot_getattribute_p_p_sc
1 Parrot_new_p_sc
1 Parrot_pmc_new
1 get_new_pmc_header
1 Parrot_gc_new_pmc_header
1 gc_gms_allocate_pmc_header
1 Parrot_push_eh_p
1 Parrot_cx_add_handler_local
1 Parrot_repr_get_attr_obj_p_p_p_sc_ic
1 get_attribute_boxed
1 Parrot_setattribute_p_sc_p
1 runops_fast_core
6 Parrot_callmethodcc_p_sc
6 default_find_method
5 Parrot_pcc_invoke_from_sig_object
5 runops
5 runops_int
5 runops_fast_core
3 Parrot_defined_i_p
2 Parrot_SixModelObject_defined
1 Parrot_CallContext_push_pmc
1 ensure_positionals_storage_ap
1 Parrot_gc_fixed_allocator_allocate
1 Parrot_pcc_invoke_from_sig_object
1 runops
1 runops_int
1 runops_fast_core
1 Parrot_set_args_pc
1 Parrot_pcc_build_sig_object_from_op
1 Parrot_CallContext_push_pmc
1 ensure_positionals_storage_ap
1 pool_allocate
1 mem_sys_allocate_zeroed
1 calloc
1 malloc_zone_calloc
1 szone_malloc_should_clear
1 __bzero
1 Parrot_defined_i_p
1 Parrot_ex_throw_from_op
1 Parrot_cx_find_handler_local
1 Parrot_pcc_invoke_method_from_c_args
1 Parrot_pcc_invoke_from_sig_object
1 Parrot_pmc_new
1 get_new_pmc_header
1 gc_gms_allocate_pmc_attributes
1 pool_allocate
1 mem_sys_allocate_zeroed
1 calloc
1 malloc_zone_calloc
1 szone_malloc_should_clear
1 __bzero
1 Parrot_set_args_pc
1 Parrot_pcc_build_sig_object_from_op
1 Parrot_CallContext_push_pmc
1 ensure_positionals_storage_ap
1 pool_allocate
1 mem_sys_allocate_zeroed
1 calloc
1 malloc_zone_calloc
1 szone_malloc_should_clear
1 __bzero
1 default_find_method
1 Parrot_Hash_get_pmc_keyed_str
1 Parrot_hash_get_bucket
3 Parrot_new_p_sc
2 get_pmc_proxy
1 get_pmc_proxy
1 internal_ns_keyed_str
1 Parrot_NameSpace_get_pmc_keyed_str
1 Parrot_oo_get_class_str
1 Parrot_pmc_get_type_str
1 Parrot_NameSpace_get_pointer_keyed_str
1 Parrot_hash_get
1 bcmp
1 Parrot_bind_signature
1 Rakudo_binding_bind
1 Parrot_finalize_p
1 Parrot_ex_get_current_handler
1 Parrot_find_lex_p_sc
1 Parrot_sub_find_pad
1 Parrot_Perl6LexPad_exists_keyed_str
1 Parrot_hash_get_bucket
1 Parrot_newclosure_p_p
1 Parrot_sub_new_closure
1 Parrot_Sub_clone
1 Parrot_nqp_get_sc_object_p_sc_ic
1 Parrot_ResizablePMCArray_get_pmc_keyed_int
1 Parrot_peek_exception_p
1 Parrot_perl6_assert_bind_ok_p_p
1 Parrot_perl6_current_args_rpa_p
1 Parrot_ResizablePMCArray_set_pmc_keyed_int
1 Parrot_ResizablePMCArray_set_integer_native
1 Parrot_FixedPMCArray_set_integer_native
1 gc_gms_allocate_memory_chunk
1 malloc
1 malloc_zone_malloc
1 Parrot_perl6_invoke_catchhandler_p_p
1 Parrot_pmc_new
1 get_new_pmc_header
1 Parrot_set_args_pc
4 _longjmp
2 setjmp
1 setjmp
1 sigprocmask
Total number in stack (recursive counted multiple, when >=5):
8 Parrot_pcc_invoke_from_sig_object
5 __bzero
5 pool_allocate
5 runops
5 runops_fast_core
5 runops_int
5 szone_malloc_should_clear
Sort by top of stack, same collapsed (when >= 5):
Parrot_cx_find_handler_local 2141
__bzero 5
Binary Images:
0x100000000 - 0x10000efef +perl6 ??? (???) <42864C99-9BFC-D83A-2C58-5851EB0DBB91> /Users/tim/g/code/p6/rakudo/install/bin/perl6
0x100011000 - 0x1001e2ff7 +libparrot.dylib ??? (???) <0E0F0C2E-EF93-9DA5-A6D7-E35A4122326A> /Users/tim/g/code/p6/rakudo/install/lib/libparrot.dylib
0x10026e000 - 0x100272fff libutil.dylib ??? (???) <0A8C53EF-7F3B-293F-7684-7E8AA2EE0E2A> /usr/lib/libutil.dylib
0x1002ec000 - 0x1002f2ff7 +perl6_group.bundle ??? (???) <BFB69864-DB71-9371-F122-EFB833F63062> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/perl6_group.bundle
0x1002f6000 - 0x1002f9fff +io_ops.bundle ??? (???) <577C98E4-B4BB-F569-BF8D-72AF12BABDDF> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/io_ops.bundle
0x100400000 - 0x100414fff +nqp_group.bundle ??? (???) <40EADC7A-92A9-4636-E46D-B989B737F0D0> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/nqp_group.bundle
0x10041b000 - 0x100448fff +nqp_ops.bundle ??? (???) <123C7B09-645A-13CC-CD4E-FF6E6EE8F85E> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/nqp_ops.bundle
0x10045d000 - 0x100496fff +nqp_bigint_ops.bundle ??? (???) <19A7C4C2-FFD4-CCE6-EEF7-4016FD8907A6> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/nqp_bigint_ops.bundle
0x1004a8000 - 0x1004c8ff7 +perl6_ops.bundle ??? (???) <46251AA9-3D45-B1A2-731D-A59140C08FF4> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/perl6_ops.bundle
0x1007f5000 - 0x1007f8ff7 +trans_ops.bundle ??? (???) <BB3C36A5-2429-E1A8-1ADF-71F14AE017C2> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/trans_ops.bundle
0x1017ef000 - 0x1017f1ff7 +os.bundle ??? (???) <5602EB80-7604-E3AF-0E60-D48CFDE6A03C> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/os.bundle
0x1017f5000 - 0x1017f6fff +file.bundle ??? (???) <9AF302D1-49F7-C6A8-208A-3FF5B4619456> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/file.bundle
0x1017f9000 - 0x1017faff7 +obscure_ops.bundle ??? (???) <45576F28-9E9C-DB71-CD3E-5A7405A05791> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/obscure_ops.bundle
0x1022ea000 - 0x1022efff7 +bit_ops.bundle ??? (???) <C274B11F-F8F4-8D82-1F58-753942D4A426> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/bit_ops.bundle
0x1022f6000 - 0x1022f8ff7 +math_ops.bundle ??? (???) <4B83E8FD-8659-0D3C-34BF-D41509E259F8> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/math_ops.bundle
0x1022fc000 - 0x1022fdfff +sys_ops.bundle ??? (???) <AD598935-5A70-9913-6EEE-243C859C5202> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/sys_ops.bundle
0x102c2d000 - 0x102c3afff +nqp_dyncall_ops.bundle ??? (???) <595FFE34-ED76-8A99-2FED-EE3B900BC1E0> /Users/tim/g/code/p6/rakudo/install/lib/parrot/4.4.0-devel/dynext/nqp_dyncall_ops.bundle
0x7fff5fc00000 - 0x7fff5fc3bdef dyld 132.1 (???) <486E6C61-1197-CC7C-2197-82CE505102D7> /usr/lib/dyld
0x7fff82bb4000 - 0x7fff82bb8ff7 libmathCommon.A.dylib 315.0.0 (compatibility 1.0.0) <95718673-FEEE-B6ED-B127-BCDBDB60D4E5> /usr/lib/system/libmathCommon.A.dylib
0x7fff87e05000 - 0x7fff87e82fef libstdc++.6.dylib 7.9.0 (compatibility 7.0.0) <35ECA411-2C08-FD7D-11B1-1B7A04921A5C> /usr/lib/libstdc++.6.dylib
0x7fff89eac000 - 0x7fff8a06dfef libSystem.B.dylib 125.2.11 (compatibility 1.0.0) <9AB4F1D1-89DC-0E8A-DC8E-A4FE4D69DB69> /usr/lib/libSystem.B.dylib
0x7fffffe00000 - 0x7fffffe01fff libSystem.B.dylib ??? (???) <9AB4F1D1-89DC-0E8A-DC8E-A4FE4D69DB69> /usr/lib/libSystem.B.dylib
Sample analysis of process 55493 written to file /dev/stdout
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment