超线程技术优缺点分析

日期:2016-11-3作者:Stephen J. Bigelow翻译:王学强来源:TechTarget中国 英文

【TechTarget中国原创】

超线程技术并不能应用在所有环境中,对于不同的情况来说,其有可能帮助提升虚拟服务器的性能表现,但是反过来也有可能造成负面影响,而获得良好性能表现的关键就在于判断应该何时使用这种技术。

超线程是一种计算机处理器技术,能够将一个物理处理器变成两个虚拟处理器。这种方式能够提升处理器核心的指令队列工作效率,从而提高处理器的整体性能表现,此外虚拟化技术也能够受益于这种技术。这种技术允许hypervisor为虚拟机提供之前两倍的虚拟处理器数量——但是超线程技术并不是完美的。如果使用超线程技术,那么效率低下、质量不佳的代码甚至是分配不当的负载都有可能对系统性能造成负面影响。

问题:超线程技术是什么?其能够为hypervisor带来哪些好处?

超线程是英特尔公司的私有技术,其能够帮助提升物理处理器的资源使用效率,保证处理器一直处于繁忙状态,以便完成更多工作。

超线程技术——也被称为HTT或HT——的出现是由于传统物理服务器核心在同一时间只能处理一项任务。所有负载都需要使用处理器的指令通道,但是通常指令通道的使用率并不会达到100%或者一直处于繁忙状态。造成这种现象的部分原因在于应用程序的编码和运行方式不同,此外,由于现代处理器的运行速度越来越快,已经完全超出许多应用程序的需求,因此被浪费的处理器周期越来越多。

超线程技术在处理器核心中添加了新的电路,能够提供额外的指令通道来共享物理处理器的执行资源,比如内存总线、处理器缓存以及处理器的执行引擎。增加的超线程电路能够将物理核心分割成两个逻辑核心。在启用超线程技术之后,每个逻辑处理器都相互独立,中断、停止和操作都独立于另外一个共享相同物理核心的虚拟处理器。当某个逻辑核心空闲时,另外一个逻辑核心将会得到更多的执行资源。

关于超线程技术需要记住的重要一点是在相同物理核心上启用第二个逻辑处理器并不会使得处理器的性能提升一倍。这是因为处理器的执行资源是共享的,并没有翻倍。HTT技术允许处理器在特定时间内处理更多的任务或者指令线程,但是仍然需要使用原有的物理资源完成这些任务。这是超线程架构和多核处理器——比如双核或者四核——的最大区别,多核技术拥有多个物理处理器。

而虚拟处理器的性能提升幅度取决于负载对于处理器的资源需求以及操作系统管理和规划逻辑处理器的能力。如果超线程技术不能识别操作系统,就会使用同样的方式管理所有逻辑处理器,可能会将资源需求很大的负载放在相同核心的逻辑处理器上——这样会对应用程序的性能表现造成负面影响——而同时其他核心并没有得到充分利用。与此形成对比的是,能够识别操作系统的超线程技术可以将线程分配到不同的处理器上,最大程度上提升负载的性能表现。

比如,如果某个应用程序需要使用大量处理器资源,就会一直占用指令队列,那么即便同一个物理处理器核心提供额外的逻辑处理器也无济于事——因为物理处理器已经没有额外的资源可以共享。操作系统可以将第二个线程加入到处理队列中,但是通常其性能表现会非常差,此外,由于其会占用当前运行线程的处理器周期,因此还会导致现有应用程序性能受到影响。Hypervisor或者操作系统应该能够识别HTT,并且最大程度上提升负载对于物理处理器的使用效率,这些都是分配逻辑处理器的前提。如果这个前提不能实现,那么超线程(并非虚拟化)功能应该被禁用。

从hypervisor系统角度来看,超线程并不是虚拟化技术——HTT只是一种位于处理器硬件层、以硬件为基础的虚拟化技术。而虚拟化和hypervisor能够带来哪些好处?超线程和hypervisor之间并没有直接的关联。Hypervisor能够工作在不支持超线程技术的物理处理器上,而支持超线程的处理器也可以使用非虚拟化系统。但是这两种方案可以相互补充,而像VMware vSphere这样的现代hypervisor在创建资源池并且将虚拟CPU分配给虚拟机时已经能够识别并且使用超线程技术。这种方式能够在组织和计划任务方面为hypervisor提供更多的灵活性,因此能够提升虚拟服务器的工作效率。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

评论
shao guoxing 发表于:2016-11-29 19:05 回复
对HT有了更深入的了解
dsh_wang 发表于:2016-11-27 12:22 回复
学习了,谢谢原创者。
查看更多评论

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者>更多

Stephen J. Bigelow
Stephen J. Bigelow

数据中心和虚拟化网站的高级技术编辑,拥有20年的PC和技术写作经验。

服务器与虚拟化>更多

  • 超线程处理器使用前:检查系统需求

    超线程提供了性能优势,在管理程序中使用超线程时,超线程利用未使用的处理器资源,使处理器保持忙碌的状态,完成更多的任务。

  • 管理员应该何时避免使用超线程技术?

    新手系统管理员最常犯的错误之一就是认为使用超线程技术与添加一个全新内核是一样的——但实际情况并非如此。

  • 超线程技术优缺点分析

    超线程是一种计算机处理器技术,能够将一个物理处理器变成两个虚拟处理器。这种方式能够提升处理器核心的指令队列工作效率,从而提高处理器的整体性能表现。

  • VMware vCenter Server之于企业:作用可在?

    VMware vCenter Server是 为VMware vSphere的一个集中化监测和资源管理工具。它可以通网络浏览器管理,允许管理员在世界的任何位置管理他们公司的虚拟环境。

相关推荐

技术手册>更多

  • 如何扩展与管理虚拟架构?

    管理员在使用和管理他们的虚拟化基础架构中将遇到哪些问题?该如何解决?本技术手册将介绍解决问题的方法、策略和工具。

  • 提高Hyper-V动态迁移五大技巧

    停机时间曾经是虚拟机迁移过程中令人痛苦的荆棘。但动态迁移改变了这种情况。现在,动态迁移消除了停机时间,除此之外仍然有一些方法可以来改善将虚拟机从一个物理主机移动到其他地方的方法。速度和安全是提高Hyper-V动态迁移的两大焦点。其中包括加快和自动化保护迁移过程的方法和策略。下面我们提供了提升Hyper-V动态迁移速度和安全的五种不同方式。

  • 虚拟化hypervisor:VMware ESXi全面解析

    VMware ESXi是VMware的嵌入式hypervisor。ESXi没有服务控制台,可以说是一个精简版的ESX。对于由于成本和硬件还没有开始实施虚拟化的组织来说,使用免费的VMware ESXi hypervisor不失为着手虚拟化的好方式。在本次虚拟化技术专题中,我们TechTarget中国的虚拟化专家将详细讲解VMware ESXi的安装、配置、管理、迁移等实用技术。

  • 开源虚拟化:KVM介绍

    Linux虚拟化技术的用户目前有两种免费的开源管理程序可以选择:Xen和KVM。KVM是一个轻量级的虚拟化管理程序模块,该模块主要来自于Linux内核。由于其性能和实施的简易性,以及对Linux重量级的持续支持,所以还是有必要认真对待KVM技术的。

TechTarget

最新资源
  • 存储
  • CIO
  • 网络
  • 服务器
  • 数据中心
  • 云计算