Improving data locality with loop transformations
ACM Transactions on Programming Languages and Systems (TOPLAS)
A very fast algorithm for RAM compression
ACM SIGOPS Operating Systems Review
Advanced compiler design and implementation
Advanced compiler design and implementation
Wireless integrated network sensors
Communications of the ACM
Code compression for low power embedded system design
Proceedings of the 37th Annual Design Automation Conference
Loop Transformations for Restructuring Compilers: The Foundations
Loop Transformations for Restructuring Compilers: The Foundations
Lossless Compression of High-volume Numerical Data from Simulations
DCC '00 Proceedings of the Conference on Data Compression
IWIA '01 Proceedings of the Innovative Architecture for Future Generation High-Performance Processors and Systems (IWIA'01)
MANTIS: system support for multimodAl NeTworks of in-situ sensors
WSNA '03 Proceedings of the 2nd ACM international conference on Wireless sensor networks and applications
Analyzing and modeling encryption overhead for sensor network nodes
WSNA '03 Proceedings of the 2nd ACM international conference on Wireless sensor networks and applications
LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation
Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization
Distributed regression: an efficient framework for modeling sensor network data
Proceedings of the 3rd international symposium on Information processing in sensor networks
Analysis of wireless sensor networks for habitat monitoring
Wireless sensor networks
Memory overflow protection for embedded systems using run-time checks, reuse and compression
Proceedings of the 2004 international conference on Compilers, architecture, and synthesis for embedded systems
Synopsis diffusion for robust aggregation in sensor networks
SenSys '04 Proceedings of the 2nd international conference on Embedded networked sensor systems
Optimization of in-network data reduction
DMSN '04 Proceeedings of the 1st international workshop on Data management for sensor networks: in conjunction with VLDB 2004
TAG: a Tiny AGgregation service for Ad-Hoc sensor networks
OSDI '02 Proceedings of the 5th symposium on Operating systems design and implementationCopyright restrictions prevent ACM from being able to make the PDFs for this conference available for downloading
Software design patterns for TinyOS
LCTES '05 Proceedings of the 2005 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
CRAMES: compressed RAM for embedded systems
CODES+ISSS '05 Proceedings of the 3rd IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis
Segment protection for embedded systems using run-time checks
Proceedings of the 2005 international conference on Compilers, architectures and synthesis for embedded systems
Proceedings of the 3rd international conference on Embedded networked sensor systems
Proceedings of the 4th international conference on Mobile systems, applications and services
High-performance operating system controlled memory compression
Proceedings of the 43rd annual Design Automation Conference
Telos: enabling ultra-low power wireless research
IPSN '05 Proceedings of the 4th international symposium on Information processing in sensor networks
Adaptive main memory compression
ATEC '05 Proceedings of the annual conference on USENIX Annual Technical Conference
Offline compression for on-chip ram
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
The case for compressed caching in virtual memory systems
ATEC '99 Proceedings of the annual conference on USENIX Annual Technical Conference
Query Processing in Sensor Networks
IEEE Pervasive Computing
IBM memory expansion technology (MXT)
IBM Journal of Research and Development
Enix: a lightweight dynamic operating system for tightly constrained wireless sensor platforms
Proceedings of the 8th ACM Conference on Embedded Networked Sensor Systems
Enabling ultra-low power operation in high-end wireless sensor networks nodes
Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis
Hi-index | 0.00 |
Random access memory (RAM) is tightly constrained in the least expensive, lowest-power embedded systems such as sensor network nodes and portable consumer electronics. The most widely used sensor network nodes have only 4 to 10KB of RAM and do not contain memory management units (MMUs). It is difficult to implement complex applications under such tight memory constraints. Nonetheless, price and power-consumption constraints make it unlikely that increases in RAM in these systems will keep pace with the increasing memory requirements of applications. We propose the use of automated compile-time and runtime techniques to increase the amount of usable memory in MMU-less embedded systems. The proposed techniques do not increase hardware cost, and require few or no changes to existing applications. We have developed runtime library routines and compiler transformations to control and optimize the automatic migration of application data between compressed and uncompressed memory regions, as well as a fast compression algorithm well suited to this application. These techniques were experimentally evaluated on Crossbow TelosB sensor network nodes running a number of data-collection and signal-processing applications. Our results indicate that available memory can be increased by up to 50% with less than 10% performance degradation for most benchmarks.