This paper describes a new approach to the problem of optimizing the use of memory resources in high performance, scalable computing systems. The approach is automatic and broadly applicable to a wide variety of system architectures. It consists of a hybrid genetic algorithm optimizer (the Embedded Genetic Allocator or EGA), coupled with a high-precision software performance monitoring system. The EGA requires no programmer knowledge of the underlying non-uniform memory access (NUMA) architecture of the target hardware; the programmer simply specifies the data buffers to be allocated and requires that certain groups of buffers share the same quality of performance. The EGA minimizes the execution time of time-critical portions of the target system by generating allocations of target program data buffers to various banks of memory in the NUMA architecture. These trial allocations are loaded and evaluated directly on the target hardware. Measurements of process execution time are derived from accurate, synchronized event logging of multiple processors performed by the BBN TraceMakeP product. The timing data provides the information for an "optimizer cost function" which the genetic algorithm uses when selecting from amongst competing allocations.Thus, the EGA automates the trial and error method of hand optimization. We have recently demonstrated the EGA performing memory allocation optimizations on a typical VME based multiprocessor DSP system and completed a set of optimization experiments.The results presented here demonstrate that the EGA can be used to optimize the memory allocation problem on a DSP with a real-world piece of code, and that the resulting optimizations can rival or even improve upon those generated manually by a skilled programmer.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.