Memory is a scarce resource during embedded system design. Increasing memory often increases packaging costs, cooling costs, size, and power consumption. In this talk, we describe CRAMES, an efficient software-based RAM compression technique for embedded systems. The goal of CRAMES is to dramatically increase effective memory capacity without hardware or application design changes, while maintaining high performance and low energy consumption. To achieve this goal, CRAMES takes advantage of an operating system's virtual memory infrastructure by storing swappedout pages in compressed format. It dynamically adjusts the size of the compressed RAM area, protecting applications capable of running without it from performance or energy consumption penalties. In addition to compressing working data sets, CRAMES also enables efficient in-RAM filesystem compression, thereby further increasing usable RAM capacity.
CRAMES was implemented as a loadable module for the Linux kernel and evaluated on a batterypowered embedded system. Experimental results indicate that CRAMES is capable of doubling the amount of RAM available to applications with the original system hardware on the target platform. Performance and energy penalties are typically negligible and are small even in the worst case.
Short bio Prof. R. Dick
Robert Dick received his B.S. degree from Clarkson University and his Ph.D. from Princeton University. He worked as a Visiting Researcher at NEC Labs America, a Visiting Professor at Tsinghua University's Department of Electronic Engineering, and is currently an Assistant Professor at Northwestern University's Department of Electrical Engineering and Computer Science. Robert won his department's Best Teacher of the Year award in 2004. He has published in the areas of embedded system synthesis, mobile ad-hoc network protocols, reliability, behavioral synthesis, data compression, embedded operating systems, and thermal analysis of integrated circuits.
Short bio Prof Li Shang
Li Shang received his B.E. degree with honor from Tsinghua University and his Ph.D. from Princeton University. He is currently an Assistant Professor at Queen's University's Department of Electrical and Computer Engineering. He has published in the areas of computer architecture, computer-aided design of integrated circuits and systems, thermal/power modeling and optimization, and mobile computing. He is a member of the IEEE and ACM.