On Feb 9, 2012, at 2:17 PM, Sean Kelly wrote:
Best first order optimization would be to allocate the list node deterministically.
Neat idea. I think I can make that change fairly trivially.
$ time abc
real 0m0.556s
user 0m0.555s
sys 0m0.001s
So another 100ms improvement. Switching to a (__gshared, no mutex) free-list that falls back on malloc yields:
$ time abc
real 0m0.505s
user 0m0.503s
sys 0m0.001s
Not as much of a gain there, and I believe we've eliminated all the allocations (though I'd have to do a pile build to verify). Still, that's approaching being twice as fast as before, which is definitely something.