Skip to content

Instantly share code, notes, and snippets.

@eregon
Created October 11, 2011 19:19
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 eregon/1279106 to your computer and use it in GitHub Desktop.
Save eregon/1279106 to your computer and use it in GitHub Desktop.
Theorical benchmark of `require` time when using Yura Sokolov's patch [Feature #5427] with 1.8 comparison (See https://gist.github.com/1278881)
{:run => 0, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.01,0.02,0.0,0.0,0.032387)}
{:run => 0, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.03,0.03,0.0,0.0,0.067172)}
{:run => 0, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.03,0.06,0.0,0.0,0.104158)}
{:run => 0, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.14,0.09,0.0,0.0,0.235436)}
{:run => 0, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.12,0.07,0.0,0.0,0.19548)}
{:run => 1, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.01,0.02,0.0,0.0,0.035582)}
{:run => 1, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.03,0.04,0.0,0.0,0.070765)}
{:run => 1, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.05,0.05,0.0,0.0,0.110106)}
{:run => 1, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.1,0.09,0.0,0.0,0.187559)}
{:run => 1, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.18,0.17,0.0,0.0,0.340332)}
{:run => 2, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.03,0.04,0.0,0.0,0.065518)}
{:run => 2, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.04,0.03,0.0,0.0,0.069484)}
{:run => 2, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.08,0.06,0.0,0.0,0.140839)}
{:run => 2, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.08,0.08,0.0,0.0,0.15857)}
{:run => 2, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.15,0.13,0.0,0.0,0.27459)}
{:run => 3, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.04,0.02,0.0,0.0,0.05843)}
{:run => 3, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.06,0.06,0.0,0.0,0.115708)}
{:run => 3, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.07,0.06,0.0,0.0,0.130794)}
{:run => 3, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.06,0.09,0.0,0.0,0.160015)}
{:run => 3, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.17,0.12,0.0,0.0,0.296103)}
{:run => 4, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.03,0.01,0.0,0.0,0.036171)}
{:run => 4, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.04,0.04,0.0,0.0,0.071857)}
{:run => 4, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.05,0.06,0.0,0.0,0.109924)}
{:run => 4, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.09,0.06,0.0,0.0,0.153823)}
{:run => 4, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.12,0.08,0.0,0.0,0.206013)}
{:run => 5, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.02,0.02,0.0,0.0,0.040604)}
{:run => 5, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.05,0.06,0.0,0.0,0.111789)}
{:run => 5, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.05,0.07,0.0,0.0,0.114751)}
{:run => 5, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.17,0.11,0.0,0.0,0.282139)}
{:run => 5, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.15,0.12,0.0,0.0,0.285797)}
{:run => 6, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.02,0.04,0.0,0.0,0.063438)}
{:run => 6, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.04,0.03,0.0,0.0,0.071374)}
{:run => 6, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.06,0.04,0.0,0.0,0.110109)}
{:run => 6, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.06,0.08,0.0,0.0,0.158527)}
{:run => 6, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.12,0.1,0.0,0.0,0.209321)}
{:run => 7, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.03,0.01,0.0,0.0,0.040703)}
{:run => 7, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.03,0.05,0.0,0.0,0.078634)}
{:run => 7, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.08,0.06,0.0,0.0,0.121238)}
{:run => 7, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.12,0.04,0.0,0.0,0.161693)}
{:run => 7, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.11,0.1,0.0,0.0,0.211291)}
{:run => 8, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.03,0.04,0.0,0.0,0.067661)}
{:run => 8, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.04,0.03,0.0,0.0,0.077267)}
{:run => 8, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.04,0.07,0.0,0.0,0.118073)}
{:run => 8, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.12,0.05,0.0,0.0,0.175485)}
{:run => 8, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.18,0.14,0.0,0.0,0.321683)}
{:run => 9, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.01,0.02,0.0,0.0,0.032202)}
{:run => 9, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.02,0.04,0.0,0.0,0.069046)}
{:run => 9, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.06,0.08,0.0,0.0,0.13896)}
{:run => 9, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.1,0.06,0.0,0.0,0.156234)}
{:run => 9, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.1,0.1,0.0,0.0,0.203215)}
{:run => 10, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.03,0.01,0.0,0.0,0.036718)}
{:run => 10, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.04,0.06,0.0,0.0,0.099973)}
{:run => 10, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.07,0.05,0.0,0.0,0.126293)}
{:run => 10, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.1,0.06,0.0,0.0,0.157724)}
{:run => 10, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.14,0.11,0.0,0.0,0.260741)}
{:run => 11, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.01,0.04,0.0,0.0,0.049651)}
{:run => 11, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.06,0.04,0.0,0.0,0.089104)}
{:run => 11, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.06,0.05,0.0,0.0,0.109101)}
{:run => 11, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.14,0.08,0.0,0.0,0.220389)}
{:run => 11, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.15,0.13,0.0,0.0,0.286214)}
{:run => 12, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.02,0.02,0.0,0.0,0.033843)}
{:run => 12, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.02,0.03,0.0,0.0,0.069702)}
{:run => 12, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.04,0.08,0.0,0.0,0.112025)}
{:run => 12, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.08,0.08,0.0,0.0,0.15852)}
{:run => 12, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.11,0.1,0.0,0.0,0.205281)}
{:run => 13, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.01,0.02,0.0,0.0,0.037255)}
{:run => 13, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.04,0.03,0.0,0.0,0.0741310000000001)}
{:run => 13, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.08,0.05,0.0,0.0,0.122127)}
{:run => 13, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.12,0.06,0.0,0.0,0.177301)}
{:run => 13, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.13,0.08,0.0,0.0,0.207942)}
{:run => 14, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.02,0.01,0.0,0.0,0.033262)}
{:run => 14, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.04,0.03,0.0,0.0,0.069526)}
{:run => 14, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.05,0.06,0.0,0.0,0.109435)}
{:run => 14, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.1,0.07,0.0,0.0,0.166619)}
{:run => 14, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.16,0.07,0.0,0.0,0.239404)}
{:run => 15, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.03,0.03,0.0,0.0,0.054527)}
{:run => 15, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.05,0.03,0.0,0.0,0.072297)}
{:run => 15, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.09,0.04,0.0,0.0,0.120656)}
{:run => 15, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.11,0.09,0.0,0.0,0.203561)}
{:run => 15, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.18,0.14,0.0,0.0,0.331266)}
{:run => 16, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.02,0.02,0.0,0.0,0.045544)}
{:run => 16, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.03,0.06,0.0,0.0,0.09276)}
{:run => 16, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.08,0.03,0.0,0.0,0.110668)}
{:run => 16, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.1,0.08,0.0,0.0,0.172658)}
{:run => 16, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.16,0.08,0.0,0.0,0.241474)}
{:run => 17, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.03,0.02,0.0,0.0,0.048323)}
{:run => 17, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.04,0.03,0.0,0.0,0.074382)}
{:run => 17, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.08,0.04,0.0,0.0,0.11535)}
{:run => 17, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.1,0.05,0.0,0.0,0.162899)}
{:run => 17, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.19,0.17,0.0,0.0,0.36123)}
{:run => 18, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.03,0.02,0.0,0.0,0.04929)}
{:run => 18, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.04,0.04,0.0,0.0,0.078717)}
{:run => 18, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.1,0.03,0.0,0.0,0.122601)}
{:run => 18, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.19,0.05,0.0,0.0,0.240481)}
{:run => 18, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.13,0.12,0.0,0.0,0.255931)}
{:run => 19, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 670, :tms => Viiite::Tms(0.03,0.02,0.0,0.0,0.054706)}
{:run => 19, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1170, :tms => Viiite::Tms(0.08,0.04,0.0,0.0,0.12172)}
{:run => 19, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 1670, :tms => Viiite::Tms(0.11,0.1,0.0,0.0,0.217335)}
{:run => 19, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2170, :tms => Viiite::Tms(0.09,0.08,0.0,0.0,0.172364)}
{:run => 19, :bench => :require, :ruby => "ruby 1.8.7p352", :size => 2670, :tms => Viiite::Tms(0.13,0.08,0.0,0.0,0.210969)}
$ viiite report -h --regroup=ruby,size
+-----------------------+-------------------------------------------------------+
| :ruby | :measure |
+-----------------------+-------------------------------------------------------+
| ruby 1.8.7p352 | +-------+----------+----------+----------+----------+ |
| | | :size | :user | :system | :total | :real | |
| | +-------+----------+----------+----------+----------+ |
| | | 670 | 0.023000 | 0.022500 | 0.045500 | 0.045791 | |
| | | 1170 | 0.041000 | 0.040000 | 0.081000 | 0.082270 | |
| | | 1670 | 0.066500 | 0.057000 | 0.123500 | 0.123227 | |
| | | 2170 | 0.108500 | 0.072500 | 0.181000 | 0.183100 | |
| | | 2670 | 0.144000 | 0.110500 | 0.254500 | 0.257214 | |
| | +-------+----------+----------+----------+----------+ |
| ruby 1.9.4dev | +-------+----------+----------+----------+----------+ |
| | | :size | :user | :system | :total | :real | |
| | +-------+----------+----------+----------+----------+ |
| | | 675 | 0.058000 | 0.024000 | 0.082000 | 0.083125 | |
| | | 1175 | 0.138500 | 0.042500 | 0.181000 | 0.180001 | |
| | | 1675 | 0.239500 | 0.056000 | 0.295500 | 0.298070 | |
| | | 2175 | 0.334000 | 0.069000 | 0.403000 | 0.404917 | |
| | | 2675 | 0.473000 | 0.094500 | 0.567500 | 0.577599 | |
| | +-------+----------+----------+----------+----------+ |
| ruby 1.9.4dev patched | +-------+----------+----------+----------+----------+ |
| | | :size | :user | :system | :total | :real | |
| | +-------+----------+----------+----------+----------+ |
| | | 675 | 0.015000 | 0.021000 | 0.036000 | 0.035654 | |
| | | 1175 | 0.021000 | 0.032500 | 0.053500 | 0.052941 | |
| | | 1675 | 0.041500 | 0.038500 | 0.080000 | 0.080769 | |
| | | 2175 | 0.055500 | 0.055500 | 0.111000 | 0.110107 | |
| | | 2675 | 0.072500 | 0.066500 | 0.139000 | 0.141477 | |
| | +-------+----------+----------+----------+----------+ |
+-----------------------+-------------------------------------------------------+
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment