作为一种协处理,图形处理器 GPU(Graphics Processing Unit)在计算密集型的任务中得到了越来越广泛的应用。但是,由于图形处理器驱动程序并不在操作系统内核中提供 API,因此当操作系统内核需要利用 GPU 加速其工作时,就必须将计算任务转交基于用户态 API(如 CUDA)的用户态进程执行,这显然会增加完成计算任务所需要的额外开销。KGP(Kernel-space GPU Process-ing)是一种新的针对 IP 路由查找的技术方案,它使得操作系统内核可以直接调用 GPU 完成 IP 查找的计算,以避免将计算任务转交于用户态进程带来的开销。实验结果表明,相比用户态方案,KGP 因其较低的额外开销而拥有更好的 GPU 计算性能,同时能提升Linux 内核进行 IP 路由查找的性能。%The graphics processing units (GPUs)has been increasingly popular in computing-intensive tasks as a kind of co-processors. However,since there is no API provided by GPU drives in OS kernel,the computation tasks of OS kernel are forced to be offloaded to user-space processes of user-space APIs such as CUDA to complete while kernel’s work has to be accelerated with GPU.The offloading would clearly increase extra overhead to complete a GPU computing task.KGP is a novel technical scheme targeted at IP lookup,it enables OS kernels to call GPU directly for completing the computation of IP lookup to avoid the overhead incurred from offloading tasks to user-space processes.The experiments also show that KGP has better performance in GPU computation for its lower extra overhead in contrast with user-space scheme,and it dose improve the IP lookup processing speed of Linux kernel.
展开▼