磁层动力学与航天器充电的耦合分析
1. 轮询过程与 API 功能
轮询过程主要由耦合器(Coupler)和工作器(Worker)执行,CoToCoA 框架为此提供了 API 函数。具体如下:
- 耦合器轮询内容 :不断轮询是否有请求者(Requester)发出的计算请求、请求者处理结束的通知以及工作器处理完成的通知。
- 工作器轮询内容 :持续轮询耦合器转发的计算请求,以及请求者的请求是否正在被耦合器转发。
这些功能通过诸如 MPI Iprobe 和 MPI Probe 等函数以固定间隔调用实现。通知类型通过传入消息中包含的标签信息来区分。
CoToCoA 框架提供了相应的 API 函数,用于从请求者、耦合器和工作器分别发送各种通知,主要功能有:
1. 请求者向耦合器发出计算请求。
2. 耦合器将计算请求转发给工作器。
3. 工作器向耦合器通知计算任务已完成。
4. 请求者向耦合器通知所有请求已发出。
5. 耦合器向工作器通知所有请求已转发。
2. 数值数据的代码间交换
CoToCoA 根据不同情况提供了几种数据交换方法,考虑到每个程序异步执行自身的计算。具体方法如下:
|交换方法|适用情况|实现方式|
| ---- | ---- | ---- |
|方法一|发送的数据已在请求者上生成|在发出计算请求的同时传输必要的物理数据,通过标准阻塞型通信(如 MPI Send 和 MPI Recv)实现|
|方法二|一个程序(请求者或工作器)在计算过程中需要引用另
超级会员免费看
订阅专栏 解锁全文
29

被折叠的 条评论
为什么被折叠?



