]> git.ozlabs.org Git - ccan/commit
mem: optimize.
authorRusty Russell <rusty@rustcorp.com.au>
Thu, 15 Oct 2015 04:20:34 +0000 (14:50 +1030)
committerRusty Russell <rusty@rustcorp.com.au>
Thu, 15 Oct 2015 05:14:32 +0000 (15:44 +1030)
commitb967dac8c71a2313c39910ef8ca0e1644fe178c0
tree913f169df826fa2cdf961b671f2f96dbc52e80ed
parentca2551bcedb6ebd66814a2d4fdce7494b19d9b0d
mem: optimize.

Better for larger, worse for smaller compares.

Before:
1: 3ns
2: 3ns
4: 5ns
8: 9ns
16: 11ns
32: 33ns
64: 45ns
128: 87ns
256: 157ns
512: 296ns
1024: 579ns
2048: 1139ns
4096: 2251ns
8192: 4505ns
16384: 9704ns
32768: 18482ns
65536: 36144ns
2: 4ns
3: 6ns
5: 8ns
9: 9ns
17: 12ns
33: 22ns
65: 45ns
129: 90ns
257: 175ns
513: 357ns
1025: 607ns
2049: 1204ns
4097: 2278ns
8193: 4552ns
16385: 9011ns
32769: 18405ns
65537: 36153ns
total = 599391004

After:
1: 6ns
2: 7ns
4: 7ns
8: 7ns
16: 7ns
32: 8ns
64: 9ns
128: 13ns
256: 24ns
512: 47ns
1024: 92ns
2048: 185ns
4096: 376ns
8192: 739ns
16384: 1463ns
32768: 2914ns
65536: 5800ns
2: 7ns
3: 7ns
5: 7ns
9: 7ns
17: 7ns
33: 8ns
65: 9ns
129: 20ns
257: 31ns
513: 49ns
1025: 96ns
2049: 189ns
4097: 381ns
8193: 745ns
16385: 1477ns
32769: 2930ns
65537: 5824ns
total = 599391004

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
ccan/mem/mem.c