Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 28 Aug 2015 01:41:08 +0200
From: magnum <>
Subject: Re: -dev=... -fork=... wastes GPU memory

On 2015-08-28 01:21, magnum wrote:
> On 2015-08-25 11:46, magnum wrote:
>> On 2015-08-25 07:26, Solar Designer wrote:
>>> Running this command on super:
>>> ./john -form=md5crypt-opencl -fork=3 -dev=0,1,5
>>> -mask='?l?l?l?l?l?l?l?l'
>>> (...)
>>> It looks like the two child processes that target other GPUs
>>> nevertheless
>>> consume some memory on this GPU card as well.  Why is that, and can we
>>> avoid it?
>>> I guess the same happens for AMD GPUs as well, but we don't have such
>>> nice reporting for them.  Recent nvidia-smi is very nice in this
>>> respect.
>> Interesting. Well, we do enumerate all GPUs and I guess we create some
>> kind of context for all of them. Maybe we can drop the ones we wont use.
>> I'll have a look at it.
> I had a look. We take care not to do *anyhing* OpenCL prior to forking.
> Any such stuff is post-poned. Then right after forking, we enumerate
> cards and pick one just as if each child was a single process.
> This made me think that the exact same thing will happen with just a
> single process, but I just checked and apparently it isn't. Very
> strange. I need to let this grow for a while.

I found this now by pure coincidence: (very long thread, 
several branches).

Sounds a lot like a variant of the same problem. However, we did change 
a lot of stuff (eg. we're not initializing OpenCL at all for CPU 
formats, and never prior to forking).


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.