如何将 ltrace 用于 mpi 程序?

2024-02-01

我想知道如何使用 ltrace 获取 mpi 应用程序的库函数调用,但 ltrace 不起作用,我的 mpirun 无法成功。 任何想法?


您应该能够简单地使用:

$ mpiexec -n 4 -other_mpiexec_options ltrace ./executable

但这会造成巨大的混乱,因为不同等级的输出将合并。更好的选择是重定向输出ltrace每个等级都有一个单独的文件。通过某些 MPI 实现,获得排名很容易。例如,Open MPI 在环境变量中导出世界排名OMPI_COMM_WORLD_RANK。以下包装脚本会有所帮助:

#!/bin/sh

ltrace --output trace.$OMPI_COMM_WORLD_RANK $*

Usage:

$ mpiexec -n 4 ... ltrace_wrapper ./executable

这将生成 4 个跟踪文件,每个等级一个:trace.0, trace.1, trace.2, and trace.3.

对于 MPICH 和其他基于它并使用 Hydra PM 导出的 MPI 实现PMI_RANK并且上面给出的脚本必须修改并且OMPI_COMM_WORLD_RANK替换为PMI_RANK。人们还可以编写一个适用于这两个 MPI 实现系列的通用包装器。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 ltrace 用于 mpi 程序? 的相关文章

  • OpenMP 中可重用的私有动态分配数组

    我正在使用 OpenMP 和 MPI 来并行化 c 中的一些矩阵运算 一些对矩阵进行操作的函数是用 Fortran 编写的 Fortran 函数需要传入一个缓冲区数组 该数组仅在函数内部使用 目前 我正在每个并行部分中分配缓冲区 类似于下面
  • MSMPI 就地 MPI_Allreduce 不适用于 MinGW-w64 gfortran

    我正在尝试使用就地MPI Allreduce结合MinGW w64 gfortran MSYS64提供的版本9 2 和Microsoft MPI 版本10 call MPI Allreduce MPI IN PLACE srcdst n M
  • 使用 mpi 将矩阵写入单个 txt 文件

    我有一个巨大的矩阵 我将它分成一些子矩阵 然后对其进行一些计算 在这些计算之后 我必须将该矩阵写入一个文件中以进行后处理 是否可以将结果写入单个文本文件 我该怎么做 例如我们有一个nxy 方向划分的 ny 矩阵 每个进程有一个 nx秩矩阵
  • 在 Eclipse Indigo 中运行 MPJ Express 时出现“未解决的编译问题”

    我遵循了 Youtube 上关于如何在 IDE 中使用 MPJ Express 运行并行应用程序的教程 我下载了最新版本的 MPJ Express 并使用了 Eclipse Indigo 我确实在我的项目 JAR 文件中包含了 MPI 当我
  • MPI 中的幽灵细胞交换模式

    我正在使用 MPI 实现分布式图像 灰度 卷积 我现有的模式是在根进程中将图像读取为一维扁平数组 然后将它们分散到所有进程 行分解 然后执行MPI Gather在根进程中 然后再次将图像作为一维展平数组写出 显然 这不会给出预期的结果 因为
  • Hadoop MapReduce 与 MPI(与 Spark、Mahout 与 Mesos) - 何时使用其中之一?

    我是并行计算新手 刚刚开始在 Amazon AWS 上尝试 MPI 和 Hadoop MapReduce 但我对何时使用其中一种而不是另一种感到困惑 例如 我看到的一个常见的经验法则可以总结为 大数据 非迭代 容错 gt MapReduce
  • 在 C++ 中使用 MPI 对数组进行排序

    我想使用 MPI 库对随机数数组进行排序 这个想法是使用 MPI Scatterv 切割数组并将其发送到进程 每个进程都应该在本地对其数据量进行排序并将其发送回主进程 MPI Gatherv 主进程应该对部分排序的表进行排序 合并 如果最后
  • mpi 中的 darray 和 subarray 有什么区别?

    我有一个用于并行编程类的并行 I O 项目 并且我必须实现派生数据类型 我不太清楚darray和subarray之间的区别 darray 是否可以从动态分配的数组派生 主要区别是什么 子数组可让您描述较大多维数组的单个块 切片 如果每个 M
  • mpi4py 中的共享内存

    I use a MPI mpi4py 脚本 在单个节点上 适用于非常大的对象 为了让所有进程都能访问该对象 我通过comm bcast 这会将对象复制到所有进程并消耗大量内存 尤其是在复制过程中 因此 我想分享一些像指针这样的东西 而不是对
  • 在 C 中执行简单 MPI 程序时集群挂起/显示错误

    我正在尝试运行一个简单的 MPI 程序 多个数组加法 它在我的 PC 中完美运行 但只是挂起或在集群中显示以下错误 我正在使用 open mpi 和以下命令来执行 集群网络配置 主节点1 MASTER eth0 Link encap Eth
  • 如何将 MPI 派生数据类型用于 3D 数组?

    我想编写一个适用于 3D 矩阵的并行代码 其中每个进程都有自己的子矩阵 但为了完成其工作 它们需要一些有关相邻进程子矩阵的信息 只是边界平面 我通过点对点通信发送这些信息 但我知道对于大型矩阵来说这不是一个好主意 因此我决定使用派生数据类型
  • MPI_Bsend 的缺点?

    我最近遇到了一个死锁 我可以通过使用来解决MPI Bsend代替MPI Send 如果我理解正确的话 MPI Bsend 是一个非阻塞发送 并且可以安全地修改我发送的内容 而不必担心发送操作何时完成 所以 double x 1 MPI Bs
  • SLURM:如何在同一计算节点或不同节点上并行运行不同的可执行文件?

    Goal 了解如何通过 sbatch 作业提交来运行 共同调度或执行可执行文件 应用程序 使用 srun 或 mpirun 研究 代码片段 bin bash SBATCH job name LEBT SBATCH partition ang
  • 如何通过 mpi c++ 发送布尔数据类型?

    我是 C 新手 尝试通过 MPI 发送 bool 数据类型 但 C 不支持此数据类型 我试着做到了MPI BYTE and MPI INT但它什么也没打印 include
  • MPI mpirun execvp 错误:没有这样的文件或目录

    我正在尝试使用 MPI 运行 C 代码 BCparallel cpp 编译代码 mpic BCparallel cpp o BCparallel 很成功 但是当我通过这条线时 mpiexec np 4 BCparallel file txt
  • mpi.h:使用未定义的类型?

    我正在尝试将 OpenMPI 的 mpi h 的重要部分翻译为 D 编程语言 以便我可以从 D 调用它 HTOD 根本不起作用 我无法理解以下代码段 typedef struct ompi communicator t MPI Comm O
  • MPI+CUDA 与纯 MPI 相比有何优势?

    加速应用程序的常用方法是使用 MPI 或更高级别的库 例如在幕后使用 MPI 的 PETSc 并行化应用程序 然而 现在每个人似乎都对使用 CUDA 来并行化他们的应用程序或使用 MPI 和 CUDA 的混合来解决更雄心勃勃 更大的问题感兴
  • 无法使用 conda 安装 mpi4py 并指定预安装的 mpicc 路径

    我已经尝试安装mpi4py with env MPICC path to openmpi bin mpicc conda install c anaconda mpi4py 但我收到这样的消息 The following NEW packa
  • 二维数组的 MPI 数据类型

    我需要将一个整数数组的数组 基本上是一个二维数组 从根传递给所有处理器 我在 C 程序中使用 MPI 如何声明二维数组的 MPI 数据类型以及如何发送消息 我应该使用广播还是分散 你需要使用播送 http www netlib org ut
  • 了解多个进程的并发文件写入

    从这里 UNIX 中文件追加是原子的吗 https stackoverflow com questions 1154446 is file append atomic in unix 考虑多个进程打开同一个文件并向其追加内容的情况 O AP

随机推荐

  • 如何使用 Youtube API 为 Youtube 视频添加字幕?

    是否有可能添加字幕 to Youtube视频使用Google Youtube API v3 重要条件 视频不是所有者 任务 使用所选语言添加自定义字幕Google APIs Client Library for JavaScript Goo
  • Python MS Word [重复]

    这个问题在这里已经有答案了 可能的重复 在 Python 中读取 写入 MS Word 文件 https stackoverflow com questions 188444 reading writing ms word files in
  • NSString 的 Base64 编码 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • TCP 数据包“不分段”的好处?

    我们的一位客户在将数据从我们的应用程序 在他们的 PC 上 提交到服务器 不同的地理位置 时遇到问题 当发送低于 1100 字节的数据包时 一切正常 但在此之上 我们看到 TCP 每隔几秒重新传输一次数据包 但没有得到任何响应 我们用于测试
  • constexpr(即常量初始化)模板变量的初始化顺序是否有保证?

    From en cppreference com w cpp language initialization http en cppreference com w cpp language initialization 无序动态初始化 si
  • 如何在 Angular 2 中有条件地加载模块

    下面的代码可以根据不同的 Angular cli 环境变量有条件地加载模拟服务 然而 它有一个副作用 即模拟服务被内置到最终的转码和缩小的输出文件中 是否有更好的方法来完成Angular2中的延迟加载模块 应用程序模块 ts import
  • “关联表”(多对多关系)的正确名称是什么[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 关联表 的正确或最流行的名称是什么 我听说过查找 关联 解析 映射和联结表 没有 正确 的名称 但学术名称将是 关联表 请参阅 维基百科文章关联
  • 使用 Ant 创建战争时 JSP 不会被复制

    我正在使用以下 Ant 脚本来创建一个简单的 Web 应用程序之战
  • 如何从 GradientDrawable 获取颜色

    首先 我将绿色设置为View mIcon的背景 View mIcon findViewById R id xxx GradientDrawable gdraw GradientDrawable mContext getResources g
  • TransactionScope Complete() 在退出 USING 语句之前不会提交事务

    我遇到了这种奇怪的行为 只有当using退出而不是调用时退出scope Complete using TransactionScope scope new TransactionScope TransactionScopeOption Re
  • 如何将 Tomcat 6 库管理到 %TOMCAT_HOME%/lib 下的子文件夹中?

    我使用 Tomcat 6 0 20 和 JDK 1 6 0 13 如何从子文件夹加载库 TOMCAT HOME lib 无需将 jar 从子文件夹中取出并直接放入 TOMCAT HOME lib 我想这样做的原因是因为许多应用程序将共享大量
  • jQuery 日期格式

    如何使用 jQuery 设置日期格式 我正在使用下面的代码但出现错误 txtDate val format date new Date dd M yy 请提出一个解决方案 在您的页面中添加 jquery ui 插件 txtDate val
  • 多种情况下的熊猫面膜

    在我的数据框中 我想用 nan 替换低于 1 和高于 5 的每个值 这段代码有效 persDf persDf mask persDf lt 1000 我得到了作为 nan 的所有值 但这个没有 persDf persDf mask pers
  • 模型上的自定义保存方法 - django

    我正在重写我的模型之一上的保存方法 def save self args kwargs self set coords super Post self save args kwargs def unicode self return sel
  • onDestroy 关闭应用程序后崩溃

    在重写 onDestroy 方法后 我遇到了一些问题 我的应用程序是一个音乐播放器 使用我需要的媒体播放器实例 如果没有播放音乐 则强制释放它 到目前为止 这是我的代码 为了实现这个技巧 我都重写了 onKeyDown 和 onDestro
  • 如何使 Metro GridView 中的组使用不同的布局?

    我正在编写一个 Windows 8 Metro 应用程序 我正在尝试绘制一个包含三个组的 GridView 我希望其中一组的项目布局与其他组不同 我以前在 WPF 中使用过选择器 所以我认为这是一个很好的途径 所以我尝试了 GroupSty
  • AppleScript 处理程序中的可选参数

    The Applescript 文档 https developer apple com library mac documentation AppleScript Conceptual AppleScriptLangGuide conce
  • Laravel 8:注册后如何验证用户的电子邮件地址而不需要登录信息?

    我使用 Jetstream 设置了 Laravel 8 安装并实现了自定义用户注册 在成功创建数据库记录后会触发一个事件event new Registered user 初始注册过程应该不需要密码 因为将来只有选定的一组用户能够登录仪表板
  • 替换对象属性中的某些文本?

    我需要请求一些以对象形式出现的信息 我需要替换其中一个属性中的一些测试 然后将对象列表写入 CSV 当我做 Get Process select Path Replace chrome ie 我有两个问题 如果 Path 为 null 则会
  • 如何将 ltrace 用于 mpi 程序?

    我想知道如何使用 ltrace 获取 mpi 应用程序的库函数调用 但 ltrace 不起作用 我的 mpirun 无法成功 任何想法 您应该能够简单地使用 mpiexec n 4 other mpiexec options ltrace