Modern consumer-grade 3D graphic cards boast a computation/memory resource that can easily rival or even
exceed that of standard desktop PCs. Although these cards are mainly designed for 3D gaming applications, their
enormous computational power has attracted developers to port an increasing number of scientific computation
programs to these cards, including matrix computation, collision detection, cryptography, database sorting, etc.
As more and more applications run on 3D graphic cards, there is a need to allocate the computation/memory
resource on these cards among the sharing applications more fairly and efficiently. In this paper, we describe the
design, implementation and evaluation of a Graphic Processing Unit (GPU) scheduler based on Deficit Round
Robin scheduling that successfully allocates to every process an equal share of the GPU time regardless of their
demand. This scheduler, called GERM, estimates the execution time of each GPU command group based on
dynamically collected statistics, and controls each process's GPU command production rate through its CPU
scheduling priority. Measurements on the first GERM prototype show that this approach can keep the maximal
GPU time consumption difference among concurrent GPU processes consistently below 5% for a variety of
application mixes.
Access to the requested content is limited to institutions that have purchased or subscribe to SPIE eBooks.
You are receiving this notice because your organization may not have SPIE eBooks access.*
*Shibboleth/Open Athens users─please
sign in
to access your institution's subscriptions.
To obtain this item, you may purchase the complete book in print or electronic format on
SPIE.org.
INSTITUTIONAL Select your institution to access the SPIE Digital Library.
PERSONAL Sign in with your SPIE account to access your personal subscriptions or to use specific features such as save to my library, sign up for alerts, save searches, etc.