As you can probably tell by my recent posts, today is international parallel data structure selection day!
I'm off to my next questions... how parallel operations are supported in concurrent_hash_map. Specifically, what complexity guarantees are there in place for the various operations. Also, whether or not these complexities vary with the number of processors.
A lot of the container documentation mentions concurrent access, but I find the docs a bit lacking with regards to how this concurrency is implemented. I'm evaluating the overall complexity of some of my algorithms, and this information would be invaluable to design at this point.
Basically I am looking for something where I can find the smallest element in short order, insert data in parallel (as in without mutexes)... and basically have as many aspects of the thing operating in parallel... of course this might only be required if the size of the container exceeds a certain boundary.
I just printed a paper on parallel priority queues which I'll be looking at, as they compare to serial implementations.
Thanks for your help everyone.