【技术实现步骤摘要】
【国外来华专利技术】用于动态工作队列管理的技术政府权利条款本专利技术是在由国防部授予的合同号H98230-13-D-0124下由政府支持完成的。政府对本专利技术享有一定的权利。相关美国专利申请的交叉引用本申请要求于2016年3月31日提交的题为“TECHNOLOGIESFORDYNAMICWORKQUEUEMANAGEMENT的美国专利申请序列号15/087,536的优先权。
技术介绍
个人、研究人员和企业对计算设备的计算性能和存储容量的增加的需求导致已经开发了各种计算技术来满足这些需求。例如,计算密集型应用(例如,基于企业云的应用(例如,软件即服务(SaaS)应用)、数据挖掘应用、数据驱动建模应用、科学计算问题解决应用等)通常依赖于复杂的、大规模计算环境(如,高性能计算(HPC)环境和云计算环境)用于执行计算密集型应用,以及存储大量数据。这种大规模计算环境可以包括通过高速互连连接的数万个多处理器/多核计算设备。通常,由于在任何给定时间产生的不可预测的工作量,此类应用需要持续的动态负载平衡以实现可缩放的性能和可用性。因此,已经开发了各种负载平衡技术(例如,域名系统(DNS)负载平衡、云负载平衡、图分区、主管-工作者平衡等),以在各种计算设备上高效地分配动态可分配的工作负载。通常在HPC环境中使用的一种这样的负载平衡方法通常被称为工作窃取,其中计算设备产生工作,然后将工作添加到本地队列。继而,其他计算设备从生产者的队列中读取或者“窃取”工作,以便消费或者以其他方式执行被盗工作。附图说明在此描述的概念在附图中以示例而非限制的方式示出。为了说明的简单和清楚起见,图中所示的元件不一定按比例 ...
【技术保护点】
1.一种用于动态工作队列管理的生产者计算设备,所述生产者计算设备包括:一个或者多个处理器;以及一个或者多个存储器设备,其中存储有多个指令,所述多个指令当由所述一个或者多个处理器执行时,使得所述生产者计算设备用于:从消费者计算设备接收弹出请求,其中,所述弹出请求包括一个或者多个消费约束;确定所述生产者计算设备的生产者工作队列的有效工作可用性,其中,所述生产者工作队列包括多个工作元素,其中,所述有效工作可用性指示所述生产者工作队列中的能够被拉取的工作元素的数量;基于所述有效工作可用性和所述一个或者多个消费约束来确定接收的弹出请求是否能够被满足;确定一个或者多个生产者度量,所述消费者计算设备能够使用所述一个或者多个生产者度量以确定由所述消费者计算设备要执行的后续动作;响应于确定所述接收的弹出请求不能被满足,生成包括所述生产者度量中的一个或者多个的失败消息;以及将所述失败消息发送到所述消费者计算设备。
【技术特征摘要】
【国外来华专利技术】2016.03.31 US 15/087,5361.一种用于动态工作队列管理的生产者计算设备,所述生产者计算设备包括:一个或者多个处理器;以及一个或者多个存储器设备,其中存储有多个指令,所述多个指令当由所述一个或者多个处理器执行时,使得所述生产者计算设备用于:从消费者计算设备接收弹出请求,其中,所述弹出请求包括一个或者多个消费约束;确定所述生产者计算设备的生产者工作队列的有效工作可用性,其中,所述生产者工作队列包括多个工作元素,其中,所述有效工作可用性指示所述生产者工作队列中的能够被拉取的工作元素的数量;基于所述有效工作可用性和所述一个或者多个消费约束来确定接收的弹出请求是否能够被满足;确定一个或者多个生产者度量,所述消费者计算设备能够使用所述一个或者多个生产者度量以确定由所述消费者计算设备要执行的后续动作;响应于确定所述接收的弹出请求不能被满足,生成包括所述生产者度量中的一个或者多个的失败消息;以及将所述失败消息发送到所述消费者计算设备。2.如权利要求1所述的生产者计算设备,其中,所述多个指令还使所述生产者计算设备用于确定所述生产者工作队列的当前大小和当前在所述生产者工作队列中的工作元素的数量,并且其中,确定所述有效工作可用性包括根据所述生产者工作队列的当前大小和当前在所述生产者工作队列中的工作元素的数量来确定所述有效工作可用性。3.如权利要求1所述的生产者计算设备,其中,确定所述有效工作可用性包括:基于工作分发规则集中的一个或者多个规则来确定所述有效工作可用性,其中,所述一个或者多个规则定义如何分发来自所述生产者工作队列的元素。4.如权利要求3所述的生产者计算设备,其中,所述工作分发规则集中的所述一个或者多个规则定义以下中的至少一个:对于每个接收到的弹出请求要返回的工作元素的最小数量、对于每个接收到的弹出请求要返回的工作元素的最大数量或者对于每个接收到的弹出请求要返回的元素的分数。5.如权利要求1所述的生产者计算设备,其中,所述生产者度量包括以下中的至少一个:在所述弹出请求被接收到时相对于所述生产者工作队列的数据、所述弹出请求被发往的所述生产者计算设备的历史数据、或者与另一生产者计算设备相对应的信息。6.如权利要求5所述的生产者计算设备,其中,在所述弹出请求被接收到时相对于所述生产者工作队列的所述数据包括以下中的至少一个:所述生产者工作队列中的工作元素总量、所述生产者工作队列中的可用工作元素总量、或者所述生产者工作队列的当前容量。7.如权利要求5所述的生产者计算设备,其中,所述历史数据包括以下中的至少一个:工作生产的历史、或者工作分发的历史。8.如权利要求5所述的生产者计算设备,其中,与另一生产者计算设备相对应的信息包括以下中的至少一个:所述生产者计算设备最近从其拉取工作的另一生产者计算设备的标识信息、或者另一生产者计算设备的标识信息。9.如权利要求1所述的生产者计算设备,其中,所述多个指令还使所述生产者计算设备用于:对所述生产者工作队列中的要被返回的每个元素执行弹出操作;响应于确定所述接收的弹出请求能够被满足,生成包括所述生产者工作队列中的要被返回的元素的成功消息;并且将所述成功消息发送到所述消费者计算设备。10.如权利要求9所述的生产者计算设备,其中,将所述成功消息发送到所述消费者计算设备包括:发送所述生产者度量中的一个或者多个和所述工作元素。11.如权利要求1所述的生产者计算设备,其中,所述消费约束包括以下中的至少一个:请求的所述生产者工作队列的工作元素的大小、要接收的所述生产者工作队列的可接受工作元素范围、要接收的所述生产者工作队列的工作元素的上限阈值、要接收的所述生产者工作队列的工作元素的下限阈值、或者要接收的所述生产者工作队列的工作元素的分数。12.一种用于动态工作队列管理的方法,所述方法包括:由生产者计算设备从消...
【专利技术属性】
技术研发人员:D·凯佩尔,U·R·哈内布特,M·弗拉伊斯利克,J·迪南,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。