不同主机上的 OpenMP 程序

2023-12-19

我想知道是否可以在多个主机上运行 OpenMP 程序。到目前为止,我只听说过可以在多线程上执行但都在同一台物理计算机上执行的程序。是否可以在两个(或更多)客户端上执行程序?我不想使用 MPI。


是的,可以在分布式系统上运行 OpenMP 程序,但我怀疑每个用户都可以做到这一点。 ScaleMP 提供 vSMP——一种昂贵的商业管理程序软件,允许人们在许多联网主机之上创建虚拟 NUMA 机器,然后在该虚拟机内运行常规操作系统(Linux 或 Windows)。它需要快速的网络互连(例如 InfiniBand)和专用主机(因为它在正常操作系统下作为虚拟机管理程序运行)。我们这里有一个可运行的 vSMP 集群,它运行未经修改的 OpenMP 应用程序,但性能很大程度上取决于数据层次结构和访问模式。

NICTA曾经开发过类似的SSI管理程序,名为vNUMA,但开发也停止了。此外,他们的解决方案是 IA64 特定的(IA64 是 Intel Itanium,不要与 Intel64 混淆,后者是他们当前一代的 x86 CPU)。

Intel 曾经开发过 Cluster OpenMP(ClOMP;不要与为 Clang 带来 OpenMP 支持的类似名称的项目混淆),但由于“客户普遍缺乏兴趣,而且显示出好处的案例比预期少”,该项目被放弃了(从here http://software.intel.com/en-us/forums/topic/281819)。 ClOMP 是英特尔对 OpenMP 的扩展,它内置于英特尔编译器套件中,例如你不能将它与 GCC 一起使用(这个request http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27541为 GCC 启动 ClOMP 开发陷入了困境)。如果您可以访问旧版本的英特尔编译器(版本从 9.1 到 11.1),则必须获得(试用)ClOMP 许可证,鉴于该产品已失效并且旧(试用)许可证已经过时,这几乎是不可能的已到期。不过,从版本 12.0 开始,英特尔编译器不再支持 ClOMP。

存在其他研究项目(只需搜索“分布式共享内存”),但只有 vSMP(ScaleMP 解决方案)似乎对于生产 HPC 环境来说足够成熟(并且相应定价)。似乎现在大多数努力都投入到了联合数组语言(Co-Array Fortran、Unified Parallel C 等)的开发上。我建议你看一下伯克利UPC http://upc.lbl.gov/或者投入一些时间学习 MPI,因为它在未来几年绝对不会消失。

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

不同主机上的 OpenMP 程序 的相关文章

随机推荐

  • 使用 FIRST_VALUE 而不在分组依据中包含内部列

    我正在使用一个看起来像这样的表 userID eventDate eventName 1 2019 01 01 buySoup 2 2019 01 01 buyEggs 2 2019 01 03 buyMilk 2 2019 01 04 b
  • 如何使用 rstanarm 以 APA 风格报告贝叶斯线性(混合)模型?

    我目前正在努力解决如何按照 APA 6 建议报告输出的问题rstanarm stan lmer 首先 我将在频率论方法中拟合混合模型 然后尝试使用贝叶斯框架执行相同的操作 这是获取数据的可重现代码 library tidyverse lib
  • 如何添加Voronoi图?

    我想向我的集群添加 Voronoi 图 也就是说 我想要一张包含我的簇 质心 Voronoi 区域的图 有简单的方法吗 I tried x lt c 4 7 9 2 3 3 7 7 8 8 9 9 y lt c 6 3 3 6 5 7 2
  • Symfony2 从表中删除记录

    我的树枝上有一个按钮 我希望能够使用它从表中删除记录 当我点击删除按钮时 页面会重新加载 但不会删除任何记录 这是我的树枝 h1 Admin Area The football blog h1 table class zebra thead
  • 当 JSpinner 失去焦点时用户输入无效值时如何“注意/陷阱”

    这是 SSCCE 对我之前问题的延续 上一个问题 https stackoverflow com questions 20902932 how to check manual edits on a jspinner field using
  • 编辑复制到剪贴板的LMC按钮

    我有一些问题LMC 按钮 http www lettersmarket com view blog a 3 copy to clipboard lmcbutton html因为它的编码方式 ShowLMCButton Copied Text
  • PostgreSQL JDBC getGenerateKeys 返回所有列

    我最近在一个项目的后端从 MySQL 切换到 PostgreSQL 并发现我的一些数据库代理方法需要审查 为了插入链接的对象 我使用事务来确保存储所有内容 我使用 jdbc 方法执行此操作 例如setAutoCommit false and
  • 未找到符号。 Collect2:ID 返回 1 退出状态

    我收到以下错误 Undefined symbols OBJC CLASS SurveyDelegate referenced from objc class ref to SurveyDelegate in Menus o ld symbo
  • 如何使用存储为 CSV 的矢量数据在 mahout 中执行 k 均值聚类?

    我有一个包含数据向量的文件 其中每行包含一个以逗号分隔的值列表 我想知道如何使用 mahout 对这些数据执行 k 均值聚类 wiki 中提供的示例提到了创建sequenceFiles 但除此之外 我不确定是否需要进行某种类型的转换才能获取
  • 使用 C# 检测文件名字符是否被视为国际字符

    我编写了一个小型控制台应用程序 下面的源代码 来定位并选择性地重命名包含国际字符的文件 因为它们是大多数源代码控制系统持续痛苦的根源 下面有一些背景知识 我使用的代码有一个简单的字典 其中包含要查找和替换的字符 并删除使用超过一个存储字节的
  • SQL Server 2012:如何将所有数据库存储过程编写成单独的 .sql 文件?

    我想编写从 SQL Server 2012 到 Visual Studio 2012 的所有存储过程的脚本 sql文件 在不同的项目中 我怎么做 我想要每个存储过程都有一个 sql 文件吗 在 SQL Server 2012 中右键单击 D
  • 为什么我的谓词没有回溯?

    我不明白为什么我的谓词不回溯并找到所有解决方案 person john person erik allExceptSpider person Spider T setof person X person X S subtract S per
  • 使用铯最轻的方法是什么?

    我有兴趣使用 Cesium 构建带有自定义图块的 3D 地球 但根据此处为 开始 说明 http cesiumjs org 2013 04 12 Cesium up and running 似乎您必须下载一个巨大的 30mb 目录并将整个内
  • Thymeleaf 选择选项性能问题

    我最近一直在摆弄 Spring MVC 5 和 Thymeleaf 3 0 并注意到一些奇怪的事情 我已经开始根据网站上的教程实现下拉列表 并注意到一些性能问题 如果我使用以下代码 我的页面大约需要 5 5 秒才能呈现大约 100 个项目的
  • android 滑动层activity动画

    我想实现滑动层动画以进行活动转换 如材料设计指南中所述 然而 我现在所能做的就是将 slip in 和保持动画简单组合起来 这不会给我带来堆叠层的效果 我怎样才能实现它 我目前的实施 活动开始时 activity overridePendi
  • 如何在SSIS包中设置变量?

    我需要在我的 SSIS 包中使用两个变量 extract beg date and extract end date 我如何设置它们以某种方式行事 例如 在存储过程中 它看起来像这样 SET extract beg date CASE WH
  • 如何在使用 XmlHttpRequest 和 FormData 时设置边界

    我试图在使用 FormData 发布 XmlHttpRequest 时在标头中正确设置边界 xhr open POST url xhr setRequestHeader Content type multipart form data bo
  • html2canvas 等待图像加载

    我遇到这个问题已经有一段时间了 但我似乎找不到解决方案 我正在使用最新的 html2canvas js 插件来截取使用 fllotcharts 制作的图表的屏幕截图 然后通过隐藏输入提交 base64 屏幕截图 问题是带有图表的 div 也
  • 排序依据和限制

    我需要执行以下查询 SELECT FROM specimens ORDER BY distribution sheet id DESC LIMIT 10 我已经把 我喜欢输出 limit 10 而不是 limit 1 我想它是 last 但
  • 不同主机上的 OpenMP 程序

    我想知道是否可以在多个主机上运行 OpenMP 程序 到目前为止 我只听说过可以在多线程上执行但都在同一台物理计算机上执行的程序 是否可以在两个 或更多 客户端上执行程序 我不想使用 MPI 是的 可以在分布式系统上运行 OpenMP 程序