摘要

随着GPU的计算能力、访存能力和设备内存容量的不断提高,将GPU作为独立的数据存储节点来使用正在成为可能。动态内存管理是数据存储节点的必备功能,但是大量的并发线程以及单指令流多数据流的执行方式,使得GPU上的动态内存分配面临冲突率高、线程阻塞严重等问题。本文针对GPU体系结构特点以及数据存储类应用对设备内存管理的需求,在NVIDIA GPU上设计并实现了一个GPU设备内存管理器,可有效降低内存分配竞争,并提高内存分配速度。基于所设计的设备内存管理方案,本文将一个无锁哈希表实现移植到了GPU上,以加速GPU上的索引操作。实验表明,本文实现的GPU内存管理器和无锁哈希表具有较好的性能。