MIT 开发廉价闪存设备,处理图数据性能堪比服务器

简介: 麻省理工学院计算机科学与人工智能实验室(CSAIL)的研究人员设计出一种设备,使用廉价的闪存,仅使用一台个人电脑就能处理大量的图形,达到与数千美元的传统服务器一致的性能。研究者认为,这将彻底改变我们处理大数据的方式。

在数据科学的说法中,图(graph)是指用于映射大量复杂的数据关系的节点(nodes)和连接线(connecting lines)的结构。分析graph在许多应用中非常有用,例如网页排名、分析社交网络以获取政治见解,或者绘制大脑的神经元结构。

然而,由数十亿个节点和线组成的大型 graphs 大小可以达到TB级。通常来说,图数据的处理需要跨多个耗电量大的服务器,在昂贵的动态随机存取存储器(DRAM)中进行。

最近,麻省理工学院计算机科学与人工智能实验室(CSAIL)的研究人员设计出一种设备,使用廉价的闪存(智能手机中使用的那种),仅使用一台个人电脑就能处理大量的图形。

5f4ea95834f255411628e3cea24a402430881539

该设备包含一个闪存芯片阵列(图中黑色的8个芯片)和一个计算“加速器”(芯片阵列左边)。研究人员提出一种新算法,将图形数据的所有访问请求排序为闪存可以轻松访问的顺序,同时合并一些请求以减少排序开销。

闪存芯片阵列+计算加速器,在个人电脑达到服务器级性能

在处理图数据时,闪存通常比DRAM慢得多。但研究人员开发出一种由闪存芯片阵列和计算“加速器”组成的设备,可以使闪存达到类似于DRAM的性能。

驱动该设备的是一种新的算法,它可以将图数据的所有访问请求排序为闪存可以快速、轻松访问的顺序。它还将一些请求合并,以减少排序的开销——组合计算时间、内存、带宽和其他计算资源。

研究人员使用该设备与几个传统的高性能系统一起处理几个大型图,包括庞大的Web Data Commons Hyperlink Graph,该Graph有35亿个节点和1280亿个连接线。为了处理这个Graph,传统的系统需要耗资数千美元的服务器,以及128GB的DRAM。研究人员将两台新设备(总计1GB的DRAM和1TB的闪存)接入台式电脑,获得了同样的性能。此外,通过合并几个设备,可以处理更大的图——多达40亿个节点和1280亿个连接线——而其他系统无法在128G的服务器上处理这些图。

917b4ba42fc9b10fb122dbc0b0b876b5fe65c482

研究人员将两台设备(总计1GB的DRAM和1TB的闪存)接入一台台式电脑,获得了与数千美元的传统服务器同样的性能。

CSAIL的研究生、论文第一作者Sang-Woo Jun说:“最重要的是,我们可以用更小功耗、更少、温度更低的设备保持一样的性能。”该研究发表在今年的国际计算机体系结构研讨会(ISCA)上。

该设备可以用于降低与图形分析相关的成本和能耗,甚至可以在许多应用中提高性能。例如,研究人员目前正在开发一个程序,可以识别导致癌症的基因。谷歌等大型科技公司也可以利用这些设备,通过使用更少的机器来运行分析,以减少能源消耗。

“图形处理(graph processing)是一个很普遍的想法,”该研究的合作者、计算机科学工程系教授Arvind说,“网页排名和基因检测有什么共同之处呢?对我们来说,它们是相同的计算问题,只不过不同的graph表达的含义不同。”

论文合著者还有CSAIL的两名研究生Shuotao Xu和Andy Wright,以及电子工程与计算机科学系的Sizhuo Zhang。

sort-reduce算法

在图分析中,系统根据节点与其他节点的连接以及其他度量指标来搜索和更新节点的值。例如,在网页排名中,每个节点代表一个网页。如果节点A具有较高的值并连接到节点B,那么节点B的值也会增加。

传统的系统将所有图数据存储在DRAM中,这使得它们在处理数据时速度很快,但也导致成本昂贵而且耗电。有些系统将部分数据存储卸载到闪存上,这种方式更便宜,但速度更慢,效率更低,因此仍需要大量的DRAM。

CSAIL研发的新设备运行在被称为“sort-reduce”的算法上,该算法解决了使用闪存作为主要存储源的一个主要问题:浪费

图分析系统需要通过大量的、稀疏的图结构访问彼此间距离很远的节点。系统通常请求直接访问4到8字节的数据,以更新节点的值。DRAM提供了非常快速的直接访问。然而,闪存只能访问4KB到8KB的数据块,但仍然只更新几个字节。在跳过图形时,重复访问每个请求会浪费带宽。

sort-reduce算法转而采用所有的直接访问请求,并按照标识符的顺序对它们进行排序,标识符显示请求的目的地——例如将节点A的所有更新分成一组,全部分配给节点B。这样,闪存就可以同时访问数千个kilobyte大小的chunks的请求,从而大大提高效率。

为了进一步节省计算力和带宽,该算法同时将数据合并到尽可能最小的分组中。只要算法记录了匹配的标识符,它就将这些数据加载到一个数据包中——例如将A1和A2合并成A3。这种做法重复多遍,用匹配的标识符创建越来越小的数据包,直到产生可进行排序的最小数据包。这大大减少了访问重复请求的数量。

研究人员在两个大型graphs上使用 sort-reduce 算法,将需要在闪存中更新的全部数据减少了大约90%

定制加速器

然而,对于主机来说, sort-reduce算法的计算量很大。因此,研究人员在设备中添加一个定制加速器。加速器在主机和闪存芯片之间充当中间点,执行算法的所有计算。这为加速器大大减少了电量消耗,以至于可以用一个低功耗的PC或笔记本电脑作为主机,用来管理已排序的数据并执行其他次要任务。

Arvind说:“加速器本来是用来帮助主机进行计算的,但是目前的结果显示,主机变得不那么重要了。”

“MIT的这个工作展示了一种在非常大的图上执行分析的新方法:利用闪存存储图形,并利用FPGA(定制的集成电路)以巧妙的办法执行所需的数据处理和分析,“德克萨斯大学奥斯汀分校计算机科学教授Keshav Pingali说,“从长远来看,这可能使得系统能够在笔记本电脑或台式机上有效地处理大量数据,这将彻底改变我们处理大数据的方式。”

MIT的研究人员说,由于主机的耗能很低,他们的长期目标是创建一个通用的平台和软件库,以便用户为图分析之外的应用开发自己的算法。Jun说:“你可以把这个平台插入笔记本电脑,下载这个软件,然后编写简单的程序,就可以在你的笔记本电脑上获得服务器级的性能。”


原文发布时间为:2018-06-4

本文作者:刘小芹

本文来自云栖社区合作伙伴新智元,了解相关信息可以关注“AI_era”。

原文链接:MIT 开发廉价闪存设备,处理图数据性能堪比服务器

相关文章
|
21天前
|
存储 Oracle 关系型数据库
服务器数据恢复—EVA存储硬盘读写性能不稳定掉线的数据恢复案例
服务器存储数据恢复环境: 一台EVA某型号控制器+EVA扩展柜+FC磁盘。 服务器存储故障&检测: 磁盘故障导致该EVA存储中LUN不可用,导致上层应用无法正常使用。
88 47
|
2天前
|
存储 机器学习/深度学习 编解码
阿里云服务器计算型c8i实例解析:实例规格性能及使用场景和最新价格参考
计算型c8i实例作为阿里云服务器家族中的重要成员,以其卓越的计算性能、稳定的算力输出、强劲的I/O引擎以及芯片级的安全加固,广泛适用于机器学习推理、数据分析、批量计算、视频编码、游戏服务器前端、高性能科学和工程应用以及Web前端服务器等多种场景。本文将全面介绍阿里云服务器计算型c8i实例,从规格族特性、适用场景、详细规格指标、性能优势、实际应用案例,到最新的活动价格,以供大家参考。
|
16天前
|
存储 弹性计算 网络协议
深度对比阿里云服务器ECS通用型g7、g7a、g8i、g8y、g8ise和g8a性能对比
阿里云ECS通用型g7、g7a、g8i、g8y、g8ise和g8a云服务器性能对比,涵盖CPU、内存、网络、存储等多方面参数。这些实例适用于多种企业级应用场景,如数据库、Web应用、大数据处理等。
58 1
|
21天前
|
人工智能 安全 Linux
|
22天前
|
存储 机器学习/深度学习 编解码
阿里云服务器计算型c7、c8a、c8y、c8i实例性能、适用场景区别及选择参考
随着阿里云2024年金秋云创季的开始,目前在阿里云的活动中,属于计算型实例规格的云服务器有计算型c7、计算型c8a、计算型c8y和计算型c8i这几个实例规格,相比于活动内的经济型e和通用算力型u1等实例规格来说,这些实例规格等性能更强,虽然这几个实例规格的云服务器通常处理器与内存的配比为都是1:2,但是他们在处理器、存储、网络、安全等方面等性能并不是一样的,所以他们的适用场景也有着不同。本文为大家介绍计算型c7、c8a、c8y、c8i实例的性能、适用场景的区别以及选择参考。
|
24天前
|
关系型数据库 API 数据库
后端开发的艺术:从零到一构建高效服务器
在数字化时代,后端开发是支撑现代互联网应用的基石。本文旨在探讨后端开发的核心概念、关键技术以及如何构建一个高效的服务器。我们将从基础的编程语言选择开始,逐步深入到数据库设计、API开发和性能优化等关键领域。通过实际案例分析,我们将揭示后端开发的复杂性和挑战性,同时提供实用的解决方案和最佳实践。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的见解和启发。
|
28天前
|
存储 安全 网络协议
阿里云服务器通用型g7、通用型g8y、通用型g8i实例性能和适用场景对比与选择参考
目前阿里云在售的云服务器中,主要包含了第6代、第7代、第8代实例规格的云服务器产品,在选择云服务器实例规格时,对于需要平衡计算、存储和网络性能的应用场景来说,通用型g7、通用型g8y和通用型g8i实例是许多用户的热门选择。为了帮助大家更好地了解这三款实例的区别,并为选择提供参考,本文将详细对比它们的实例规格、CPU、内存、计算、存储、网络等方面的性能,并附上活动价格对比。让大家了解一下他们之间的不同,以供参考选择。
|
28天前
|
存储 数据挖掘
服务器数据恢复—用RAID5阵列中部分盘重建RAID5如何恢复原raid5阵列数据?
服务器数据恢复环境: 一台服务器挂接一台存储,该存储中有一组由5块硬盘组建的RAID5阵列。 服务器故障: 存储raid5阵列中有一块硬盘掉线。由于RAID5的特性,阵列并没有出现问题。工作一段时间后,服务器出现故障,用户方请人维修。维修人员在没有了解故障磁盘阵列环境的情况下,用另外4块硬盘(除去掉线的硬盘)重新创建了一组全新的RAID5阵列并完成数据同步,导致原raid5阵列数据全部丢失。
|
19天前
|
存储 弹性计算 固态存储
阿里云服务器ESSD Entry系统盘测评IOPS、IO读写和时延性能参数
ESSD Entry云盘是阿里云推出的新一代云盘,具备高IOPS、低延迟和企业级数据保护能力。适用于开发与测试场景,支持按量付费和包年包月计费模式。99元和199元的ECS经济型e实例和通用算力型u1实例均采用ESSD Entry系统盘,性价比高。详细性能参数和价格请参考阿里云官方页面。
55 0
|
27天前
|
存储 分布式计算 安全
阿里云服务器内存型r7、内存型r8y、内存型r8i实例规格性能对比与选择参考
在选择阿里云服务器实例规格时,针对内存密集型应用和数据库应用,内存型r7、内存型r8y和内存型r8i实例是这部分应用场景选择最多的热门实例规格。为了帮助大家更好地了解这三款实例的区别,并为选择提供参考,本文将详细对比它们的实例规格、CPU、内存、计算、存储、网络等方面的性能,并附上活动价格对比。让大家了解一下他们之间的不同,以供参考选择。