Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

An adaptative game loop architecture with automatic distribution of tasks between CPU and GPU

Published: 01 January 2010 Publication History

Abstract

This article presents a new architecture to implement all game loop models for games and real-time applications that use the GPU as a mathematics and physics coprocessor, working in parallel processing mode with the CPU. The presented model applies automatic task distribution concepts. The architecture can apply a set of heuristics defined in Lua scripts in order to get acquainted with the best processor for handling a given task. The model applies the GPGPU (general-purpose computation on GPUs) paradigm. In this article we propose an architecture that acquires knowledge about the hardware by running tasks in each processor and, by studying their performance over time, finding the best processor for a group of tasks.

References

[1]
Ageia. 2008. Physx. http://www.ageia.com. 20/02/2008.
[2]
AMD. 2007. Amd stream computing. http://ati.amd.com/technology/streamcomputing/firestream-sdk-whitepaper.pdf. 20/02/2008.
[3]
Green, S. 2007. GPGPU physics. SIGGRAPH 07 GPGPU Tutorial.
[4]
Hofstee, H. P. 2005. Power efficient processor architecture and the cell processor. In Proceedings of the 11th IEEE International Symposium on High-Performance Architecture.
[5]
Ierusalimschy, R., de Figueiredo, L. H., and Celes, W. 2006. Lua 5.1 Reference Manual. Lua.org.
[6]
Intel 2008. Havok. http://www.havok.com. 20/02/2008.
[7]
Joselli, M., Zamith, M., Valente, L., Clua, E. W. G., Montenegro, A., Conci, A., Feijó, B., Dornellas, M., Leal, R., and Pozzer, C. 2008a. Automatic dynamic task distribution between cpu and GPU for real-time systems. In Proceedings of the 11th International Conference on Computational Science and Engineering, 48--55.
[8]
Joselli, M., Clua, E., Montenegro, A., Conci, A., and Pagliosa, P. 2008b. A new physics engine with automatic process distribution between CPU-GPU. In Sandbox 08:Proceedings of the 2008 ACM SIGGRAPH Symposium on Video Games, 149--156.
[9]
Lua. 2009. The programming language lua. http://www.lua.org. 13/01/2009.
[10]
Michalakes, J. and Vachharajani, M. 2008. GPU acceleration of numerical weather prediction. In Proceedings of the IEEE International Symposium on Parallel and Distributed Processing, 1--7.
[11]
Nguyen, H. 2007. GPU Gems 3--Programming Techniques for High-performance Graphics and General-Purpose Computation. Addison-Wesley, Reading, MA.
[12]
nVidia. 2008. Nvidia--Cuda compute unified device architecture. Programming guide, NVIDIA.
[13]
nVidia. 2007a. Cuda particles. http://developer.download.nvidia.com/compute/cuda/1_1/Website/projects/particles/doc/particles.pdf.
[14]
nVidia. 2007b. Nvidia cuda compute unified device architecture documentation ver. 1.1. http://developer.nvidia.com/object/cuda.html.
[15]
nVidia. 2006. Geforce 8800 GPU architecture overview. tb-02787-001_v0.9. Tech. Rep. NVIDIA.
[16]
Nyland, L., Harris, M., and Prins, J. 2007. Fast n-body simulation with cuda. In GPU Gems 3, Ch. 31, 677--695.
[17]
Owens, J. D., Leubke, D., Govindaraju, N., Harris, M., Krãger, J., Lefohn, A. E., and Purcell, T. J. 2007. A survey of general-purpose computation on graphics hardware. Computer Graphics Forum 26, 1, 80--113.
[18]
Passos, E., Joselli, M., Zamith, M., Rocha, J., Montenegro, A., Clua, E., Conci, A., and Feijó, B. 2008. Supermassive crowd simulation on GPU based on emergent behavior. In Proceedings of the Seventh Brazilian Symposium on Computer Games and Digital Entertainment, 81--86.
[19]
Rudomãn, T., Millãn, E., and Hernãndez, B. 2005. Fragment shaders for agent animation using finite state machines. Simulation Modelling Practice and Theory 13, 8, 741--751.
[20]
Seiler, L., Carmean, D., Sprangle, E., Forsyth, T., Abrash, M., Dubey, P., Junkins, S., Lake, A., Sugerman, J., Cavin, R., Espasa, R., Grochowski, E., Juan, T., and Hanrahan, P. 2008. Larrabee: A many-core x86 architecture for visual computing. ACM Trans. Graphics 27, 3.
[21]
Ufimtsev, I. S., and Martãnez, T. J. 2008. Quantum chemistry on graphical processing units. 1. Strategies for two-electron integral evaluation. l. Chemistry Theory Computation 4, 2, 222--231.
[22]
Valente, L., Conci, A., and Feijó, B. 2005. Real time game loop models for single-player computer games. In Proceedings of the Fourth Brazilian Symposium on Computer Games and Digital Entertainment, 89--99.
[23]
Zamith, M., Clua, E., Pagliosa, P., Conci, A., Montenegro, A., and Valente, L. 2007. The GPU used as a math co-processor in real time applications. In Proceedings of the Sixth Brazilian Symposium on Computer Games and Digital Entertainment, 37--43.
[24]
Zamith, M. P. M., Clua, E. W. G., Conci, A., Montenegro, A., Leal-Toledo, R. C. P., Pagliosa, P. A., Valente, L., and Feij, B. 2008. A game loop architecture for the GPU used as a math coprocessor in real-time applications. ACM Comput. Entertain. 6, 3, 1--19.

Cited By

View all

Index Terms

  1. An adaptative game loop architecture with automatic distribution of tasks between CPU and GPU

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image Computers in Entertainment
    Computers in Entertainment   Volume 7, Issue 4
    SPECIAL ISSUE: Games
    December 2009
    245 pages
    EISSN:1544-3574
    DOI:10.1145/1658866
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 01 January 2010
    Accepted: 01 July 2009
    Received: 01 February 2009
    Published in CIE Volume 7, Issue 4

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. GPGPU
    2. game loops
    3. task distribution

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)8
    • Downloads (Last 6 weeks)3
    Reflects downloads up to 05 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2022)Declarative AI design in Unity using Answer Set Programming2022 IEEE Conference on Games (CoG)10.1109/CoG51982.2022.9893603(417-424)Online publication date: 21-Aug-2022
    • (2020)The Case for Serious Games AnalyticsRadical Solutions and Learning Analytics10.1007/978-981-15-4526-9_13(213-227)Online publication date: 9-May-2020
    • (2015)Redefining Game Engine Architecture Through ConcurrencyIntelligent Software Methodologies, Tools and Techniques10.1007/978-3-319-17530-0_11(149-161)Online publication date: 7-May-2015
    • (2013)Arbiter work stealing for parallelizing games on heterogeneous computing environmentsProceedings of the High Performance Computing Symposium10.5555/2499968.2499984(1-9)Online publication date: 7-Apr-2013
    • (2012)Scheduling processing of real-time data streams on heterogeneous multi-GPU systemsProceedings of the 5th Annual International Systems and Storage Conference10.1145/2367589.2367596(1-12)Online publication date: 4-Jun-2012
    • (2012)Techniques for designing GPGPU games2012 IEEE International Games Innovation Conference10.1109/IGIC.2012.6329853(1-5)Online publication date: Sep-2012
    • (2011)Processing data streams with hard real-time constraints on heterogeneous systemsProceedings of the international conference on Supercomputing10.1145/1995896.1995915(120-129)Online publication date: 31-May-2011
    • (2011)Two-Way Real Time Fluid Simulation Using a Heterogeneous Multicore CPU and GPU ArchitectureProceedings of the 2011 IEEE Workshop on Principles of Advanced and Distributed Simulation10.1109/PADS.2011.5936750(1-8)Online publication date: 14-Jun-2011
    • (2010)Fluid Simulation with Two-Way Interaction Rigid Body Using a Heterogeneous GPU and CPU EnvironmentProceedings of the 2010 Brazilian Symposium on Games and Digital Entertainment10.1109/SBGAMES.2010.25(156-164)Online publication date: 8-Nov-2010
    • (2009)GpuWarsProceedings of the 2009 VIII Brazilian Symposium on Games and Digital Entertainment10.1109/SBGAMES.2009.23(132-140)Online publication date: 8-Oct-2009

    View Options

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format.

    HTML Format

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media