Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MPI改变主设备和从设备的执行顺序

MPI改变主设备和从设备的执行顺序
EN

Stack Overflow用户
提问于 2013-10-15 05:14:36
回答 1查看 367关注 0票数 0

我有两个程序: master和slave。我的主人做数据分解,从机器做分解后的数据的计算。MPI scaterv是为了分配工作而实现的,我先执行主程序,然后它动态生成子进程或从进程,从进程执行不同的代码ie.computation。现在,master必须再次从slaves收集结果,并执行下一级分解。我如何使用MPI来做到这一点?我实际上想交替执行我的主代码和从代码..我如何实现这一点?

提前谢谢你..

EN

回答 1

Stack Overflow用户

发布于 2013-10-15 08:11:21

MPI-2 (如果我没记错的话)引入了动态进程管理机制,您可能需要搜索mpi_comm_spawn来开始了解这些机制。因此,当然可以编写一个MPI程序,该程序在运行主任务的一个进程和运行辅助任务的多个进程之间交替(术语从任务已被弃用)。甚至可以设计计算,使一个程序运行主任务,另一个程序运行(多个)工作任务,并使用MPI在两者之间传递消息。

但是(这是一个很大的问题,但是)我不认为很多资源管理器(管理并行计算机系统或操作系统和系统软件的人,如作业管理器)支持这种动态进程管理。想象一下使用您提出的基本设计来安排和管理两个或更多程序的复杂性。正如程序A尝试启动2^10个工作进程一样,程序B和程序C也尝试启动2^10个工作进程,而程序D尝试删除2^8个工作进程;所有这一切都发生在一个只有2^10个处理器(或核心)的集群上。当多个作业争用稀缺资源时,构建集群上的作业吞吐量降至零的场景可能并不太难。

如果您的平台支持动态进程管理,请继续。在更有可能的情况下,你的平台没有,你至少有两个选择,你选择哪一个取决于master:worker时间的比率,可能还有其他因素。您可以:

  1. 做了我们大多数人一直在做的事情,并继续这样做,并为整个作业请求总数量的处理器,在仅主机阶段,除了一个处理器之外,其余所有处理器都处于空闲状态。这可能很浪费,但资源管理器很容易处理。
  2. 如果主程序在工作阶段之间做了很多工作,你可以修改你的程序,使主程序和工作程序是独立的程序。首先让主进程在一个进程上执行,当它完成时,向作业管理系统提交一个请求,以启动工作进程计算的第一阶段。依次启动下一个主阶段的执行,依此类推。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19373738

复制
相关文章
在 JavaScript 中如何克隆对象?
我们假设一个变量 name 具有一个与之关联的原始值(number,string,boolean,undefined 和null)。 如果我们将此变量 name 复制到另一个变量name2 ,则原始变量的任何修改都不会影响到第二个变量,因为它们是原始值。
前端小智@大迁世界
2022/06/15
4.9K0
触发器在渗透中的利用
0x01 什么是触发器: 触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约束更加复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。SQL Server 2005中触发器可以分为两类:DML触发器和DDL触发器,其中DDL触发器它们会影响多种数据定义语言语句而激发,这些语句有create、alter、drop语句。 0x02 问题描述: a)通
逸鹏
2018/04/09
1.5K0
触发器在渗透中的利用
详解JavaScript之神奇的Object.defineProperty
摘要: JavaScript有个很神奇的Object.defineProperty(),了解一下?
Fundebug
2018/07/05
6060
在 Kubernetes 中,如何动态配置本地存储?
Kubernetes 中使用节点的本地存储资源有 emptyDir、hostPath、Local PV 等几种方式。这之中,emptyDir 无法持久化数据,hostPath 方式需要手动管理卷的生命周期,运维压力大。因此在某些场景下,如果用户出于性能和运维成本考虑需要使用本地存储,Local PV 似乎是唯一选择。
CNCF
2019/12/05
3.5K0
在 Kubernetes 中,如何动态配置本地存储?
95 - 在Flask中如何使用动态路由
1. 静态路由和动态路由有什么区别? 路由 Utl Path http://loaclhost/abc/test.html 静态路由 Path与路由函数一一对应 动态路由 多个Path与同一个路由函数对应 http://loaclhost/abc/test.html http://loaclhost/xyz/test.html 不管访问哪一个Url,都会执行同一个服务端的路由函数 2. 如何使用Flask实现动态路由 ''' pip install flack ''' from flask import
ruochen
2021/06/27
5.6K0
95 - 在Flask中如何使用动态路由
在 Kubernetes 中,如何动态配置本地存储?
Kubernetes 中使用节点的本地存储资源有 emptyDir、hostPath、Local PV 等几种方式。这之中,emptyDir 无法持久化数据,hostPath 方式需要手动管理卷的生命周期,运维压力大。因此在某些场景下,如果用户出于性能和运维成本考虑需要使用本地存储,Local PV 似乎是唯一选择。
kubernetes中文社区
2019/08/27
3.2K0
在 Kubernetes 中,如何动态配置本地存储?
【译】如何避免在JavaScript中阻塞DOM
原文链接:https://www.sitepoint.com/avoiding-dom-blocking/
腾讯IVWEB团队
2020/06/28
2.9K0
JavaScript中动态生成表格
行:<input type="text" id="row" value="5"><br>
马克社区
2022/04/19
2.1K0
在直播app制作过程中,服务器是如何配置的?
不论是一对多直播还是一对一直播app制作,关于服务器的配置和成本是大多数运营商比较关心和头疼的问题。一般来说,在直播app运营的每个阶段,所安排的服务器台数和负责的功能都是不一样的。那么如何在有限的成本中搭配出高效的服务器模组?针对这个问题,小编今天就给各位初入直播行业的运营商说明一下。
就爱吃小笼包
2019/09/26
2K0
在直播app制作过程中,服务器是如何配置的?
利用PPT如何设计制作创意相框
很多人都希望自己的PPT能够独具匠心,在展示图片或制作电子相册时,总想让图片有个新颖、独特的相框,而PPT自带的图片边框显得“力不从心”。如果利用自选图形,再经过边线及内部填充等设置,就能够制作出具有创意效果的相框。下面iSlide就讲述微立体相框和水晶相框的制作技法。
纸醉金迷i
2022/01/27
4.2K0
利用PPT如何设计制作创意相框
Vue2.X是如何利用Object.defineProperty()实现数据绑定的
Vue2.X是如何利用Object.defineProperty()实现数据绑定的
伯约同学
2022/02/15
4800
经典笔试题-在HTML中如何包含JavaScript?
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
cwl_java
2019/11/20
2K0
如何制作自己的原生 JavaScript 路由
当你想到路由时,通常会想到类似 React 之类的库。但实际上,这些库和框架仍然使用 vanilla JavaScript。那么该怎么实现呢?
疯狂的技术宅
2020/03/27
4K0
利用c语言制作简易计算器
学了c语言之后,总想着能用c语言能制作一些简单的小工具来。而利用c语言来制作一款简易的计算器是一个不错的选择,用这款计算器可以计算的加、减、乘、除。
诸葛青云
2018/09/05
4.7K0
javascript 动态函数如何创建?
JavaScript作为一门动态语言,提供了多种创建动态函数的方法。动态函数的创建允许我们在运行时根据需要生成函数,从而实现灵活的编程和动态逻辑。本文将介绍动态函数的概念,探讨几种常用的方法来创建动态函数,并分享一些动态函数的应用场景。
海拥
2023/06/27
6760
javascript 动态函数如何创建?
如何采集javascript动态加载网页
从一个运行 javascript 的网站加载所有数据来加载内容,目前的问题是当运行启动代码时它无法加载 javascript 内容,因为用户应该向下滚动才能加载。如何编写启动代码来滚动整页呈现 javacript 并返回 html呢?
jackcode
2023/05/24
1K0
如何采集javascript动态加载网页
如何利用 JavaScript 实现并发控制
  例如一个爬虫程序,可以通过限制其并发任务数量来降低请求频率,从而避免由于请求过于频繁被封禁问题的发生。
Nealyang
2021/01/28
1.6K0
如何利用 JavaScript 实现并发控制
在Scrapy中如何利用CSS选择器从网页中采集目标数据——详细教程(上篇)
前几天给大家分享了Xpath语法的简易使用教程,没来得及上车的小伙伴可以戳这篇文章:在Scrapy中如何利用Xpath选择器从网页中采集目标数据——详细教程(上篇)、在Scrapy中如何利用Xpath选择器从网页中采集目标数据——详细教程(下篇)。今天小编给大家介绍Scrapy中另外一种选择器,即大家经常听说的CSS选择器。
Python进阶者
2020/11/03
3K0
在Scrapy中如何利用CSS选择器从网页中采集目标数据——详细教程(上篇)
在Scrapy中如何利用CSS选择器从网页中采集目标数据——详细教程(下篇)
前几天给大家分享了Xpath语法的简易使用教程,没来得及上车的小伙伴可以戳这篇文章:在Scrapy中如何利用Xpath选择器从网页中采集目标数据——详细教程(上篇)、在Scrapy中如何利用Xpath选择器从网页中采集目标数据——详细教程(下篇)、在Scrapy中如何利用CSS选择器从网页中采集目标数据——详细教程(上篇)。之前还给大家分享了在Scrapy中如何利用CSS选择器从网页中采集目标数据——详细教程(上篇),没来得及上车的小伙伴可以戳进去看看,今天继续上篇的内容往下进行。
Python进阶者
2020/11/03
2.8K0
在Scrapy中如何利用CSS选择器从网页中采集目标数据——详细教程(下篇)
在C中,如何知道动态分配是否成功
C语言使用 malloc函数动态在堆上分配内存。malloc根据字节数的参数。如果无法分配内存,该函数将返回指向已分配内存的指针或 NULL 指针。
mariolu
2021/11/06
2.8K0

相似问题

在列表中按索引查找min/max

22

按索引jQuery查找子项

30

Python:在多维列表中按范围查找索引

329

如何在jquery中按索引查找td

310

按索引在泛型列表中查找对象

33
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档