欢迎光临无锡易触达智能科技有限公司官方网站!
语言选择: 中文版 ∷  英文版

科技创新

好消息!科学家开发出新数据压缩技术将运用于计算机

据外媒报道称,麻省理工学院的研究人员近日研发出一种技术,重新考虑硬件数据压缩,从而释放出更多计算机和移动设备使用的内存。

现代计算机中的存储器以固定大小的块管理和传输数据来区分大小而且传统的压缩技术必须在这些块上运行。但是软件自然而然地将其数据存储在固定大小的块中。相反它使用“objects”包含各种类型数据并具有可变大小的数据结构,因此传统的硬件压缩技术很难处理对象。

在最近的一篇论文中,麻省理工学院的研究人员描述了第一种在内存层次中压缩对象的方法。其可以减少内存使用,同时提高性能和效率。

程序员在使用任何以对象形式存储和管理数据的现代编程语言进行编程时,无需更改其代码就可以从这一技术中获益。最后消费者会看到计算机可以运行得更快或者可以以相同的速度运行更多的应用程序。由于每个应用程序消耗的内存较少,因此设备可以在其分配的内存中支持更多应用程序,运行速度将变得更快。

在使用经过修改的Java虚拟机的实验中,该技术压缩了两倍的数据,并将内存使用量减少了一半,超过了传统的基于缓存的方法。

12504657_datacompression_fuben_thumb.jpg

第一作者Po-An Tsai说:“动机试图提出一种新的内存层次结构,可以进行基于对象的压缩,而不是缓存行压缩,因为这是大多数现代编程语言管理数据的方式。”

研究人员在他们之前的工作基础上重新构建了内存架构来直接操作对象。传统体系结构将数据存储在逐渐变大和变慢的存储器的层次结构中,称为“caches”。最近访问的块上升到更小,更快的缓存,而较旧的块移动到较慢和较大的缓存,最终返回主存储器。虽然这个组织很灵活,但成本很高:要访问内存,每个缓存需要在其内容中搜索地址。

在去年10月发表的一篇论文中,研究人员详细介绍了一个名为Hotpads的系统,该系统可以存储整个对象,紧密地分为层级或“pads”。这些级别完全依赖于高效的片上,可以直接寻址的存储器 ,没有一点复杂的搜索需要。

然后程序直接引用pad层次结构中所有对象的位置。新分配和最近引用的对象及其指向的对象保持在更快的级别。当更快的级别填充时,它会运行“eviction”程序,该进程保留最近引用的对象,但将较旧的对象踢到较慢的级别并回收不再有用的对象以释放空间。然后在每个对象中更新指针以指向所有移动对象的新位置。这样程序访问对象的成本比通过缓存级别进行搜索的成本要低得多。

对于他们的新工作,研究人员设计了一种利用Hotpads架构来压缩物体“Zippads”的技术——当对象首先以更快的级别启动时它们将被解压缩,但当他们被驱逐到较慢的水平时他们都被压缩了。跨越所有对象的指针然后指向那些压缩对象,这使得它们易于回忆到更快的级别并且能够比现有技术更紧凑地存储。

然后压缩算法有效地利用对象的冗余。该技术揭示了比先前技术更多的压缩机会,这些技术仅限于在每个固定大小的块内找到冗余,该算法首先选择一些代表性对象作为“base”对象。然后在新对象中,它仅存储这些对象与代表性基础对象之间的不同数据。

                                                                                                     易触达智能科技转摘

联系我们

公 司:无锡易触达智能科技有限公司

联系人:陈经理

电话:15052277876

手机:15052277876

E-mail:yichuda@163.com

地 址:中国江苏省无锡市梁溪区会岸路90号内