系统与设计
的意见

长尾巴的虫子可能是代价高昂的害虫

在服务器和高性能计算的世界里,最小的效率低下都可能导致大问题。

受欢迎程度

我不认为梵高考虑的是高性能计算或服务器架构,但他说的“伟大的事情是由一系列小事组合而成的”这句话很有道理。一系列非常小的事情能够、也确实能够创造出大事:这是长尾营销的基本前提:比如亚马逊(Amazon)就是通过销售数百万件小众商品建立起了强大的业务。但是,对“长尾”的另一种解释给高性能计算平台带来了潜在的麻烦,它可能指向痛苦且往往代价高昂的问题,而这些问题并不总是显而易见的。

一个很好的例子是一个影响谷歌服务器三年的问题:一个bug影响了25%的系统,这相当于遍布谷歌广泛的全球网络的数百万个节点。更多细节可以阅读在这里在Dan Luu的博客上在电子商务领域,即使是微秒的延迟也会对财务产生不可估量的冲击:用户体验中的延迟增加了交易从未完成的机会,并降低了广告点击的可能性:这是一个公认的事实。

当用户使用Facebook时,他们期望即时(毫秒级)的响应——没有意识到看似简单的操作(例如更新他们的时间轴或发布更新)涉及到一个高度复杂的、地理上分散的节点网络,以对更新进行排序、过滤和格式化,以及抓取必要的媒体文件以及相关的广告和推荐。单个查询通常被分解成子进程,并在网络的不同部分进行处理。例如,一个简单的web搜索可能涉及多达100个web服务器刀片,它们在全球网络中“外包”处理任务。

问题是,系统中最小的错误或效率低下都可能产生“异常”事件,从而有可能削弱整个系统。即使只有百分之一的进程受到影响,从统计上讲,通过系统的路由也会在某个时刻受到影响——在整个系统级别上的影响将是用户“看到”99%的最差性能。这些都是有问题的“长尾”问题,控制它们是一项有价值的工作。

服务器依赖于复杂的、通常是异构的多核处理器架构,正是这种技术使服务能够在瞬间交付给世界各地的用户。但是,随着功能的增加,复杂性也显著增加,必须对其进行管理和优化,以确保性能得到维护。

在处理器SoC中嵌入基于硬件、非侵入式、线速智能和条件监控功能,可以收集真实世界行为的粒度数据,不仅是芯片,而且是更广泛的系统。与抽样分析器或应用程序和系统级插装等传统解决方案相比,这种级别的洞察使得更容易关注性能问题,并且具有完全非侵入性的额外好处。基于硬件的方法可以检测影响性能的难以识别的问题——例如,关联管理策略、争用和缓存一致性的问题。

对于SoC制造商来说,它提供了一个主要的差异化点-产品允许客户甚至最终用户在运行时改进和优化构建芯片的服务器基础设施的性能。

我们发表了一篇白皮书,深入介绍了尾部延迟和服务器调试的主题,您可以在这里下载。我在最近的Linley春季处理器会议上也谈到了这一点。如果您想收到幻灯片或了解更多信息,请发送电子邮件至(电子邮件保护)



留言回复


(注:此名称将公开显示)

Baidu