嵌套页表是一种硬件辅助的内存虚拟化模型,当前国产申威处理器上未能提供该模型所需的硬件支持.然而申威架构特有的特权程序可编程接口可以通过软件构建必要的底层硬件支持.该接口运行在申威硬件模式上,具有最高CPU特权级.基于这一特性...嵌套页表是一种硬件辅助的内存虚拟化模型,当前国产申威处理器上未能提供该模型所需的硬件支持.然而申威架构特有的特权程序可编程接口可以通过软件构建必要的底层硬件支持.该接口运行在申威硬件模式上,具有最高CPU特权级.基于这一特性,在申威平台上实现了软件平滑嵌套页表模型swFNPT,通过软件设计优化弥补了硬件支持上的不足.特别地,使用平滑(1级)嵌套页表代替4级嵌套页表来提升页表查询效率.使用多组测试程序测试该设计的性能.在申威1621服务器上的实验结果表明:swFNPT整体性能良好.SPEC CPU 2006的平均内存虚拟化开销约为3%,SPEC CPU 2017中大工作集程序的平均开销约为4%,STREAM内存带宽测试结果显示swFNPT的带宽损失低于3%.这一工作可以为申威架构的硬件辅助虚拟化发展提供有价值的参考.展开更多
文摘嵌套页表是一种硬件辅助的内存虚拟化模型,当前国产申威处理器上未能提供该模型所需的硬件支持.然而申威架构特有的特权程序可编程接口可以通过软件构建必要的底层硬件支持.该接口运行在申威硬件模式上,具有最高CPU特权级.基于这一特性,在申威平台上实现了软件平滑嵌套页表模型swFNPT,通过软件设计优化弥补了硬件支持上的不足.特别地,使用平滑(1级)嵌套页表代替4级嵌套页表来提升页表查询效率.使用多组测试程序测试该设计的性能.在申威1621服务器上的实验结果表明:swFNPT整体性能良好.SPEC CPU 2006的平均内存虚拟化开销约为3%,SPEC CPU 2017中大工作集程序的平均开销约为4%,STREAM内存带宽测试结果显示swFNPT的带宽损失低于3%.这一工作可以为申威架构的硬件辅助虚拟化发展提供有价值的参考.