Hi Oliver,

Is it also a problem with 1 CUDA device, or just when 2 GPUs are
installed?  If it's only a problem with 2 you could try setting
avg_ncpus = 0.5 or 0.55 which should reserve 1 CPU core for 2 CUDA
processes.  Maybe not ideal but better than the current process
contention.

Regards/Ed


On Mon, Jan 3, 2011 at 12:22 AM, David Anderson <[email protected]> wrote:
> Oliver:
> I'm not sure there's anything we can do about this,
> other than for you to increase avg_ncpus to 1.
>
> As you know, GPU jobs are run at normal process priority,
> so in principle they should preempt CPU jobs, which run at idle priority.
> However, apparently the Windows CPU scheduler doesn't do this.
>
> What's needed is for Microsoft and NVIDIA engineers to see what's going on
> and fix it.  This is not likely to happen since neither of these companies
> has shown much interest in volunteer computing.
>
> -- David
>
> On 20-Dec-2010 3:12 AM, Oliver Bock wrote:
>> Hi everyone,
>>
>> We just deployed a new CUDA application (called BRP3) as part of the
>> einst...@home project. This app roughly up to 75% of a GPU and 3-30% of
>> a CPU, depending on the GPU model/performance. Thus our scheduler
>> currently issues these tasks with the following settings:
>>
>> hu.avg_ncpus = 0.2
>> hu.ncudas = 1
>>
>> Please note that BOINC (e.g. sched/sched_customize) revision 22832 is
>> used in this case.
>>
>> The problem is that with the settings above BOINC starts CUDA tasks in
>> addition to CPU tasks that already occupy all existing CPU cores. This
>> means on a system having four CPU cores and two CUDA devices, four CPU
>> tasks and two CUDA tasks are launched. Although this behavior is
>> intended, it doesn't really work out for us because the performance of
>> the CUDA tasks is degraded significantly - GPU usage goes down to less
>> than 10%, increasing the runtime by the same factor. Although the CUDA
>> tasks run with slightly higher priority (below normal on Windows) than
>> the CPU tasks (low on Windows) they are limited by the already
>> fully-occupied CPU cores which are still required for up to 30% of the
>> computation.
>>
>> Since we couldn't yet release a Linux or Mac OS version we don't know
>> whether this is a Windows time-slicing issue or not. Are there any other
>> projects running CUDA tasks in a comparable way?
>>
>> The only workaround in sight would be to acquire a full CPU core once
>> again but that's certainly not ideal.
>>
>> Any ideas are welcome!
>>
>>
>> Cheers,
>> Oliver
> _______________________________________________
> boinc_dev mailing list
> [email protected]
> http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
> To unsubscribe, visit the above URL and
> (near bottom of page) enter your email address.
>
_______________________________________________
boinc_dev mailing list
[email protected]
http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
To unsubscribe, visit the above URL and
(near bottom of page) enter your email address.

Reply via email to