Pastie now auto-senses if line-wrap is a bad or good idea. Feedback?
## mark a section (Learn more)
## before gauss:rubinius brian$ bin/rbx prof.rb % cumulative self self total time seconds seconds calls ms/call ms/call name ---------------------------------------------------------- 25.19 2.06 0.00 201 0.00 10.24 #toplevel 24.93 2.04 0.00 200 0.01 10.18 Object#work 24.92 2.04 0.01 200 0.03 10.18 Kernel#sleep 24.76 2.02 2.02 200 10.11 10.11 Channel#receive_timeout 0.12 0.01 0.00 1 0.00 10.12 Integer#times 0.05 0.00 0.00 400 0.01 0.01 Process.time 0.02 0.00 0.00 200 0.01 0.01 Channel.new 0.01 0.00 0.00 200 0.00 0.00 Bignum#- 0.00 0.00 0.00 202 0.00 0.00 Kernel#kind_of? 0.00 0.00 0.00 1 0.01 0.11 Rubinius.add_defn_method 0.00 0.00 0.00 200 0.00 0.00 Kernel#equal? 0.00 0.00 0.00 1 0.03 0.07 Rubinius.add_method 0.00 0.00 0.00 2 0.01 0.02 Kernel#respond_to? 0.00 0.00 0.00 1 0.01 0.01 VM.reset_method_cache 0.00 0.00 0.00 1 0.01 0.01 MethodTable#[]= 0.00 0.00 0.00 1 0.01 0.01 Class#new 0.00 0.00 0.00 2 0.00 0.00 Symbol#to_sym 0.00 0.00 0.00 1 0.00 0.00 LookupTable#[]= 0.00 0.00 0.00 1 0.00 0.00 Visibility#initialize 0.00 0.00 0.00 2 0.00 0.00 Kernel#prim_respond_to? 0.00 0.00 0.00 1 0.00 0.00 Class#allocate 0.00 0.00 0.00 1 0.00 0.00 Module#method_table 0.00 0.00 0.00 1 0.00 0.00 StaticScope#for_method_definition 0.00 0.00 0.00 1 0.00 0.00 Rubinius::Profiler::Instrumenter#__stop__ 0.00 0.00 0.00 1 0.00 0.00 Rubinius::Profiler::Instrumenter#stop ## after gauss:rubinius brian$ bin/rbx prof.rb % cumulative self self total time seconds seconds calls ms/call ms/call name ---------------------------------------------------------- 25.19 2.06 0.00 201 0.00 10.23 #toplevel 24.93 2.03 0.00 200 0.00 10.17 Object#work 24.92 2.03 0.01 200 0.03 10.17 Kernel#sleep 24.76 2.02 2.02 200 10.11 10.11 Channel#receive_timeout 0.13 0.01 0.00 1 0.00 10.26 Integer#times 0.05 0.00 0.00 400 0.01 0.01 Process.time 0.01 0.00 0.00 200 0.01 0.01 Channel.new 0.01 0.00 0.00 200 0.00 0.00 Bignum#- 0.00 0.00 0.00 202 0.00 0.00 Kernel#kind_of? 0.00 0.00 0.00 1 0.01 0.11 Rubinius.add_defn_method 0.00 0.00 0.00 200 0.00 0.00 Kernel#equal? 0.00 0.00 0.00 1 0.03 0.07 Rubinius.add_method 0.00 0.00 0.00 2 0.01 0.02 Kernel#respond_to? 0.00 0.00 0.00 1 0.02 0.02 MethodTable#[]= 0.00 0.00 0.00 1 0.01 0.01 VM.reset_method_cache 0.00 0.00 0.00 1 0.01 0.01 Class#new 0.00 0.00 0.00 2 0.00 0.00 Symbol#to_sym 0.00 0.00 0.00 1 0.00 0.00 LookupTable#[]= 0.00 0.00 0.00 2 0.00 0.00 Kernel#prim_respond_to? 0.00 0.00 0.00 1 0.00 0.00 Visibility#initialize 0.00 0.00 0.00 1 0.00 0.00 Class#allocate 0.00 0.00 0.00 1 0.00 0.00 StaticScope#for_method_definition 0.00 0.00 0.00 1 0.00 0.00 Module#method_table 0.00 0.00 0.00 1 0.00 0.00 Rubinius::Profiler::Instrumenter#__stop__ 0.00 0.00 0.00 1 0.00 0.00 Rubinius::Profiler::Instrumenter#stop
This paste will be private.
From the Design Piracy series on my blog: