[论文解读] Accelerating Reinforcement Learning through GPU Atari Emulation
本文提出CuLE,一种基于CUDA加速的Atari 2600模拟器,可直接在GPU上运行强化学习环境,单张GPU最高实现每小时1.55亿帧的性能——超越基于CPU的系统。通过消除CPU-GPU通信瓶颈并实现游戏环境的大规模并行化,CuLE在A2C+V-trace算法下实现单GPU 68K FPS、四GPU 187K FPS的训练速度,显著缩短收敛时间,同时保持与基于CPU的环境相当的策略性能。
We introduce CuLE (CUDA Learning Environment), a CUDA port of the Atari Learning Environment (ALE) which is used for the development of deep reinforcement algorithms. CuLE overcomes many limitations of existing CPU-based emulators and scales naturally to multiple GPUs. It leverages GPU parallelization to run thousands of games simultaneously and it renders frames directly on the GPU, to avoid the bottleneck arising from the limited CPU-GPU communication bandwidth. CuLE generates up to 155M frames per hour on a single GPU, a finding previously achieved only through a cluster of CPUs. Beyond highlighting the differences between CPU and GPU emulators in the context of reinforcement learning, we show how to leverage the high throughput of CuLE by effective batching of the training data, and show accelerated convergence for A2C+V-trace. CuLE is available at https://github.com/NVLabs/cule .
研究动机与目标
- 解决由基于CPU的Atari模拟和有限的CPU-GPU带宽导致的深度强化学习计算瓶颈问题。
- 通过使用CUDA将Atari学习环境(ALE)移植到GPU,实现高吞吐量、可扩展的强化学习。
- 证明GPU加速的环境模拟可达到或超越大规模CPU集群的性能,同时减少训练时间。
- 通过对比CuLE与标准环境(如OpenAI Gym)的测试得分,验证在CuLE上训练的策略可泛化至标准环境且无性能下降。
提出的方法
- 将Atari学习环境(ALE)移植至CUDA,创建CuLE,直接在GPU内存中渲染游戏画面,避免CPU-GPU数据传输。
- 在单张GPU上并行执行数千个Atari游戏环境,充分利用GPU的线程级并行能力。
- 设计批处理策略,高效利用CuLE在训练过程中产生的高吞吐量数据,尤其适用于A2C+V-trace算法。
- 采用V-trace离策略校正方法,稳定使用并行生成的多个行为策略数据进行训练。
- 在多种GPU和系统配置下测量性能,对比FPS、收敛速度和策略性能。
- 通过对比CuLE与OpenAI Gym环境的测试得分,验证正确性并确认策略泛化能力。
实验结果
研究问题
- RQ1GPU加速的Atari模拟在每秒帧数和训练吞吐量方面是否能显著超越基于CPU的模拟?
- RQ2CuLE的高吞吐量数据生成对A2C+V-trace训练的收敛速度有何影响?
- RQ3GPU上线程发散在并行化Atari模拟中的性能影响程度如何?
- RQ4在CuLE上训练的策略是否能泛化至标准环境(如OpenAI Gym)且无性能损失?
- RQ5在DRL训练中,GPU利用率、指令级吞吐量与计算效率之间的权衡关系如何?
主要发现
- CuLE在单张GPU上最高实现每小时1.55亿帧,该性能此前仅能通过大规模CPU集群实现。
- 在单张GPU上,CuLE在推理阶段实现39K–125K FPS,训练阶段使用A2C+V-trace实现26K–68K FPS,显著优于基于CPU的系统。
- 在四张GPU下,CuLE训练阶段达到187K FPS,与大规模分布式系统(如IMPALA)的吞吐量相当。
- 在CuLE上训练的策略在测试中得分与在OpenAI Gym上训练的策略无显著差异,证实正确性与泛化能力。
- 基于CPU的模拟因缺乏线程发散,无初始FPS峰值;而GPU模拟中,相关联的初始状态导致临时性能峰值。
- 本研究识别出CPU-GPU通信带宽和CPU并行能力有限是传统DRL训练流水线的主要瓶颈。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。