42、动态核心绑定实现负载均衡

动态核心绑定实现负载均衡

1. 引言

在并行计算中,负载均衡是提高性能和降低能耗的关键。本文介绍了一种基于动态核心绑定(DCB)的方法,旨在改善并行应用程序的性能和能耗。该方法集成了改变核心数量以提升性能和降低能耗的思想,并考虑了节点间的负载均衡。

2. 动态核心绑定(DCB)
2.1 DCB 概念

DCB 的基本概念是通过改变每个进程绑定的核心数量来均衡核心间的负载。其目标是基于 OpenMP/MPI 混合的并行应用程序。在一般的混合并行环境中,每个进程绑定的核心数量相同。在核心级别进行负载均衡可以减少计算时间和/或能耗。

例如,若“进程 1”的计算量是“进程 2”的三倍,那么分配给核心 1 - 4 的计算量也会是核心 5 - 8 的三倍。通过 DCB 的基本概念,有望减少核心间的负载不均衡。

在 OpenMP 中,“omp_set_num_threads”函数可改变线程数量,但不能改变每个进程可用的核心数量。改变每个进程绑定的核心数量需要系统调用,如“sched_set_affinity”。DCB 库内部调用这些系统调用,允许用户轻松受益于每个进程绑定不同数量核心的环境,且使用普通权限即可。

2.2 绑定策略

DCB 库实现了两种策略来提高并行性能或降低应用程序的能耗:
- RC 策略 :专注于减少应用程序的计算时间。所有核心根据负载绑定到进程。核心数量 $c_p$ 的计算公式如下:
[c_p = \left\lfloor\frac{l_p}{\sum_{\tilde{p} \in P_n}l_{\tilde

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值