Researchers from the MIT’s Computer Science and Artificial Intelligence Laboratory (CSAIL) led by professor Arvind have built a server cache system which, by relying on flash memory rather than dynamic random-access memory (DRAM), could save energy, lower costs, and allow for the use of fewer caching servers by data center operators.
The project was presented at the International Conference on Very Large Databases, under the name “BlueCache.”
The basis of the study is that while a DRAM cache has a faster access time than one built with flash, the latter uses twenty times less energy for 100 times the storage density, while costing a tenth of the price.
The group set out to prove that despite being slower by default, flash memory could prove a better medium for cache storage, since it is possible to make up for high latency by creating efficiencies in the system’s design.
Researchers achieved this by “pipelining” queries coming into the data center, a process whereby data sets were processed in parallel, so that an initial query would take the most amount of time but any following requests were faster.
Then, they added a small amount of DRAM to every cache to identify cache misses, developed a hardware circuit to read, write and delete values from the cache (rather than relying on software) and maximized the bandwidth efficiency of the “bus” connection between flash and the central processor by creating a system whereby queries were gathered to reach the connection’s capacity limit before being sent to memory.
The consortium found that by making such alterations, BlueCache could match a DRAM-based cache server system in terms of write efficiency, but because flash retrieves 8 kilobytes for every operation, it only matched DRAM read efficiency for queries over 8kB.
The project was endorsed by Vijay Balakrishnan, Samsung’s director of the data center performance and ecosystem program at the company’s semiconductor memory solutions lab, who stated that “the viability of this type of system extends beyond caching.”
“By integrating programmable chips with flash and rewriting the software stack, they have demonstrated that a fully scalable, performance-enhancing storage technology […] can greatly improve upon prevailing architectures.”