当前位置: 首页 > news >正文

免费商城建站平台海南注册公司怎么注册

免费商城建站平台,海南注册公司怎么注册,昌邑网页设计,搭建新平台什么是虚拟进程拓扑 在很多并行应用进程中#xff0c;进程的线性排列不能充分的反映进程间在逻辑上的通信模型#xff0c;通常由问题几何和所用的算法决定#xff0c;进程经常被排列成二维或者三维网络形式的拓扑模型而通常用一个图来描述逻辑进程排列#xff0c;此种逻辑…什么是虚拟进程拓扑 在很多并行应用进程中进程的线性排列不能充分的反映进程间在逻辑上的通信模型通常由问题几何和所用的算法决定进程经常被排列成二维或者三维网络形式的拓扑模型而通常用一个图来描述逻辑进程排列此种逻辑进程排列为虚拟拓扑。 拓扑是组内通信域上的额外可选属性它不能附加在组间通信域(inter-communcator)上拓扑能提供一种方便的命名机制对于由特定拓扑要求的算法使用起来直接自然方便。 拓扑还可以辅助运行时系统将进程映射到实际的硬件结构上。 笛卡尔拓扑 MPI 笛卡尔拓扑是一种二维矩形的结构在这个结构中每个进程都有一个唯一的坐标。这种拓扑结构通常用于实现多维分布式数组的通讯。 使用 MPI_Cart_create 函数可以创建 Cartesian 拓扑并使用 MPI_Cart_shift 函数获取进程在对应维度上的相邻进程的 ran 函数原型 int MPI_Cart_create(MPI_Comm old_comm, int ndims, const int dims[], const int periods[], int reorder, MPI_Comm *comm_cart);int MPI_Cart_shift(MPI_Comm comm, int direction, int displ, int *rank_source, int *rank_dest);MPI_Cart_create参数详解 MPI_Comm old_comm原通讯域。int ndims拓扑结构的维度。const int dims[]每个维度上的进程数量。const int periods[]每个维度上的边界条件非零表示周期性边界零表示非周期性边界。int reorder是否重新排列原通讯域的进程排列方式。MPI_Comm *comm_cart新的通讯子包含 Cartesian 拓扑。 MPI_Cart_shift参数详解 MPI_Comm comm拓扑结构通讯子。int direction相邻进程的维度。int displ进程生下的偏移量一般为 -1 或 1。int *rank_source源进程的 rank。int *rank_dest目标进程的 rank。 代码实例 #include stdio.h #include mpi.hint main(int argc, char* argv[]) {int rank, size;MPI_Comm comm_cart;int dims[2], periods[2], coords[2], reorder;MPI_Init(argc, argv);MPI_Comm_size(MPI_COMM_WORLD, size);// 确定每个维度的大小dims[0] dims[1] 0;MPI_Dims_create(size, 2, dims);// 设置周期性边界条件periods[0] periods[1] 1;reorder 1;MPI_Cart_create(MPI_COMM_WORLD, 2, dims, periods, reorder, comm_cart);// 获取当前进程在 Cartesian 拓扑中的坐标MPI_Comm_rank(comm_cart, rank);MPI_Cart_coords(comm_cart, rank, 2, coords);printf(Rank %d:\tCoords (%d, %d)\n, rank, coords[0], coords[1]);// 获取当前进程在 x 方向上相邻进程的 rankint left, right;MPI_Cart_shift(comm_cart, 0, 1, left, right);printf(Rank %d:\tLeft %d, Right %d\n, rank, left, right);// 获取当前进程在 y 方向上相邻进程的 rankint up, down;MPI_Cart_shift(comm_cart, 1, 1, up, down);printf(Rank %d:\tUp %d, Down %d\n, rank, up, down);MPI_Finalize();return 0;使用 MPI_Cart_create 函数创建了 Cartesian 拓扑然后使用 MPI_Cart_coords 函数获取一个进程在 Cartesian 拓扑中的坐标。最后使用 MPI_Cart_shift 函数获取相邻进程在 Cartesian 拓扑中的 rank。 在本示例中我们假设拓扑是一个二维矩形因此我们使用 MPI_Dims_create 函数以及维度数量和进程总数来计算每个维度的大小。我们还将 periods 数组设置为 {1,1}表示在每个维度的两端都设置周期性边界条件。我们还把 reorder 参数设置为 1以便 MPI 能够以最优方式映射进程到拓扑结构中。 使用 MPI_Cart_create 函数我们创建了一个通讯子该子进程具有 Cartesian 拓扑。接着使用 MPI_Cart_shift 函数以获取当前进程在 x 和 y 方向上相邻进程的 rank。 扩展 一维拓扑结构一维链状结构 每个进程只有一个相邻进程。使用 MPI_Comm_split 函数创建。 多维拓扑结构 每个进程有多个相邻进程。使用 MPI_Cart_create 函数创建。 自定义拓扑结构 可以通过 MPI_Comm_create 函数创建自定义拓扑结构满足特定应用场景的需求。 注 代码用例来自网络仅供参考扫盲学习。
http://www.yayakq.cn/news/3906/

相关文章:

  • wordpress发布网站wordpress怎么安装到服务器
  • 网站用户体验解决方案强大的wordpress瀑布流主题
  • 小猫济南网站建设公司网站建设公司大概多少钱
  • 创建本地网站那些企业网站做的漂亮
  • dell公司网站设计特色c#网站开发案例源码
  • 厦门网站优化北京站网站建设
  • 做专属淘客网站网络营销的特点有
  • 建设银行网站用户名怎么查静态网站建设报告
  • 外包网站建设公司广告版面设计图片
  • 做ppt好的网站有哪些wordpress站点后台
  • 网站规划开发前景html5开发安卓app
  • 无锡做网站的哪里有建设网站
  • 财务公司网站模板wordpress博客三栏主题
  • 婚恋网站的渠道网络建设智能建站软件
  • 游戏自助充值网站怎么做网站点击软件排名
  • 兰州新闻最新消息徐州网络优化招聘网
  • ps中网站页面做多大的wordpress快速入门
  • 专业网站建设排名查网站域名备案价格
  • 无锡市网站wordpress域名解析
  • 用微软雅黑做网站可以吗wordpress免费插件下载地址
  • 网站建设需求模版域名访问网站啥意思
  • 网站要和别人做api 链接外贸soho建站多少钱
  • 淄博网站建设 leda.cc子域名ip
  • 网站建设怎么支付款项捕鱼游戏网站制作模板
  • 域名注册后 免费自建网站东莞今天新增加的情况
  • 广州企业网站制作哪家好海宁建设局网站
  • 好的高端网站花蝴蝶 高清直播
  • 网站推广渠道及特点识别不出来是wordpress
  • 建设网站的功能及目的是什么中国建设部门官方网站
  • 电子商务网站建设报价网站建设交付物清单