存储 频道

PMC张冬:大话OpenPower的CAPI架构

  【IT168 资讯】作为OpenPOWER基金会的银牌成员,PMC与IBM及其他OpenPOWER成员共同致力于研发针对下一代数据中心的服务器及存储解决方案。在昨日落幕的“云计算与云存储核心架构与应用”论坛上,《大话存储》系列作者、同时也是PMC公司资深架构师的张冬为大家带来了一场充满干货的演讲——《OpenPower CAPI 架构简析》。演讲主要围绕OpenPower CAPI接口的架构、相对于传统IO方式的优势以及与 NVMe SSD结合应用案例进行。

PMC张冬:大话OpenPower的CAPI架构
《大话存储》系列作者、PMC公司资深架构师 张冬

  可以说,OpenPower基金会的大部分成员都非常专注于CAPI(相干加速器处理器接口)上的利用,比如将外置的网络、GPU、闪存等设备直接与CPU相连接,并在此基础上根据不同的主流应用场景进行开放的,定制化的系统设计。PMC也是如此,另外的关注点还包括CAPI是如何与NVMe进行协作。

  相信很少人知道一个CPU里面到底有什么东西。比如下面这张图:

  CPU有四个核心,每个核心内部还有包括流水线在内的其他部件。数据出了ALU,面对的一张复杂的路由网络,目的地址为内存地址,但是其相对外部网络的复杂性在于,目标的位置是不固定的,还可能有多份拷贝。 Need Coherency。硬件透明搞定Cache Coherency。CC不负责多线程并发访问Cache Line时的互斥,互斥需要程序显式发出Lock,底层硬件会锁住总线访问周期。

  谈到PCIE设备是如何与CPU进行互动,张冬解释道,Bus Driver将PCIE设备地址空间映射到CPU物理地址空间并将PCIE地址空间写入PCIE设备寄存器;Host Driver读出PCIE设备寄存器获取该设备对应的PCIE物理地址空间并ioremap到内核虚拟地址空间。

  之后,Host Driver 申请DMA缓存并向PCIE设备映射的虚拟地址空间写入控制字基地址,这些信息便被写入设备寄存器,触发PCIE设备根据基地址从主存DMA拿到需要的指令和数据后进行处理;PCIE设备对主存DMA时,RC自动执行Probe操作以保证Cache Coherency。

  具体到OpenPower CAPI接口的架构,张冬还引申谈到了FPGA。对于CAPI来说,FPGA(现场可编程门阵列)的作用不可小觑。通过一致性加速器处理器接口(CAPI),可以实现FPGA与POWER 8 CPU顺畅的连接。基于FPGA加速的POWER8系统经过优化,支持下一代HPC和数据中心应用中需要的大计算量和大规模处理任务,包括数据压缩、加密、图像处理和搜索等应用。

  使用CAPI将FPGA加速器顺畅的连接至POWER8处理器架构和主系统存储器,使得FPGA看起来是POWER8处理器的另一个内核。相对于传统的IO连接加速器,这极大的减少了软件代码行数,缩短了处理器周期,从而减少了开发时间。一个FPGA加速的POWER8服务器的工作效率是业界最高的,支持系统架构师将其数据中心规模缩小一半。

3
相关文章