github.com/egonelbre/exp@v0.0.0-20240430123955-ed1d3aa93911/niterator/README.md (about)

     1  ```
     2  BenchmarkBasic-4                   	    5000	   2937549 ns/op	 196.08 MB/s
     3  BenchmarkInstruct-4                	    5000	   3224819 ns/op	 178.61 MB/s
     4  BenchmarkOrdone-4                  	    5000	   2876686 ns/op	 200.23 MB/s
     5  BenchmarkOnearr-4                  	    5000	   2663603 ns/op	 216.25 MB/s
     6  BenchmarkOnearrRev-4               	   10000	   2227535 ns/op	 258.58 MB/s
     7  BenchmarkOnearrRevSpecialize-4     	   10000	   1969871 ns/op	 292.40 MB/s
     8  BenchmarkPremul-4                  	    5000	   3438574 ns/op	 167.51 MB/s
     9  BenchmarkOnearrPremul-4            	    5000	   2774488 ns/op	 207.61 MB/s
    10  BenchmarkSpecialize-4              	    5000	   2568444 ns/op	 224.26 MB/s
    11  BenchmarkUnroll-4                  	   10000	   2059076 ns/op	 279.74 MB/s
    12  BenchmarkUnrollReverse-4           	   10000	   2104658 ns/op	 273.68 MB/s
    13  BenchmarkUnrollInverse-4           	   10000	   1968053 ns/op	 292.67 MB/s
    14  BenchmarkUnrollInReverse-4         	   10000	   2002197 ns/op	 287.68 MB/s
    15  BenchmarkUnrollInReverseSwitch-4   	    5000	   2521456 ns/op	 228.44 MB/s
    16  BenchmarkUnrollInReverseBool-4     	   10000	   1922431 ns/op	 299.62 MB/s
    17  ```
    18  
    19  Full table:
    20  ```
    21  go1.10beta2
    22  windows/amd64
    23  i7-2820QM CPU @ 2.30GHz
    24  
    25  name                                 3x20x40x24    24x20x40x3  24x20x40x30  5x50x100x150  150x100x50x5  100x100x100x100  Average
    26  BenchmarkUnrollInReverseHardcode     N.A           N.A         N.A          N.A           N.A           282.48           282.48
    27  BenchmarkUnrollInReverse             238.79        221.01      242.10       242.79        236.88        250.09           238.61
    28  BenchmarkUnrollInverse               238.18        208.09      226.56       258.80        213.70        253.52           233.14
    29  BenchmarkUnrollInReverseAdvance      221.97        227.76      201.82       253.53        238.25        246.09           231.57
    30  BenchmarkUnrollReverse               231.67        209.97      220.50       235.31        221.87        238.73           226.34
    31  BenchmarkOnearrRevSpecializeAdvance  228.30        228.07      240.76       241.28        162.22        231.55           222.03
    32  BenchmarkUnroll                      215.60        211.02      186.14       238.95        225.02        240.08           219.47
    33  BenchmarkOnearrRevAdvance            233.46        212.61      219.58       234.32        166.89        231.00           216.31
    34  BenchmarkOnearrRev                   229.44        198.01      222.65       240.77        149.54        237.23           212.94
    35  BenchmarkOnearrRevSpecialize         210.98        217.43      231.30       208.71        195.63        202.00           211.01
    36  BenchmarkUnrollInReverseBool         213.17        209.72      235.69       198.79        207.41        196.46           210.21
    37  BenchmarkUnrollInReverseSwitch       179.38        175.98      178.33       201.74        187.58        199.93           187.16
    38  BenchmarkOnearr                      183.30        165.18      187.66       203.35        178.98        199.00           186.25
    39  BenchmarkSpecialize                  187.10        175.33      187.67       190.53        178.58        194.64           185.64
    40  BenchmarkOnearrPremul                179.19        166.17      182.14       192.40        179.46        192.58           181.99
    41  BenchmarkBasic                       159.80        149.56      162.46       170.60        158.04        173.00           162.24
    42  BenchmarkOrdone                      169.01        148.75      162.51       174.08        142.52        173.45           161.72
    43  BenchmarkInstruct                    150.63        135.21      149.15       158.70        147.27        157.67           149.77
    44  BenchmarkPremul                      134.78        130.76      137.08       143.73        136.75        143.47           137.76
    45  ```