问题标签 [communicator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 使用 MPI_COMM_SELF
我发现了一个名为 MPI_COMM_SELF 的 MPI 通信器。问题是,我不知道,它什么时候有用。在我看来,只是每个进程都“认为”自己是根。
你能解释一下它MPI_COMM_SELF
到底是如何工作的,在什么情况下它有用吗?
我找到了这个幻灯片,但那里只是简单地提到了通讯器。
我已经尝试过这个“Hello, world”示例,所有进程都返回 0 作为它们的 PID。
int - 在一个 MPI 应用程序中可以启动的最大任务数
在 C 绑定中,MPI_Comm_size 返回一个int
类型值。C中的最大值int
是32767。是不是意味着一个通信器最多可以创建32K个进程?但这似乎太小了,因为我知道有些应用程序可以在数百万个内核上运行。我错过了什么?
python - mpi4py - 获取进程自己的通信器
我们目前正在开发一个 mpi4py 项目,我们希望将进程分组到不同的组中。然后我们将这些组分配给他们自己的传播者。这些步骤由进程 0 完成。
现在的问题是其他进程如何找出它们属于哪个通信器?
请注意,这些组的大小不同,例如,第一组包含 5 个进程,第二组包含 3 个进程。那么,进程 4(在第一组中)如何从第一组中获取通信器。
fortran - MPI 太多的传播者?
代码的想法是并行打开一个文件,然后每个内核读取该大文件的不同部分。ir_start
因此ir_stop
每个核心都不同。
我有以下代码(更大代码的一部分):
代码系统崩溃的问题:
在我看来(我可能完全错了)可能有太多的通讯器打开。
问题是我不能CALL MPI_Comm_free(world_comm)
在q
-loop 中做类似的事情,因为它会杀死代码。
有没有办法让每个内核都使用相同的内核world_comm
而不创建新内核?
c - 带有自定义 MPI Communicator 的 MPI_Barrier
我正在尝试为 MPI_COMM_WORLD 中的一部分进程设置 MPI_Barrier,如下所示:
(其中ranks
是所需秩的数组,是该数组num
的大小) 上面的代码在 MPI_Barrier 处导致 NULL 通信器错误。
我还尝试了以下方法:
(color
如果当前排名在所需的子集中,则设置为 1,否则设置为 0)上面的代码没有效果,屏障似乎根本不起作用。
任何帮助将不胜感激,谢谢:)
c++ - 无法编译返回 MPI::Comm 类型对象的函数
要使用 MPI 运行我的软件,我需要创建一个简单的方法来返回MPI::COMM_WORLD
.
所以在我的课堂上,我们有:
我应该如何实现该getCommunicator()
方法才能返回MPI::COMM_WORLD
?当我尝试编译上述内容时,出现以下错误:
mpi - 创建用于读取文件的 MPI 通信器
我需要一些关于 MPI 传播者的帮助,这是一个我相对较新的主题。
我有一个 MPI 代码,它将从多个输入文件中读取输入。每个进程都会从至少一个文件中读取,大多数会从多个文件中读取。每个文件都会被读取。
我需要为每个文件创建一个通信器。例如,进程 0、1 和 2 从文件“A.dat”中读取,进程 2、3 和 4 从文件“B.dat”中读取,进程 4、5 和 6 从“C.dat”中读取。达”。(实际上会有更多的进程和文件。)所以我需要三个通信器。第一个应包含 procs 0、1 和 2;第二个 2、3 和 4;第三个 4、5 和 6。我不知道如何做到这一点。有谁知道怎么做?
mpi - Need help understanding MPI_Comm_create
Regarding MPI_Comm_create, the MPI standard says
MPI_COMM_CREATE(comm, group, newcomm)
... The function is collective and must be called by all processes in the group of comm.
I took this to mean that, for instance, if the comm argument is MPI_COMM_WORLD, then all processes must call MPI_COMM_WORLD.
However, I wrote a variation on a code available on the internet demonstrating the use of MPI_Comm_create. It is below. You can see that there are two spots where MPI_Comm_create is called, and not by all processes. And yet the code runs just fine.
Did I get lucky? Did I stumble onto some implementation-dependent feature? Am I misunderstanding the MPI standard? Is the idea that the two calls together result in everyone calling MPI_Comm_create so "at the end of the day" it's OK? Thanks. Here's the code:
c# - C# Pcap.net 通信
我想问一下为什么我的通讯器接收到发送的帧。我正在尝试使用标志 PacketDeviceOpenAttributes.NoCaptureLocal 来解决此问题以接收通信器,但我仍在接收已发送的帧。谁能知道如何解决这个问题?谢谢你。这是我的代码:
android - 单击列表片段上的项目时如何将信息传递给片段
我有一个包含项目列表的片段列表 SecondActivityListFragment。如果单击列表中的某个项目,我想将此单击项目的信息传递给另一个名为 ItemViewFragment 的片段。我创建了一个名为 Communicator 的接口类,但我不知道如何传递信息。
SecondActivityListFragment
主要活动
项目视图片段
沟通者