今天的內(nèi)存壓縮存技術(shù)雖然省錢,但是存在很大的問題,其原理是在更小的空間內(nèi)存儲更多數(shù)據(jù)。問題在于計算機是在預(yù)置好的內(nèi)存塊中存儲和運行的,而許多現(xiàn)代程序是在不定數(shù)量的內(nèi)存塊中運行的。
這種方式實際上效率非常低。正在從事Zippads革命性新壓縮系統(tǒng)研究的科研人員解釋道,這是因為被壓縮的程序用的是對象,而不是已經(jīng)均勻配置好的數(shù)據(jù)塊,這導(dǎo)致它們無法與存儲和運行它們的空間匹配在一起。
這些研究人員稱,壓縮各種對象而不是高速緩存線路是解決這一問題的答案。如果它們正常工作將能夠大大減少那些低效率工作,加快速度,重要的是降低計算成本。高速緩存線路是用于內(nèi)存緩存的固定大小的內(nèi)存塊。
Po-An Tsai和Daniel Sanchez在麻省理工學(xué)院計算機科學(xué)與人工智能實驗室的論文中寫道,“對象是壓縮的自然單位,而不是高速緩存線路。”
基于對象的程序(例如每天都在被使用的Python)應(yīng)該根據(jù)它們的編程對象大小進行壓縮,而不是根據(jù)由傳統(tǒng)甚至是最先進的緩存方法創(chuàng)建的某些固定值進行壓縮。
替代方案也不能因為壓縮方面效率低下而不計后果地放棄面向?qū)ο蟮木幊?。它們必須讓壓縮技術(shù)能夠適應(yīng)目前常見的代碼。
研究人員稱他們的新系統(tǒng)可以將壓縮比提高1.63倍,將性能提高17%,同時這也是“首個針對基于對象的應(yīng)用程序設(shè)計的壓縮內(nèi)存體系”。
壓縮的優(yōu)勢
壓縮是一種可提高計算機效率的技術(shù)。簡單增加更多內(nèi)存的主要優(yōu)勢是成本會顯著降低。由于用戶正在將更多數(shù)據(jù)塞進現(xiàn)有內(nèi)存中,因此用戶不需要增加物理的主內(nèi)存硬件。
盡管如此,到目前為止,硬件內(nèi)存壓縮最適合的還是老式的大型數(shù)據(jù)塊,而不是“隨機的高細粒度的內(nèi)存訪問”。例如,它不能很好地訪問小塊數(shù)據(jù),例如單詞。
Zippads壓縮系統(tǒng)是如何工作的
在Zippads中,當(dāng)調(diào)用新系統(tǒng)時,存儲對象層級(稱為“pad”)位于芯片上并直接被訪問。不同層級(pad)有著不同的速度等級,新引用的對象被放置在最快的pad中。當(dāng)pad被填充時,它開始去除較舊的且不那么活躍的對象,并最終回收未使用的代碼,因為這些代碼占用了速度較快的空間并且未被使用。在速度級別方面,代碼部分沒有被壓縮,但是當(dāng)被證明沒有用時,它們會被踢到被壓縮的、訪問速度慢的且重要性較低的pad上,不過如果有必要它們可以被重新恢復(fù)到原來的位置。
麻省理工學(xué)院的一篇文章認為,Zippads會“看到計算機可以運行得更快,或者可以以相同的速度運行更多的應(yīng)用程序”。“每個應(yīng)用程序消耗更少的內(nèi)存,運行速度更快,因此設(shè)備可以在其分配的內(nèi)存中支持更多應(yīng)用程序。”換句話說,帶寬被釋放出來了。
計算機科學(xué)與電氣工程教授Sanchez稱:“所有的計算機系統(tǒng)都將從中受益。程序?qū)⒆兊酶?,因為它們不再受到?nèi)存帶寬的限制。”
作者:Patrick Nelson為多個技術(shù)博客的撰稿人,同時還是《Producer Report》刊物的編輯兼出版人,小說《蔓延主義》的作者。
編譯:陳琳華
原文網(wǎng)址:https://www.networkworld.com/article/3392716/revolutionary-data-compression-technique-could-slash-compute-costs.html