当前位置: 首页 > news >正文

【优化调度】基于遗传算法GA异构分布式计算系统上实时并行工作流的能量最小化调度附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、程序设计科研仿真。

🍎完整代码获取 定制创新 论文复现点击:Matlab科研工作室

👇 关注我领取海量matlab电子书和数学建模资料

🍊个人信条:做科研,博学之、审问之、慎思之、明辨之、笃行之,是为:博学慎思,明辨笃行。

🔥 内容介绍

当今大规模并行工作流常于异构分布式计算平台上处理。从经济角度看,计算资源提供商需在提供高服务质量的同时将成本降至最低。能耗在计算系统总成本中占比巨大,且及时性与可靠性是两项重要的服务指标。本文研究在响应时间与可靠性约束下,对并行工作流进行调度以最小化系统能耗的问题。首先将此问题数学建模为非线性混合整数规划问题,鉴于其直接求解难度大,故提出若干高效启发式解决方案。具体而言,先开发一种在满足可靠性要求的同时最小化调度长度的算法,在此基础上,利用动态电压频率缩放(DVFS)技术提出处理器合并算法与松弛时间回收算法以降低能耗。处理器合并算法尝试关闭部分能源利用效率低的处理器,从而实现能耗最小化。DVFS 技术应用于处理器和任务层面以降低处理器频率进而减少能耗。在两个实际工作流及大量合成并行工作流上的实验结果证明了这些算法的有效性。

一、引言

随着信息技术的飞速发展,大规模并行工作流在科学研究、商业应用等诸多领域得到广泛应用。异构分布式计算平台因其强大的计算能力和灵活性,成为处理这些工作流的常用选择。然而,在追求高性能计算的同时,能耗问题日益凸显。计算资源提供商不仅要确保服务的及时性和可靠性,还要考虑成本效益,而能耗是成本的重要组成部分。因此,研究如何在异构分布式计算系统上对实时并行工作流进行能量最小化调度具有重要的现实意义。

二、问题建模

三、启发式算法设计

(一)满足可靠性要求的调度长度最小化算法

  1. 任务优先级计算:根据任务在 DAG 中的位置和依赖关系,计算每个任务的优先级。例如,离工作流结束节点越近且依赖任务越少的任务优先级越高。

  2. 处理器选择策略:对于每个任务,按照处理器的计算能力从高到低的顺序进行尝试分配,选择能最早完成该任务且满足可靠性要求的处理器。在计算完成时间时,考虑任务之间的依赖关系和处理器上已分配任务的执行情况。

(二)处理器合并算法

  1. 能耗效率评估:计算每个处理器在当前任务分配情况下的能耗效率,能耗效率定义为单位能耗所完成的计算量。

  2. 处理器关闭决策:从能耗效率低的处理器开始,尝试关闭该处理器,并将其分配的任务重新分配到其他处理器上。重新分配任务时,遵循满足可靠性要求的调度长度最小化算法的分配策略。若重新分配后仍能满足响应时间和可靠性约束,则关闭该处理器,以减少系统能耗。

(三)基于 DVFS 技术的松弛时间回收算法

  1. 松弛时间计算:在满足响应时间约束的前提下,计算每个任务的松弛时间。松弛时间是指任务可以延迟开始而不影响整个工作流截止时间的时间量。

  2. 频率调整策略:对于每个任务,根据其松弛时间和处理器的频率 - 能耗关系,利用 DVFS 技术降低处理器频率。具体来说,在处理器层面,若多个任务共享一个处理器,根据这些任务的总松弛时间调整处理器频率;在任务层面,对于单个任务,根据其自身松弛时间调整处理器频率。通过降低频率来减少能耗,同时确保任务仍能在截止时间内完成。

四、基于遗传算法(GA)的实现

⛳️ 运行结果

📣 部分代码

function succArray = pickUpSuccFuc(matrixF,i)vector = matrixF(i,:);succArray = [];for go = 1:size(vector, 2)if vector(go) > 0succArray = [succArray, go];endend

🔗 参考文献

[1] Hu B , Cao Z , Zhou M .Energy-Minimized Scheduling of Real-Time Parallel Workflows on Heterogeneous Distributed Computing Systems[J].IEEE Transactions on Services Computing, 2021, PP(99):1-1.DOI:10.1109/TSC.2021.3054754.

🍅更多免费数学建模和仿真教程关注领取

http://www.jsqmd.com/news/1023460/

相关文章:

  • Hotkey Detective:5分钟定位Windows热键冲突的侦探工具
  • Kubernetes 编程 / Operator 专题【左扬精讲】—— 深入理解 ManagedFields 字段冲突协调机制
  • 3个理由让你选择Awesome-Deep-Community-Detection:从复杂网络中发现隐藏社区的终极指南
  • 碧蓝航线全自动脚本终极指南:如何彻底解放双手告别肝游戏
  • HarmonyOS pc实战之Column 的 alignItems的交叉轴对齐
  • 架构师视点:基于 Docker 与边缘计算的百路异构视频中台,如何实现 GB28181/RTSP 统一接入与源码交付?
  • GOES卫星火点监测实战:从亮温反演到村级预警终端
  • CANN Graph AutoFusion深度实践:昇腾NPU计算图自动算子融合的Pass调度策略与内存带宽优化调优实录
  • 闲置黄金如何变现 2026黔西南回收价格与靠谱门店指南 - 余生黄金回收
  • ppt模板_0099_深蓝网格
  • 基于Swoole和ThinkPHP6的高性能开源客服系统设计与实现——以众邦科技CRMChat为例
  • [数据结构]《时间复杂度优化误区:单层 for 真的比双层更快吗?》
  • 微信平台搭建投票评选活动完整流程 - 投票评选活动
  • 哔哩哔哩Linux客户端:打破平台限制的完整解决方案
  • 企业为什么要统一管理Agent
  • WELearn网课助手:告别熬夜刷题,5分钟实现英语学习效率翻倍
  • Modus Themes性能优化:让高对比度主题在低配电脑上流畅运行的终极指南
  • 聚簇索引和非聚簇索引的区别
  • Delta Lake + Flink 近实时数据湖 Schema 演化实战
  • 基于矮猫鼬优化算法DMOA的多无人机协同集群避障路径规划算法研究,目标函数:最低成本:路径、高度、威胁、转角附Matlab代码
  • 2026年6月国内靠谱的泡沫托厂家选哪家,水果泡沫箱/草莓泡沫包装箱/海鲜泡沫包装箱/工业品泡沫箱,泡沫托定制哪家好 - 品牌推荐师
  • PiStorm故障排除终极指南:常见问题解决和硬件兼容性检查清单
  • 临沧市_闲置爱马仕、劳力士变现指南:临沧市奢侈品手表包包回收门店实地测评 - 奢金汇
  • 乌鲁木齐闲置黄金变现攻略与靠谱门店推荐 - 余生黄金回收
  • GR-3(通用机器人VLA模型)
  • TeslaMate实战部署指南:从零搭建你的专属特斯拉数据中心
  • PostgreSQL向量搜索革命:pgvector扩展深度解析与实践指南
  • 【状态估计】基于无卡尔曼滤波器和卡尔曼滤波器实现GPS-INS融合对6自由度无人机的状态估计附matlab代码
  • [Linux]从发行版差异到系统排查:一份Linux部署指令的入门混搭笔记
  • 美团浏览器:面向本地服务优化的垂直浏览器架构解析