{"push_id":679721083,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"e63e41456aeea591b6612aba59150ed54bcee7c9","before":"797f3208bbc466a542d3025605372c12e90a2ce7","commits":[{"sha":"e63e41456aeea591b6612aba59150ed54bcee7c9","author":{"email":"474ba67bdb289c6263b36dfd8a7bed6c85b04943@aatch.net","name":"James Miller"},"message":"Add a faster multiplication algorithm for large numbers\n\nImplement Karatsuba multiplication for multiplications where the smaller\nof the two numbers has more than 20 limbs.\n\nAdds some minor functions and helpers to make this work. Also implements\nsome basic benchmarks for multiplication:\n\nBefore:\n\n    test int::test::bench_mul_1000_1000 ... bench:   1296296 ns/iter (+/- 6933)\n    test int::test::bench_mul_10_10     ... bench:       168 ns/iter (+/- 5)\n    test int::test::bench_mul_250_250   ... bench:     81613 ns/iter (+/- 1231)\n    test int::test::bench_mul_2_20      ... bench:        80 ns/iter (+/- 3)\n    test int::test::bench_mul_50_50     ... bench:      3352 ns/iter (+/- 33)\n    test int::test::bench_mul_5_50      ... bench:       362 ns/iter (+/- 7)\n\nAfter:\n\n    test int::test::bench_mul_1000_1000 ... bench:    335340 ns/iter (+/- 5455)\n    test int::test::bench_mul_10_10     ... bench:       170 ns/iter (+/- 4)\n    test int::test::bench_mul_250_250   ... bench:     35818 ns/iter (+/- 869)\n    test int::test::bench_mul_2_20      ... bench:        82 ns/iter (+/- 2)\n    test int::test::bench_mul_50_50     ... bench:      2559 ns/iter (+/- 70)\n    test int::test::bench_mul_5_50      ... bench:       368 ns/iter (+/- 32)\n\nAs you can see, smaller numbers are unaffected by the change, whereas\nlarge number see a significant performance improvement","distinct":true,"url":"https://api.github.com/repos/Aatch/ramp/commits/e63e41456aeea591b6612aba59150ed54bcee7c9"}]}