Re: [AMBER] Cpu busy looping?

From: Jan-Philip Gehrcke <jgehrcke.googlemail.com>
Date: Wed, 21 Aug 2013 13:56:34 +0200

On 08/21/2013 02:38 AM, Jake Smith wrote:

> I have thought that the core might be put in non-schedulable mode
> while waiting for something from the GPU, eg busylooping in interrupt
> handler or the like, and that would explain why CPU speed is
> irrelevant but still the core can't be used for anything else. That
> might not be an Amber problem, could certainly be a problem coming
> from CUDA.
>

Just a note why I think these thoughts go into the right direction and
why I believe the current situation might change in the (far) future.

In I/O-critical areas of computing, event notification systems are
established. CPUs are *idle* while userspace applications are waiting
for I/O-events from e.g. the network adapter or a mass storage device.
Only when there is data actually arriving, a chain of event notifiers is
fired, starting in the OS kernel and ending in the application in
userland, waking up the application and triggering it to handle the
data. This has been driven to the extreme and that's why we luckily have
the select, (e)poll and kqueue systems (in different operating systems).

Such architectures developed because there is a natural need for them.
Without such event notification systems, billions of computers
comprising and taking part in any network would be under permanent load
while polling their network adapters, asking "do you have some data for
me?" with the worst possible efficiency.

epoll and kqueue are systems that work in a scalable fashion, especially
also for high event-firing frequencies and huge loads of data. They
don't add latency.

I am not an expert of the CUDA internals and maybe I oversee something
essential, but GPU <-> CPU communication in principle could also be
driven by a comparable event notification system, specifically designed
for GPU<->CPU communication. There *must* be a way for the GPU/CPU
system to not waste CPU cycles while no communication takes place. I
understand that the technology is still in its infancy, that this point
was not of priority so far and that the current (CUDA) architecture
might simply not allow for such an economic system. But hopefully it
does at some point in the future.

Cheers,

Jan-Philip



_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Wed Aug 21 2013 - 05:00:02 PDT
Custom Search