headius (owner)

Revisions

  • 37367b headius Fri Aug 01 02:10:19 -0700 2008
  • 3dc739 headius Fri Aug 01 02:09:33 -0700 2008
  • 5bb5b1 headius Fri Aug 01 02:07:16 -0700 2008
gist: 3597 Download_button fork
public
Public Clone URL: git://gist.github.com/3597.git
Embed All Files: show embed
Text only #
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
~/NetBeansProjects/jruby ➔ cat test/bench/bench_thread_creation.rb
require 'benchmark'
 
(ARGV[0] || 10).to_i.times do
  Benchmark.bm(20) do |bm|
    bm.report('control loop') { 10_000.times { 1 } }
    bm.report('Thread.new.join loop') { 10_000.times { Thread.new { 1 }.join } }
  end
end
~/NetBeansProjects/jruby ➔ jruby --server test/bench/bench_thread_creation.rb 5
                          user system total real
control loop 0.203000 0.000000 0.203000 ( 0.202630)
Thread.new.join loop 3.196000 0.000000 3.196000 ( 3.195984)
                          user system total real
control loop 0.006000 0.000000 0.006000 ( 0.005816)
Thread.new.join loop 2.729000 0.000000 2.729000 ( 2.728205)
                          user system total real
control loop 0.002000 0.000000 0.002000 ( 0.002222)
Thread.new.join loop 1.982000 0.000000 1.982000 ( 1.981994)
                          user system total real
control loop 0.001000 0.000000 0.001000 ( 0.001320)
Thread.new.join loop 2.059000 0.000000 2.059000 ( 2.059305)
                          user system total real
control loop 0.001000 0.000000 0.001000 ( 0.001289)
Thread.new.join loop 1.955000 0.000000 1.955000 ( 1.955280)
~/NetBeansProjects/jruby ➔ jruby -J-Djruby.thread.pool.enabled=true --server test/bench/bench_thread_creation.rb 5
                          user system total real
control loop 0.179000 0.000000 0.179000 ( 0.178242)
Thread.new.join loop 1.572000 0.000000 1.572000 ( 1.573915)
                          user system total real
control loop 0.012000 0.000000 0.012000 ( 0.006952)
Thread.new.join loop 1.082000 0.000000 1.082000 ( 1.082589)
                          user system total real
control loop 0.003000 0.000000 0.003000 ( 0.003126)
Thread.new.join loop 0.580000 0.000000 0.580000 ( 0.580560)
                          user system total real
control loop 0.002000 0.000000 0.002000 ( 0.001294)
Thread.new.join loop 0.605000 0.000000 0.605000 ( 0.605378)
                          user system total real
control loop 0.003000 0.000000 0.003000 ( 0.002854)
Thread.new.join loop 0.543000 0.000000 0.543000 ( 0.542308)
~/NetBeansProjects/jruby ➔ /opt/local/bin/ruby test/bench/bench_thread_creation.rb 5
                          user system total real
control loop 0.010000 0.000000 0.010000 ( 0.002354)
Thread.new.join loop 0.260000 0.250000 0.510000 ( 0.521613)
                          user system total real
control loop 0.000000 0.000000 0.000000 ( 0.002005)
Thread.new.join loop 0.270000 0.240000 0.510000 ( 0.519673)
                          user system total real
control loop 0.000000 0.000000 0.000000 ( 0.001724)
Thread.new.join loop 0.260000 0.250000 0.510000 ( 0.519492)
                          user system total real
control loop 0.000000 0.000000 0.000000 ( 0.001570)
Thread.new.join loop 0.270000 0.240000 0.510000 ( 0.515869)
                          user system total real
control loop 0.000000 0.000000 0.000000 ( 0.001550)
Thread.new.join loop 0.260000 0.240000 0.500000 ( 0.521391)
~/NetBeansProjects/jruby ➔ ../ruby1.9/ruby -I ../ruby1.9/lib test/bench/bench_thread_creation.rb 5
                          user system total real
control loop 0.000000 0.000000 0.000000 ( 0.001757)
Thread.new.join loop 0.280000 0.570000 0.850000 ( 0.650961)
                          user system total real
control loop 0.010000 0.000000 0.010000 ( 0.001508)
Thread.new.join loop 0.280000 0.570000 0.850000 ( 0.633450)
                          user system total real
control loop 0.000000 0.000000 0.000000 ( 0.001170)
Thread.new.join loop 0.280000 0.570000 0.850000 ( 0.641375)
                          user system total real
control loop 0.000000 0.000000 0.000000 ( 0.001144)
Thread.new.join loop 0.280000 0.560000 0.840000 ( 0.642496)
                          user system total real
control loop 0.000000 0.000000 0.000000 ( 0.001233)
Thread.new.join loop 0.280000 0.570000 0.850000 ( 0.639463)
~/NetBeansProjects/jruby ➔ ../rubinius/bin/rbx test/bench/bench_thread_creation.rb 5
                          user system total real
control loop 0.002464 0.000000 0.002464 ( 0.002445)
Thread.new.join loop 27.212328 0.000000 27.212328 ( 27.212360)