A customisable memory management framework for C++
Software—Practice & Experience
Composing high-performance memory allocators
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
The C++ Programming Language
Introduction to the Theory of Computation
Introduction to the Theory of Computation
Using MPI-2: Advanced Features of the Message Passing Interface
Using MPI-2: Advanced Features of the Message Passing Interface
Multi-Objective Optimization Using Evolutionary Algorithms
Multi-Objective Optimization Using Evolutionary Algorithms
Theory of Modeling and Simulation
Theory of Modeling and Simulation
An Empirical Study of Multipopulation Genetic Programming
Genetic Programming and Evolvable Machines
Evaluating Integrated Hardware-Software Optimizations Using a Unified Energy Estimation Framework
IEEE Transactions on Computers
Dynamic Storage Allocation: A Survey and Critical Review
IWMM '95 Proceedings of the International Workshop on Memory Management
Grammatical Evolution: Evolutionary Automatic Programming in an Arbitrary Language
Grammatical Evolution: Evolutionary Automatic Programming in an Arbitrary Language
Biologically Inspired Algorithms for Financial Modelling (Natural Computing Series)
Biologically Inspired Algorithms for Financial Modelling (Natural Computing Series)
Efficient system-level prototyping of power-aware dynamic memory managers for embedded systems
Integration, the VLSI Journal - Special issue: Low-power design techniques
Systematic dynamic memory management design methodology for reduced memory footprint
ACM Transactions on Design Automation of Electronic Systems (TODAES)
Energy-efficient dynamic memory allocators at the middleware level of embedded systems
EMSOFT '06 Proceedings of the 6th ACM & IEEE International conference on Embedded software
Is the island model fault tolerant?
Proceedings of the 9th annual conference companion on Genetic and evolutionary computation
Constant creation in grammatical evolution
International Journal of Innovative Computing and Applications
A parallel evolutionary algorithm to optimize dynamic data types in embedded systems
Soft Computing - A Fusion of Foundations, Methodologies and Applications - Special issue (1143 - 1198) " Distributed Bioinspired Algorithms"; Guest editors: F. Fernández de Vega, E. Cantú-Paz
GEVA: grammatical evolution in Java
ACM SIGEVOlution
Optimization of dynamic memory managers for embedded systems using grammatical evolution
Proceedings of the 11th Annual conference on Genetic and evolutionary computation
A Field Guide to Genetic Programming
A Field Guide to Genetic Programming
Online mapping of MPI-2 dynamic tasks to processes and threads
International Journal of High Performance Systems Architecture
An Introduction to Evolutionary Computation in Finance
IEEE Computational Intelligence Magazine
IEEE Transactions on Evolutionary Computation
Multi-objective optimization of dynamic memory managers using grammatical evolution
Proceedings of the 13th annual conference on Genetic and evolutionary computation
Hi-index | 0.00 |
For the last 30 years, several dynamic memory managers (DMMs) have been proposed. Such DMMs include first fit, best fit, segregated fit and buddy systems. Since the performance, memory usage and energy consumption of each DMM differs, software engineers often face difficult choices in selecting the most suitable approach for their applications. This issue has special impact in the field of portable consumer embedded systems, that must execute a limited amount of multimedia applications (e.g., 3D games, video players, signal processing software, etc.), demanding high performance and extensive memory usage at a low energy consumption. Recently, we have developed a novel methodology based on genetic programming to automatically design custom DMMs, optimizing performance, memory usage and energy consumption. However, although this process is automatic and faster than state-of-the-art optimizations, it demands intensive computation, resulting in a time-consuming process. Thus, parallel processing can be very useful to enable to explore more solutions spending the same time, as well as to implement new algorithms. In this paper we present a novel parallel evolutionary algorithm for DMMs optimization in embedded systems, based on the Discrete Event Specification (DEVS) formalism over a Service Oriented Architecture (SOA) framework. Parallelism significantly improves the performance of the sequential exploration algorithm. On the one hand, when the number of generations are the same in both approaches, our parallel optimization framework is able to reach a speed-up of 86.40x when compared with other state-of-the-art approaches. On the other, it improves the global quality (i.e., level of performance, low memory usage and low energy consumption) of the final DMM obtained in a 36.36% with respect to two well-known general-purpose DMMs and two state-of-the-art optimization methodologies.