全国服务热线:400-035-8011

位置:武汉达内IT教育培训机构 > 学校动态 > 虚拟化与性能的矛盾

虚拟化与性能的矛盾

来源:武汉达内IT教育培训机构时间:2021/9/28 14:22:53

  虚拟化与性能的矛盾
  一层一层的抽象层次逐渐降低了编程的复杂性,每一层都向上隐藏了一些东西,上层也相应地失去了一些控制能力。每次抽象后,都会引入一些对上层的不确定性,较终的结果就是性能的天花板一步步下降。
  以Hadoop的分布式存储为例,虚拟化的结果是掩盖数据的真实存储位置,无论在哪个节点,访问界面都是一样的。然而,当将一些MapReduce的数据处理任务调度到该集群时,如果Task被调度到数据所在的节点,则不需要网络传输,如果调度到其他节点,则需要将数据读取到内存,并通过网络发送到计算所在的节点。也就是说,隐藏的数据位置信息可能被调度器用来提高系统效率。

  随着摩尔定律的放缓,不仅在深度学习领域,在任何追求性能的场景中,都有强烈的需求来突破和粉碎中间的抽象层次,并将其插入较后进行协同优化。

虚拟化与性能的矛盾

  舒适区虚拟化
  虚拟化试图为上层提供一剂一劳永逸的灵丹妙药,既解决了易用性,又不损害上层应用的性能要求。但虚拟化到底好不好应该具体问题具体分析,那么如何判断虚拟化是否合适呢?
  试着在此抛出一个用于判断是否有必要引入一层抽象(虚拟化)的量化指标,供参考。每次引入虚拟化,就会向上层隐藏一些东西,向上提供的服务延迟就会导致不确定性(以分布式存储为例,有的数据近,有的数据远;以分布式GPU资源池为例,有的近,有的远),服务响应延迟有波动范围,即[min,max],延迟越小越好。
  如果上层某个应用需要增加的较低延迟仍然大于max,那么这个虚拟化对这个应用没有损害,可以大胆引入这个虚拟化技术(即上图的C区域)。
  如果上层某个应用需要增加的较低延迟介于min和max之间,那么引入这个虚拟化对这个应用是有害的。敲掉这个虚拟化,可以增加这个应用的延迟需求以min值满足(也就是上图的B区)。
  如果上层某个应用需要增加的较低延迟小于min,即使敲掉当前层的虚拟化,也不能满足这个应用,需要继续向下敲击,共同优化,直到延迟得到满足(即上图的A区)。
领取试听课
每天限量名额,先到先得

尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/3851/news/416749/违者必究! 以上就是武汉达内IT教育培训机构 小编为您整理 虚拟化与性能的矛盾的全部内容。

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-035-8011