Monday, December 3, 2012

VirtualCL (Vcl) Problems

So i have ventured into VCL by getting rid of my open-air rig and changing to 3 Closed-Chassis machines with 3 GPU's in each.

As the machines are not fully populated, heat is not a big issue but it is present. To combat this I've not only put system fans in a proper position to move airflow, but also employed the use of an external pedestal room fan, that is controlled automatically by the master Node.

The problem I have run into is that my control/master Node runs out of memory very quickly. It has 12GB's physical RAM and a 120GB's of Virtual Memory. After about 45 minutes of running a busy crack, I run out of physical memory and virtual memory and get the dreaded clKernelQueue(-6) error.

From what I can ascertain, it seems that the problem is with VCL. It has a memory leak and its going through my system memory in record time.

I have also found out the following lessons you may wish to note;

  • The master/control node needs not only a lot of RAM but a strong, and good CPU (pref multi-core). The VCL component will add an extra layer of processing requirement and if your machine cannot handle it, you will slow the process down.
  • Again on the CPU, if your network adapter is built-in to the motherboard, it may rely on the physical CPU to perform its functions. If your CPU is already at 100% with Hashcat and VCL, you are going to get degraded disk, network and other performance.
  • You will NOT have access to the status window of Hashcat as the key presses in vcl 1.15 are not passed onto the application, hence you need to find other ways of monitoring progress. (for example tailing your output file that the cracked hashes will appear in)
  • Also remember that the temperature monitor is disabled for VCL, and hence you need to make sure your GPU's are not overheating*
  • MAKE SURE your Network interfaces are connected at 1000mbit Full Duplex. If not, use ethtool to check why, or make sure your network cables are gigabit capable. 
*I am busy developing a python applet to assist with this, and take necessary action. It will be published in due course.

So far the system is working fine apart from the minor issues above. However I'm going to take further steps to optimise my system and make it better and faster. 

Until next time,