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:21:46 +0200
From: magnum <>
Subject: Re: -dev=... -fork=... wastes GPU memory

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.


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.