Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120516142646.GA15647@openwall.com>
Date: Wed, 16 May 2012 18:26:46 +0400
From: Solar Designer <solar@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: OpenCL vs. CUDA CPU usage

Hi,

This is just an observation: somehow with CUDA we're fully wasting an
entire CPU core per GPU, whereas with OpenCL we're only using some CPU
time on one core:

user@...l:~$ ps axuw | fgrep -w john
user     14325  9.2  0.8 21345708 72932 pts/3  SNl+ 17:52   2:40 ./john /home/user/john/contest-2011/hashes-all.txt-3.phpass -i -fo=phpass-opencl -pla=1
user     14702  100  0.4 21154568 38384 pts/4  RNl+ 18:10  10:43 ./john /home/user/john/contest-2011/hashes-all.txt-3.phpass -i -fo=phpass-cuda -se=n

Notice how the OpenCL run (using the 7970 card) consumes only 9.2% CPU,
whereas the CUDA run (using the 570) consumes 100% (I guess mostly
wasted on active waits for the GPU).

I wonder if there's a tunable setting for CUDA to make it wait passively
(so that the CPU would stay cooler or we could use this CPU core by
another instance of John).

I also wonder if we'd see the same CPU wastage with OpenCL on the 570.
I can easily try that next, indeed.

Alexander

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.