-
Notifications
You must be signed in to change notification settings - Fork 25
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
Parallel Write and XOF #25
Conversation
Co-authored-by: Jason E. Aten, Ph.D. <jason@devnull>
here you go. I'm not sure if its working...
|
ah, the tests changed too; trying testing |
Seems like the parallelism in XOF is backfiring:
Probably because it spawns a separate goroutine for each 1KB. I'll try switching this to at most |
Yeah that will hurt. I did a study of how much to feed each goroutine on the original PR. You can see how much the final speed depends on this. Its pretty dramatic. I've heard that Hertzner's VPS (might?!) have AVX and can be rented for $5/month. Probably worth chatting with them first to confirm. |
ok, should be better now. I explored adding a similar limit to Thanks for the tip about Hetzner, I'll look into that! |
Adds
guts.CompressEigentree
for concurrently compressing 2^n buffers.Write
also spawns a goroutines for each eigentree. This should get us close to full CPU load for large inputs.Also parallelizes XOF while we're at it, because why not.
@glycerine, would you mind running
go test -bench=.
? I don't have access to an AVX-512 machine at the moment and I'm curious about the improvement here.