当前位置: 首页 > news >正文

做民宿推广都有哪些网站p2p网站建设的步骤过程

做民宿推广都有哪些网站,p2p网站建设的步骤过程,网站建设网站,建筑公司企业使命和愿景大全一、RDMA概述 首先我们介绍一下RDMA的一些核心概念#xff0c;当然了#xff0c;我并不打算写他的API以及调用方式#xff0c;我们更多关注这些基础概念背后的硬件执行方式和原理#xff0c;对于这些原理的理解是能够写出高性能RDMA程序的关键。 Memory Region RDMA的网…一、RDMA概述 首先我们介绍一下RDMA的一些核心概念当然了我并不打算写他的API以及调用方式我们更多关注这些基础概念背后的硬件执行方式和原理对于这些原理的理解是能够写出高性能RDMA程序的关键。 Memory Region RDMA的网卡下文以RNIC指代通过DMA来读写系统内存由于DMA只能根据物理地址访问所以RNIC需要保存一份目标内存区域的虚拟内存到物理内存的映射表这个映射表被存储在RNIC的Memory Translation TableMTT中。同时由于目前RDMA的访问大都基于Direct Cache Access不支持page-fault所以我们还需要保证目标内存区域是被pagelock住以防止操作系统将这部分内存页换出。 总结一下就是当我们使用RDMA来访问一块内存的时候这部分内存首先要被pagelock接着我们还需要把这块内存虚拟地址到逻辑地址的映射表发送给RNIC用于后续的访问查找这个过程就叫Memory Registeration这块被注册的内存就是Memory Region。同时我们注册内存的时候需要指定这块内存的访问权限RNIC将这个访问权限信息存储在Memory Protection TablesMPT中用于用户请求时的权限验证。 MTT和MPT被存储在内存中但是RNIC的SRAM中会进行缓存。当RNIC接收到来自用户的READ/WRITE请求的时候首先在SRAM中的缓存中查找用户请求的目标地址对应的物理地址以及这块地址对应的访问权限如果缓存命中了就直接基于DMA进行操作如果没有命中就得通过PCIe发送请求在内存的MTT和MPT中进行查找这带来了相当的额外开销尤其是当你的应用场景需要大量的、细粒度的内存访问的时候此时RNIC SRAM中的MTT/MPT命中缺失带来的影响可能是致命的。 Memory Region的注册是一个耗时的操作但大部分情况下我们都只需要在最开始的时候做一次或者多次。现在也有不需要注册MR基于on-demand paging的方式来访问的比如AWS的EFA协议。但今天先不展开这块的内容因为这块更多是Unified Memory这个话题下的之后我可能会把这个和GPU的UVM放在一起介绍下因为他们的核心原理其实是一样的。 RDMA Verbs 用户通过RDMA的Verbs API向RNIC发送指令Verbs分为Memory Verbs和Message VerbsMemory Verbs主要就是READ、WRITE以及一些ATOMIC的操作Message Verbs主要包含SEND、RECV。Memory verbs是真正的CPU Bypass以及Kernel Bypass所以总归是性能比较好的。Message Verbs需要Responder的CPU的参与相对而言更灵活但是性能相比Memory Verbs而言一般不太行。 Queue Pair RDMA的hosts之间是通过Queue Pair(QP)来通信的一个QP包含一个Send Queue(SQ)一个Receive Queue(RQ)以及对应的Send Completion Queue(SCQ)和Receive Completion Queue(RCQ)。用户发送请求的时候把请求封装为一个Work Queue Element(WQE)发送到SQ里面然后RDMA网卡会把这个WQE发送出去当这个WQE完成的时候对应的SCQ里面会被放一个Completion Queue Element(CQE)然后用户可以从SCQ里面Poll这个CQE并通过检查状态来确认对应的WQE是否成功完成。需要指出的是不同的QP可以共用CQ来减少SRAM的存储消耗。 接下来我们重点介绍一下QP背后的知识。 首先当我们创建了QP之后系统是需要保存状态数据的比如QP的metadata拥塞控制状态等等除去QP中的WQE、MTT、MPT一个QP大约对应375B的状态数据。这在以前RNIC的SRAM比较小的时候会是一个比较重的存储负担所以以前的RDMA工作会有QP Sharing的研究就是不同的处理线程去共用QP来减少meta data的存储压力但是这会带来一定的性能的损失[1]。现在新的RNIC的SRAM已经比较大了Mellanox的CX4、CX5系列的网卡的SRAM大约2MB所以现在新网卡上大家还是比较少去关注QP带来的存储开销除非你要创建几千个几万个QP。 其次RNIC是包含多个Processing Unit(PU)的[2]同时由于QP内的请求处理是具有顺序的且为了避免cross-PU的同步一般而言我们认为一个QP对应一个PU来处理。所以我们可以在一个线程内建立多个QP来加速你数据处理避免RDMA程序性能瓶颈卡在PU的处理上[3]。 二、RDMA性能优化 RDMA性能优化这个东西说复杂也复杂说简单也简单。简单的点在于从性能优化角度而言其实软件层面我们可以做的设计和选择不会太多因为性能上限是被硬件卡住的所以我们为了追求尽可能逼近硬件上限的性能表现其核心就在于按照硬件最友好的方式去做数据访问即可没有特别多复杂的算法在这里面当你想要高性能的时候多多了解硬件就对了。对照着我们在上面介绍的三个核心概念我们一一介绍性能优化的经验。 2.1 关注地址翻译的性能开销 前面我们提到当待请求的数据地址在RNIC SRAM中的MTT/MPT没有命中的时候RNIC需要通过PCIe去在内存中的MTT和MPT进行查找这是一个耗时的操作。尤其是当我们需要 high fan-out、fine-grained的数据访问时这个开销会尤为的明显。现有针对这个问题的优化方式主要有两种 Large Page无论是MTT亦或者操作系统的Page Table虚拟地址到物理地址的映射表项是Page粒度的即一个Page对应一个MTT的Entry或者Page Table的EntryPTE。使用Large Page可以有效的减少MTT的Size进而使得RNIC中的MTT Cache命中率更高。使用Contiguous Memory PA-MR[4, 5]。新一代的CX网卡支持用户基于物理地址访问为了避免维护一个繁重的Page Table我们可以通过Linux的CMA API来申请一大块连续的物理内存。这样我们的MTT就只有一项可以保证100%的Cache命中率。但是这个本身有一些安全隐患因为使用PA-MR会绕过访问权限验证所以使用的时候要注意这点。 当然其实还有一些别的优化手段在最近我们的工作中提出一种新的方式来提升地址翻译的性能具体等工作开源出来之后我再来介绍介绍。 2.2 关注RNIC PU/QP的执行模型 一个QP对应一个PU这是我们对RNIC执行方式的一个简单建模。这个模型下我们需要通过多QP来充分发挥多PU并行处理的能力同时也要关注我们的操作减少PU之间的同步PU之间同步对于性能有着较大的伤害。 2.3 RMDA Verbs 对于RDMA的Verbs的使用以我个人的经验来看就是优先使用READ/WRITE在一些需要CPU介入且需要Batch处理逻辑的可以尝试使用SEND/RECV。过往的工作有很多基于READ/WRITE去构建Message Passing处理语义的工作[1, 6, 7]可以着重参考。 同时一个READ/WRITE的WQE可以通过设置对应的FLAG来设置其是否需要在完成时需要被SIGNALED如果不需要则该WQE完成时不会产生一个CQE。此时一个常见的优化技巧是当你需要连续在一个QP中发送K个READ/WRITE请求时只把最后一个请求设置为SIGNALED其他均为UNSIGNALED由于QP的执行本身具备顺序关系所以最后一个执行完了后一定意味着之前的WQE都已经执行完了。当然是否执行成功需要Application-Specific的方法来确认。 三、 RNIC X 最经典的RNIC的使用方式自然是RNIC System Memory即直接通过RNIC来访问内存。但是随着GP-GPU、NVM的发展通过RNIC来直接访问GPU或者通过RNIC来直接访问NVM都是目前比较成熟和热门的技术。RDMA GPU可以大幅度加速GPU和GPU之间的通信RDMA NVM则可以大幅度的扩大内存容量减少网络通信的需求。这块内容既涉及到硬件又涉及到操作系统的虚拟内存机制要讲清楚需要不少篇幅我们放在下一篇进行介绍。 四、总结 本篇文章主要是介绍一些RDMA的基础概念以及背后的原理基于这些概念和原理我们介绍了RDMA的常见性能优化技巧下一篇我们将会介绍RNIC X包括RNIC GPU以及RNIC NVM的内容介绍感兴趣的读者朋友可以保持关注。
http://www.dnsts.com.cn/news/143014.html

相关文章:

  • 苏州建站公司哪个济南兴田德润实惠吗苏州纳米所加工平台
  • 网站设计与建设实践可以用自己的电脑做网站主机
  • 网站seo优化推广外包怎么用nas做网站服务器
  • 网站规划建设心得与体会商城类网站开发
  • 杭州网站建设哪个好简答题网络营销是什么
  • 建立网站需要花多少费用长春个人网站制作公司
  • 橙色企业网站海南建设局相关网站
  • 上海网站优化推广濮阳网站建设
  • 今标 网站建设国外单页制作网站模板
  • wordpress标签拼音网站seo优化网站
  • 网站开发 银行接入 ca 认证 接入建设厅网站密码忘了怎么办
  • 视频网站开发有哪些功能企业网盘源码
  • 惠东网站建设国内wordpress自己开发主题
  • 做外贸有哪些免费的网站有哪些网站素材大全
  • 常州网站建设方案抖音推广佣金平台
  • 做U启的网站市场推广的方法和规划
  • 广州制作网站公司网站字体设计规范
  • 教学成果展示网站 课程体系建设哪个视频网站做视频最赚钱
  • 如何在国外建网站做外贸网站需要营业执照
  • 点播视频网站怎么建设163邮箱登录注册
  • dedecms 网站导航wordpress 空两格
  • 免费投票网站制作dede做的网站打不开
  • 网站内链建设属于什么内容网页ui设计模板
  • 信息化建设好的企业网站有哪些建筑企业公司简介怎么写
  • 专业网站是什么哪家开发app公司好
  • 大连企业网站建设定制国外教做蛋糕的网站
  • 什么叫宣传类网站滇中引水工程建设管理局网站
  • 自己做的网站可以发布吗网络系统管理技能大赛linux
  • 广州网站改版哪家好深圳大学网站建设
  • 用KEGG网站做通路富集分析定制高端网站的公司