????JFIF??x?x????'
| Server IP : 172.67.174.47  /  Your IP : 216.73.216.153 Web Server : LiteSpeed System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : tempvsty ( 647) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /./proc/thread-self/root/././opt/alt/ruby18/share/ri/1.8/system/Benchmark/  | 
Upload File :  | 
--- !ruby/object:RI::MethodDescription 
aliases: []
block_params: job
comment: 
- !ruby/struct:SM::Flow::P 
  body: "Sometimes benchmark results are skewed because code executed earlier encounters different garbage collection overheads than that run later. #bmbm attempts to minimize this effect by running the tests twice, the first time as a rehearsal in order to get the runtime environment stable, the second time for real. <tt>GC.start</tt> is executed before the start of each of the real timings; the cost of this is not included in the timings. In reality, though, there's only so much that #bmbm can do, and the results are not guaranteed to be isolated from garbage collection and other effects."
- !ruby/struct:SM::Flow::P 
  body: "Because #bmbm takes two passes through the tests, it can calculate the required label width."
- !ruby/struct:SM::Flow::VERB 
  body: "      require 'benchmark'\n\n      array = (1..1000000).map { rand }\n\n      Benchmark.bmbm do |x|\n        x.report("sort!") { array.dup.sort! }\n        x.report("sort")  { array.dup.sort  }\n      end\n"
- !ruby/struct:SM::Flow::P 
  body: <em>Generates:</em>
- !ruby/struct:SM::Flow::VERB 
  body: "       Rehearsal -----------------------------------------\n       sort!  11.928000   0.010000  11.938000 ( 12.756000)\n       sort   13.048000   0.020000  13.068000 ( 13.857000)\n       ------------------------------- total: 25.006000sec\n\n                   user     system      total        real\n       sort!  12.959000   0.010000  12.969000 ( 13.793000)\n       sort   12.007000   0.000000  12.007000 ( 12.791000)\n"
- !ruby/struct:SM::Flow::P 
  body: "#bmbm yields a Benchmark::Job object and returns an array of Benchmark::Tms objects."
full_name: Benchmark#bmbm
is_singleton: false
name: bmbm
params: (width = 0) {|job| ...}
visibility: public