An Extensible, Data-Oriented Architecture for High-Performance, Many-World Simulation

被引:4
|
作者
Shacklett, Brennan [1 ]
Rosenzweig, Luc Guy [1 ]
Xie, Zhiqiang [1 ]
Sarkar, Bidipta [1 ]
Szot, Andrew
Wijmans, Erik [2 ]
Koltun, Vladlen
Batra, Dhruv [2 ]
Fatahalian, Kayvon [1 ]
机构
[1] Stanford Univ, Stanford, CA 94305 USA
[2] Georgia Inst Technol, Atlanta, GA 30332 USA
来源
ACM TRANSACTIONS ON GRAPHICS | 2023年 / 42卷 / 04期
关键词
game AI; reinforcement learning;
D O I
10.1145/3592427
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Training AI agents to perform complex tasks in simulated worlds requires millions to billions of steps of experience. To achieve high performance, today's fastest simulators for training AI agents adopt the idea of batch simulation: using a single simulation engine to simultaneously step many environments in parallel. We introduce a framework for productively authoring novel training environments (including custom logic for environment generation, environment time stepping, and generating agent observations and rewards) that execute as high-performance, GPU-accelerated batched simulators. Our key observation is that the entity-component-system (ECS) design pattern, popular for expressing CPU-side game logic today, is also well-suited for providing the structure needed for high-performance batched simulators. We contribute the first fully-GPU accelerated ECS implementation that natively supports batch environment simulation. We demonstrate how ECS abstractions impose structure on a training environment's logic and state that allows the system to efficiently manage state, amortize work, and identify GPU-friendly coherent parallel computations within and across different environments. We implement several learning environments in this framework, and demonstrate GPU speedups of two to three orders of magnitude over open source CPU baselines and 5-33x over strong baselines running on a 32-thread CPU. An implementation of the OpenAI hide and seek 3D environment written in our framework, which performs rigid body physics and ray tracing in each simulator step, achieves over 1.9 million environment steps per second on a single GPU.
引用
收藏
页数:13
相关论文
共 50 条
  • [1] Data-Oriented Architecture of Ln function
    Navin, Ahmad Habibizad
    Oladghaffari, Telli
    Mirnia, Mir Kamal
    Heramin, G. Ali Yaghoubi
    2ND IEEE INTERNATIONAL CONFERENCE ON ADVANCED COMPUTER CONTROL (ICACC 2010), VOL. 5, 2010, : 600 - 602
  • [2] A data-oriented (and beyond) network architecture
    Koponen, Teemu
    Chawla, Mohit
    Chun, Byung-Gon
    Ermolinskiy, Andrey
    Kim, Kye Hyun
    Shenker, Scott
    Stoica, Ion
    ACM SIGCOMM COMPUTER COMMUNICATION REVIEW, 2007, 37 (04) : 181 - 192
  • [3] Anteater: A service-oriented architecture for high-performance data mining
    Guedes, Dorgival
    Meira, Wagner, Jr.
    Ferreira, Renato
    IEEE INTERNET COMPUTING, 2006, 10 (04) : 36 - 43
  • [4] High-performance extensible indexing
    Kornacker, M
    PROCEEDINGS OF THE TWENTY-FIFTH INTERNATIONAL CONFERENCE ON VERY LARGE DATA BASES, 1999, : 699 - 708
  • [5] Object-Oriented/Data-Oriented Design of a Direct Simulation MonteCarlo Algorithm
    Liechty, Derek S.
    JOURNAL OF SPACECRAFT AND ROCKETS, 2015, 52 (06) : 1521 - 1529
  • [6] Performance prediction of data streams on high-performance architecture
    Gautam, Bhaskar
    Basava, Annappa
    HUMAN-CENTRIC COMPUTING AND INFORMATION SCIENCES, 2019, 9 (01)
  • [7] Towards a high performance extensible Grid architecture
    Krauter, K
    Maheswaran, M
    HIGH PERFORMANCE COMPUTING SYSTEMS AND APPLICATIONS, 2002, 657 : 21 - 37
  • [8] Extensible architecture for high-performance, scalable, reliable publish-subscribe eventing and notification
    Ostrowski, Krzysztof
    Birman, Ken
    Doley, Danny
    INTERNATIONAL JOURNAL OF WEB SERVICES RESEARCH, 2007, 4 (04) : 18 - 58
  • [9] PanNDE: A modular architecture for high-performance NDE simulation
    Schneck, William C., III
    Frankforter, Erik L.
    Gregory, Elizabeth D.
    SOFTWAREX, 2021, 15
  • [10] Formal reasoning about real-time components on a data-oriented architecture
    Hannemann, U
    Hooman, J
    6TH WORLD MULTICONFERENCE ON SYSTEMICS, CYBERNETICS AND INFORMATICS, VOL XI, PROCEEDINGS: COMPUTER SCIENCE II, 2002, : 313 - 318