Skip to content
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

Why is the benchmark incomplete? #12

Open
dlangdon opened this issue Nov 10, 2015 · 2 comments
Open

Why is the benchmark incomplete? #12

dlangdon opened this issue Nov 10, 2015 · 2 comments

Comments

@dlangdon
Copy link

I found it curious that you compare with 2 alternatives for performance and with java hashsets for memory usage. It would be nice to compare both performance and memory with the same 3 alternatives, else it seems you are conveniently selecting data instead of showing the right tradeoff.

@lwhite1
Copy link

lwhite1 commented Dec 10, 2015

I had a similar desire to see more details in the benchmark, and have a couple questions. If Pal is a key value store, why compare memory usage with a hashSet? Wouldn't a HashMap be a more appropriate comparison? In reading the code (TestMemoryUsageHashMap.java) it actually is a HashSet, in spite of the class name. Maybe change the name or the Collection type?

Also, I found it pretty surprising that you could put 100M integers in a hashSet, and only use 500MB of memory. That's 5 bytes per Integer, which is considerably less than the space required an Integer, even without the HashSet overhead. (Again, reading the code provided the answer. The test is for 10 M Integers, not 100 M).

Also, it's hard to judge the read performance without knowing what value was stored with each key. Obviously bigger values would tend to be slower. Apparently the value is a boolean, maybe add that to the README.md?

@dlangdon
Copy link
Author

Well, give me the same 512 MB of memory I can take an infinite number of integers and build you a set with them ;-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants