Commits
Pete Cooper committed 16f6c73db9d
Use unchecked arithmetic for offsets to HeapBuffer values and elements. If these were able to overflow then we'd have already failed in the initializer of the HeapBuffer Performance numbers are being noisy, but overall there are some good wins. The losses are the noisy ones unfortunately. 2Sum , 1273.00 , 1292.00 , 19.00 , -1.5% Ackermann , 1423.00 , 1663.00 , 240.00 , -14.4% ArrayLiteral , 913.00 , 869.00 , 44.00 , 5.1% Ary , 1278.00 , 1278.00 , 0.00 , 0.0% Ary2 , 1667.00 , 1656.00 , 11.00 , 0.7% Ary3 , 1418.00 , 1380.00 , 38.00 , 2.8% DeltaBlue , 2480.00 , 2437.00 , 43.00 , 1.8% Dictionary , 606.00 , 594.00 , 12.00 , 2.0% Dictionary2 , 879.00 , 862.00 , 17.00 , 2.0% Dictionary3 , 878.00 , 871.00 , 7.00 , 0.8% EditDistance , 1427.00 , 1404.00 , 23.00 , 1.6% Fibonacci , 1351.00 , 1335.00 , 16.00 , 1.2% ForLoops , 1978.00 , 1976.00 , 2.00 , 0.1% Forest , 1091.00 , 1076.00 , 15.00 , 1.4% GlobalClass , 1714.00 , 1619.00 , 95.00 , 5.9% Hash , 971.00 , 915.00 , 56.00 , 6.1% HeapSort , 1321.00 , 1261.00 , 60.00 , 4.8% Histogram , 1085.00 , 1079.00 , 6.00 , 0.6% Life , 67.00 , 63.00 , 4.00 , 6.3% LinkedList , 1586.00 , 1535.00 , 51.00 , 3.3% MatMul , 239.00 , 240.00 , 1.00 , -0.4% Memset , 53.00 , 53.00 , 0.00 , 0.0% MonteCarloE , 1243.00 , 1242.00 , 1.00 , 0.1% MonteCarloPi , 993.00 , 1010.00 , 17.00 , -1.7% NBody , 44.00 , 43.00 , 1.00 , 2.3% Phonebook , 1416.00 , 1402.00 , 14.00 , 1.0% PrimeNum , 347.00 , 351.00 , 4.00 , -1.1% Prims , 1556.00 , 1523.00 , 33.00 , 2.2% QuickSort , 103.00 , 101.00 , 2.00 , 2.0% R17315246 , 1080.00 , 1076.00 , 4.00 , 0.4% RC4 , 26.00 , 25.00 , 1.00 , 4.0% RIPEMD , 798.00 , 767.00 , 31.00 , 4.0% Rectangles , 1008.00 , 972.00 , 36.00 , 3.7% SmallPT , 1004.00 , 1040.00 , 36.00 , -3.5% StrToInt , 795.00 , 815.00 , 20.00 , -2.5% StringBuilder , 795.00 , 858.00 , 63.00 , -7.3% StringWalk , 1233.00 , 1322.00 , 89.00 , -6.7% Totals , 38274.00 , 38145.00 , 129.00 , 0.3% Walsh , 135.00 , 140.00 , 5.00 , -3.6% Swift SVN r20569