HyperLogLog made thread-safe using atomic operations#17
Conversation
RegisterSet use AtomicIntegerArray and CASs for setting values.
|
I can't see much of a reason for a substantial increase in memory use but that might be a good thing to test also. You might be interested in the library http://code.google.com/p/caliper/ which has some helpful functions and guidence on robust benchmarking. I would also be curious to see how well it scales with multiple threads but I suppose performance might not be the only motivation for thread safety. |
|
Wouldn't it be better to simply keep a separate HyperLogLog accumulator per On Fri, Feb 15, 2013 at 10:14 AM, Ian Barfield notifications@github.comwrote:
|
|
Ted, it's seems reasonable. I'll try that. |
HyperLogLog and underlying RegisterSet use atomic operations, so HyperLogLog.offer() can be called from different threads.