-
Notifications
You must be signed in to change notification settings - Fork 2
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
Delete optimization #27
Conversation
…so some hashers.h is now split into 3 files
Some stats from VOLTAR:DEVvoid Hashinator::Hashers::delete_kernel<unsigned int, unsigned int, (unsigned int)4294967295, (unsigned int)4294967294, Hashinator::HashFunctions::Fibonacci, (int)32, (int)4>(T1 *, Hashinator::hash_pair<T1, T2> *, unsigned long *, int, unsigned long, unsigned long) (131072, 1, 1)x(1024, 1, 1), Device 0, CC 8.0, Invocations 10 void Hashinator::Hashers::insert_kernel<unsigned int, unsigned int, (unsigned int)4294967295, Hashinator::HashFunctions::Fibonacci, (int)32, (int)4>(T1 *, T2 *, Hashinator::hash_pair<T1, T2> *, int, unsigned long, unsigned long *, unsigned long *, unsigned long, Hashinator::status *) (131072, 1, 1)x(1024, 1, 1), Device 0, CC 8.0, Invocations 10 void Hashinator::Hashers::retrieve_kernel<unsigned int, unsigned int, (unsigned int)4294967295, Hashinator::HashFunctions::Fibonacci, (int)32, (int)4>(T1 *, T2 *, Hashinator::hash_pair<T1, T2> *, int, unsigned long) (131072, 1, 1)x(1024, 1, 1), Device 0, CC 8.0, Invocations 10 DELETE_OPTIMIZATIONSvoid Hashinator::Hashers::delete_kernel<unsigned int, unsigned int, (unsigned int)4294967295, (unsigned int)4294967294, Hashinator::HashFunctions::Fibonacci, (int)32, (int)4>(T1 *, Hashinator::hash_pair<T1, T2> *, unsigned long *, int, unsigned long, unsigned long) (131072, 1, 1)x(1024, 1, 1), Device 0, CC 8.0, Invocations 10 void Hashinator::Hashers::insert_kernel<unsigned int, unsigned int, (unsigned int)4294967295, Hashinator::HashFunctions::Fibonacci, (int)32, (int)4>(T1 *, T2 *, Hashinator::hash_pair<T1, T2> *, int, unsigned long, unsigned long *, unsigned long *, unsigned long, Hashinator::status *) (131072, 1, 1)x(1024, 1, 1), Device 0, CC 8.0, Invocations 10 void Hashinator::Hashers::retrieve_kernel<unsigned int, unsigned int, (unsigned int)4294967295, Hashinator::HashFunctions::Fibonacci, (int)32, (int)4>(T1 *, T2 *, Hashinator::hash_pair<T1, T2> *, int, unsigned long) (131072, 1, 1)x(1024, 1, 1), Device 0, CC 8.0, Invocations 10 So essentially we double the throughput!
|
Will be kept in PR state for a while |
hashers.h
is now made smaller by separating the nvidia and amd kernels to different files namelykernels_NVIDIA.h
andkernels_AMD.h
. There is some level of duplication in those files which should be cleaned up in the near future.