Real-Time GPU Resource Management with Loadable Kernel Modules

Real-Time GPU Resource Management with Loadable Kernel Modules
复制标题

DOI:
10.1109/tpds.2016.2630697
复制
发表时间:
2017-06
影响因子:
5.3
通讯作者:
Yuhei Suzuki;Yusuke Fujii;Takuya Azumi;N. Nishio;S. Kato
Yuhei Suzuki;Yusuke Fujii;Takuya Azumi;N. Nishio;S. Kato
中科院分区:
计算机科学2区
文献类型:
--
作者:
Yuhei Suzuki;Yusuke Fujii;Takuya Azumi;N. Nishio;S. Kato

文献摘要

被引文献

相似文献

对于 GPU 上的通用计算来说,图形处理单元 (GPU) 编程环境已经成熟。 GPU 面临的重大挑战包括系统软件对有限响应时间和保证吞吐量的支持。近年来,GPU技术已经被应用到实时系统中,通过扩展操作系统模块来支持实时GPU资源管理。不幸的是,这样的系统扩展使得系统版本更新的维护变得困难,因为操作系统内核和设备驱动程序必须在源代码级别进行修改,从而阻碍了实时系统GPU技术的持续研发。提出了一种可加载内核模块 (LKM) 框架,称为 Linux Real-Time eXtention with GPUs (Linux-RTXG),用于在不修改操作系统内核和设备驱动程序的情况下使用 Linux 管理实时 GPU 资源,并进行实验评估。 Linux-RTXG提供了中断拦截和独立同步的机制,以在现有设备驱动程序和运行时库之上实现GPU应用程序的实时调度和资源预留功能。实验结果表明,引入所提出的 Linux-RTXG 所产生的开销与引入现有的依赖于内核的方法所产生的开销相当。此外,结果表明,Linux-RTXG 可以成功调度多个 GPU 应用程序,以满足实时优先级和服务质量要求。
Graphics processing unit (GPU) programming environments have matured for general-purpose computing on GPUs. Significant challenges for GPUs include system software support for bounded response times and guaranteed throughput. In recent years, GPU technologies have been applied to real-time systems by extending the operating system modules to support real-time GPU resource management. Unfortunately, such a system extension makes it difficult to maintain the system with version updates because the OS kernel and device drivers must be modified at the source-code level, thereby preventing continuous research and development of GPU technologies for real-time systems. A loadable kernel module (LKM) framework, called Linux Real-Time eXtention with GPUs (Linux-RTXG), for managing real-time GPU resources with Linux without modifying the OS kernel and device drivers is proposed and evaluated experimentally. Linux-RTXG provides mechanisms for interrupt interception and independent synchronization to achieve real-time scheduling and resource reservation capabilities for GPU applications on top of existing device drivers and runtime libraries. Experimental results demonstrate that the overhead incurred by introducing the proposed Linux-RTXG is comparable to that of introducing existing kernel-dependent approaches. In addition, the results demonstrate that multiple GPU applications can be scheduled successfully by Linux-RTXG to meet their priority and quality-of-service requirements in real time.