-
Notifications
You must be signed in to change notification settings - Fork 347
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Andrewnguyen/caliper integrate Caliper, n #248
Andrewnguyen/caliper integrate Caliper, n #248
Conversation
@@ -385,6 +386,72 @@ class HyperLogLogMonoid(val bits : Int) extends Monoid[HLL] { | |||
} | |||
} | |||
|
|||
class HyperLogLogMonoid2(bits: Int) extends HyperLogLogMonoid(bits) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Scaladoc public classes and methods? Especially "j"...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"j" shouldn't really be public since it's pretty much internal to the workings of HyperLogLogs but sure.
@@ -56,6 +73,49 @@ object HyperLogLog { | |||
|
|||
def twopow(i : Int) : Double = scala.math.pow(2.0, i) | |||
|
|||
/** the value 'j' is equal to <w_0, w_1 ... w_(bits-1)> */ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
add a TODO: we could read a byte at a time while bits >= 8, and that would be faster.
SUPER EXCITED! Nice work! Way to find a bottleneck and hammer it down! |
Andrewnguyen/caliper integrate Caliper, n
Sort of a big PR:
Example run:
NOTE: I took a few bits of code from https://github.com/sirthias/scala-benchmarking-template. We should wait on merging in until the licensing situation is clear. Also, it'd be nice if someone can double check I have all the necessary attributions.