A parallel evolutionary algorithm to optimize dynamic memory managers in embedded systems

José L. Risco-Martín, David Atienza, J. Manuel Colmenar, Oscar Garnica
{"title":"A parallel evolutionary algorithm to optimize dynamic memory managers in embedded systems","authors":"José L. Risco-Martín, David Atienza, J. Manuel Colmenar, Oscar Garnica","doi":"arxiv-2407.09555","DOIUrl":null,"url":null,"abstract":"For the last thirty years, several Dynamic Memory Managers (DMMs) have been\nproposed. Such DMMs include first fit, best fit, segregated fit and buddy\nsystems. Since the performance, memory usage and energy consumption of each DMM\ndiffers, software engineers often face difficult choices in selecting the most\nsuitable approach for their applications. This issue has special impact in the\nfield of portable consumer embedded systems, that must execute a limited amount\nof multimedia applications (e.g., 3D games, video players and signal processing\nsoftware, etc.), demanding high performance and extensive memory usage at a low\nenergy consumption. Recently, we have developed a novel methodology based on\ngenetic programming to automatically design custom DMMs, optimizing\nperformance, memory usage and energy consumption. However, although this\nprocess is automatic and faster than state-of-the-art optimizations, it demands\nintensive computation, resulting in a time consuming process. Thus, parallel\nprocessing can be very useful to enable to explore more solutions spending the\nsame time, as well as to implement new algorithms. In this paper we present a\nnovel parallel evolutionary algorithm for DMMs optimization in embedded\nsystems, based on the Discrete Event Specification (DEVS) formalism over a\nService Oriented Architecture (SOA) framework. Parallelism significantly\nimproves the performance of the sequential exploration algorithm. On the one\nhand, when the number of generations are the same in both approaches, our\nparallel optimization framework is able to reach a speed-up of 86.40x when\ncompared with other state-of-the-art approaches. On the other, it improves the\nglobal quality (i.e., level of performance, low memory usage and low energy\nconsumption) of the final DMM obtained in a 36.36% with respect to two\nwell-known general-purpose DMMs and two state-of-the-art optimization\nmethodologies.","PeriodicalId":501333,"journal":{"name":"arXiv - CS - Operating Systems","volume":"40 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-06-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Operating Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2407.09555","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

For the last thirty 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 and 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.
优化嵌入式系统动态内存管理器的并行进化算法
在过去的三十年里,人们提出了多种动态内存管理器(DMM)。这些动态内存管理器包括首次拟合、最佳拟合、隔离拟合和萌芽系统。由于每种 DMM 的性能、内存使用量和能耗都不尽相同,软件工程师在为其应用选择最合适的方法时常常面临困难的抉择。这个问题在便携式消费嵌入式系统领域有着特殊的影响,因为这些系统必须执行数量有限的多媒体应用(如 3D 游戏、视频播放器和信号处理软件等),要求高性能、高内存使用率和低能耗。最近,我们开发了一种基于遗传编程的新方法,用于自动设计定制的 DMM,优化性能、内存使用和能耗。然而,虽然这一过程是自动的,而且比最先进的优化方法更快,但它需要密集的计算,导致过程耗时。因此,并行处理非常有用,可以在相同的时间内探索更多的解决方案,并实现新的算法。本文基于面向服务架构(SOA)框架下的离散事件规范(DEVS)形式,提出了一种用于嵌入式系统中 DMMs 优化的高级并行进化算法。并行化大大提高了顺序探索算法的性能。一方面,当两种方法的代数相同时,我们的并行优化框架与其他最先进的方法相比,速度提高了 86.40 倍。另一方面,与两种已知的通用 DMM 和两种最先进的优化方法相比,我们的并行优化框架提高了最终 DMM 的整体质量(即性能水平、低内存使用率和低能耗)36.36%。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信