25 research outputs found

    A methodology to automatically optimize dynamic memory managers applying grammatical evolution

    Full text link
    Modern consumer devices must execute multimedia applications that exhibit high resource utilization. In order to efficiently execute these applications, the dynamic memory subsystem needs to be optimized. This complex task can be tackled in two complementary ways: optimizing the application source code or designing custom dynamic memory management mechanisms. Currently, the first approach has been well established, and several automatic methodologies have been proposed. Regarding the second approach, software engineers often write custom dynamic memory managers from scratch, which is a difficult and error-prone work. This paper presents a novel way to automatically generate custom dynamic memory managers optimizing both performance and memory usage of the target application. The design space is pruned using grammatical evolution converging to the best dynamic memory manager implementation for the target application. Our methodology achieves important improvements (62.55\% and 30.62\% better on average in performance and memory usage, respectively) when its results are compared to five different general-purpose dynamic memory managers

    Parallel and Distributed Optimization of Dynamic Data Structures for Multimedia Embedded Systems

    Get PDF
    Energy-efficient design of multimedia embedded systems demands optimizations in both hardware and software. Software optimization has no received much attention, although modern multimedia applications exhibit high resource utilization. In order to efficiently run this kind of applications in embedded systems, the dynamic memory subsystem needs to be optimized. A key role in this optimization is played by the Dynamic Data Types (DDTs) that reside in every reallife application. It would be desirable to organize this set of DDTs to achieve the best performance in the target embedded system. This problem is NP-complete, and cannot be fully explored. In these cases the use of parallel processing can be very useful because it allows not only to explore more solutions spending the same time, but also to implement new algorithms. In this work, we propose a method that uses parallel processing and evolutionary computation to explore DDTs in the design of embedded applications. We propose a parallel Multi-Objective Evolutionary Algorithm (MOEA) which combines NSGA-II and SPEA2. We use Discrete Event Systems Specification (DEVS) to implement this parallel evolutionary algorithm over Service Oriented Architecture (SOA). Parallelism improves the solutions found by the corresponding sequential algorithms, and it allows system designers to reach better solutions than previous approximation

    Study of Microscopic Residual Stresses in an Extruded Aluminium Alloy Sample after Thermal Treatment

    Get PDF
    Abstract: A method is proposed to calculate the microscopic residual stresses in extruded cylindrical samples of non-ageing aluminium alloy 5083 (Al–Mg), arising from quenching in fresh water from 530°C. We start from the premise that the alloy is single-phase and non-isotropic on a microscopic scale; it consists of many grains that exhibit different mechanical response depending on their crystallographic orientation and neighboring grains. Microscopic residual stresses depend on the applied heat treatment, microstructure and mechanical strength of the individual grains. The stresses were calculated from neutron diffraction data. Genetic programming algorithms were used to calculate microscopic residual stresses, considering that each diffraction peak describes the stress distribution of a group of grains having a certain orientation, size and environment. The algorithm assigns a stress value to each grain according to the distribution of the diffraction peaks and the microstructural parameters of these grains.This work was supported by the Madrid Regional Government-FEDER grant Y2018/NMT-4668 (Micro-Stress-MAP-CM) and the project MAT2017-83825-C4-1-R. We would also like to express our gratitude to FLNR-JINP for the beam time allocated on the FSD instrument, and to the HeuristicLab Software developers
    corecore