remove un-needed kernels.
#1
Hello. I'm looking to get cudaHashcat going on a couple of machines. I have a very small amount of hard disk space available on each machine, and I need to get the cudaHashcat install to fit the same size as oclHashcat does, or thereabouts.

It occurs to me, that I might be able to remove un-needed kernels from my deployment, as each machine has identical cards in them and are running identical operating systems.

Is there a lookup table I can use to determine which kernel is actually required for my setup? I'm not sure what factors come into play when the determination is made. If I had one of the machines with enough space to get the whole thing on, I imagine I could probably examine a ptrace to figure out what kernel file was being loaded, but that isn't an option for me.

If anyone has any direction on the matter (or knows off hand what kernel is required if you're using a:
VGA compatible controller: NVIDIA Corporation GK106 [GeForce GTX 645 OEM] (rev a1) ) please let me know. Thank you
#2
When you start oclhashcat it shows you which kernel it has loaded. This kernel name includes the codename for your gpu. You can remove all kernels that do not have this codename in their name.
#3
Glad you asked.

I've been using the attached batch script to remove everything obsolete from the kernels folder for my config, which is Win 64 bit + sm_35 GPU (GTX Titan).
This page has good info which compute capabilities (sm_xx) belong to which GPUs, but you should always double and triple check that with oclhc (like undeath said, cat prints the compute capability of your gpu through kernel used).
The script is quite simple and can easily be tuned to anyone's needs, once config info is known.
Note, however, that on multi-gpu setup with different GPUs all compute kernels for those GPUs must be present.

Feel free to mess with the script as you wish.


Attached Files
.zip   clean clean clean.zip (Size: 414 bytes / Downloads: 5)
#4
Wrote a quick wiki article.
It's not finished.