并行位置

2024-03-27

并行性新手,正在学习使用 C++ 进行 HPX 的入门知识。我正在查看将打印的特定 hello-word 示例hello world在每个位置的每个操作系统线程上,一些输出如下所示:

hello world from OS-thread 1 on locality 0
hello world from OS-thread 1 on locality 1
hello world from OS-thread 0 on locality 0
hello world from OS-thread 0 on locality 1

我的问题是,当程序输出在地点 x, 局部性到底是什么意思?我了解操作系统线程,但我不太确定该程序在哪个位置意味着什么。

里面的一些代码示例HPX main我的问题不一定需要这,但它确实包括多次调用以查找与主题相关的地点。

int hpx_main()
{
    {
        // Get a list of all available localities.
        std::vector<hpx::naming::id_type> localities =
            hpx::find_all_localities();

        // Reserve storage space for futures, one for each locality.
        std::vector<hpx::lcos::future<void> > futures;
        futures.reserve(localities.size());

        BOOST_FOREACH(hpx::naming::id_type const& node, localities)
        {
            // Asynchronously start a new task. The task is encapsulated in a
            // future, which we can query to determine if the task has
            // completed.
            typedef hello_world_foreman_action action_type;
            futures.push_back(hpx::async<action_type>(node));
        }

        // The non-callback version of hpx::lcos::wait takes a single parameter,
        // a future of vectors to wait on. hpx::lcos::wait only returns when
        // all of the futures have finished.
        hpx::lcos::wait(futures);
    }

    // Initiate shutdown of the runtime system.
    return hpx::finalize();
}

根据我从他们的文档中了解到的信息 - 您可以将位置视为执行应用程序的进程数。
假设有 2 个服务器执行您的程序,第一个服务器将执行位置 0,第二个服务器将执行位置 1。
这样您就可以知道执行相同代码的哪个进程是服务器(位置 0),哪个是客户端(位置 1)。

另外,每个进程可以运行多个线程,这通过os_threads的数量可见。

按照这个例子:http://stellar.cct.lsu.edu/files/hpx_0.8.1/docs/hpx/tutorial/examples/hello_world.html http://stellar.cct.lsu.edu/files/hpx_0.8.1/docs/hpx/tutorial/examples/hello_world.html

以及这些命令行选项:http://stellar.cct.lsu.edu/files/hpx_0.8.1/docs/hpx/tutorial/getting_started/commandline.html http://stellar.cct.lsu.edu/files/hpx_0.8.1/docs/hpx/tutorial/getting_started/commandline.html

这是如何使用多个位置的说明:http://stellar.cct.lsu.edu/files/hpx_0.8.1/docs/hpx/tutorial/getting_started/unix_pbs.html http://stellar.cct.lsu.edu/files/hpx_0.8.1/docs/hpx/tutorial/getting_started/unix_pbs.html

我认为理解它的最好方法是使用 --hpx:node 和 --hpx:threads 的值。

另外 - 我认为 openmpi 文档更适合理解这些术语......

虽然不确定我是否有所帮助,但我希望我有所帮助。

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

并行位置 的相关文章

  • 如何以编程方式将访问键(快捷方式)添加到 WPF ContextMenu?

    我已经有以下内容 var myContextMenu new System Windows Controls ContextMenu var exitItem new MenuItem exitItem Header E xit exitI
  • 我的 std::hash for std::tuples...有什么改进吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 有些人可能已经注意到 std hash 不支持元组 所以我添加了一个重载 它看起来比我到目前为止看到的解决方案 更好 有人有进一步减少这段代码的
  • 如何在 ASP.NET MVC 中将 XML 文件发送到客户端

    在 ASP NET MVC 中 我有一个数据库表 我想在某个视图页面上有一个按钮 如果某个用户单击该按钮 我的应用程序将生成包含数据库中所有行的 XML 文件 然后 应将包含 XML 的文件发送到客户端 以便用户看到下载弹出窗口 同样 我希
  • 如何使用 Entity Framework 和 Identity 解决对象处置异常 ASP.NET Core

    我正在尝试编写一个控制器 该控制器接收来自 AJAX 调用的请求并通过 DBContext 对数据库执行一些调用 但是 当我发出命令时var user await GetCurrentUserAsynch 在对 DBContext 的任何调
  • getline 之后返回到文件开头

    所以我已经从文件中读取了所有行 while getline ifile line logic 其中 ifile 是 ifstream line 是字符串 我的问题是我现在想再次使用 getline 并且似乎无法返回到文件的开头 因为运行 c
  • 在 WCF 上重用我的 PagedList 对象

    问题 我有一个自定义集合PagedList
  • 信号与信号2

    我的应用程序可能会受益于使用 boost 的信号库之一而不是本土解决方案 该应用程序是多线程的 但执行信号处理的部分是单线程的 如果多线程不是问题 是否有任何理由更喜欢 Boost Signals2 而不是 Boost Signal Boo
  • C# 中类似图的实现

    所以我有一个对象 我们称之为 Head 它有一个对象列表 C C1 C2 C3 T T1 T2 和 M M1 M2 并且所有这些都是相互关联的 例如 Head gt C1 C2 C3 T1 T2 M1 M2 T1 gt C1 C2 T2 g
  • C# 中 PKCS11Interop 库的线程安全使用 [已关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在使用 PKCS11Interop 在 HSM 内执行密钥管理操作 我使用的 HSM 是 Thales PCI Express 下面是
  • 我可以将 char 或 DateTime 设置为 null 吗?

    我可以将 null 设置为char数据类型 并且DateTime在 C 中 多谢你们 这是不可能的 它是一个值类型 使用 char myChar null DateTime myDate null 这相当于 Nullable
  • 如何调试.NET Windows Service OnStart方法?

    我用 NET 编写的代码仅在作为 Windows 服务安装时才会失败 该故障甚至不允许服务启动 我不知道如何进入 OnStart 方法 如何 调试 Windows 服务应用程序 http msdn microsoft com en us l
  • 原子存储抛出错误

    我最近升级到了 C 11 兼容编译器 并且尝试将一些代码从 boost 更新到 c 11 标准 我在使用atomic store转换一些代码时遇到了问题 这是一些简单的测试代码 似乎会引发编译器错误 int main std shared
  • 模板与非模板类,跨编译器的不同行为

    我在一些应用程序中使用编译时计数器 它确实很有用 昨天我想用 gcc 编译一个程序 我之前使用的是 msvc 并且计数器的行为在模板类中发生了变化 它在模板类中不再工作 过于简化的代码 Maximum value the counter c
  • ASP.NET MVC 动作过滤器

    有谁知道即使在 CATCH 块中 ActionFilterAttribute 类的 OnResultExecuted 方法是否也会执行 ie CookiesActions public ActionResult Login Usuarios
  • 列表到优先队列

    我有一个 C 大学编程项目 分为两个部分 在开始第二部分时应该使用priority queues hash tables and BST s 我 至少 在优先级队列方面遇到了麻烦 因为它迫使我自己重做第一部分中已经实现的许多代码 该项目是关
  • 节点*链表中的下一个

    我是数据结构和算法的新手 我遇到了以下代码 typedef struct node int data node next 谁能告诉我为什么我们要声明节点 next next 不能声明为 int next 吗 因为你希望能够做到n gt ne
  • 本地时间的内存需要释放吗?

    void log time t current time 0 tm ptm localtime current stuf 只是想确定 我是否需要在方法结束时释放 tm 指针分配的内存 不 你不应该释放它 该结构是静态分配的 检查文档 htt
  • 从 C# 调用时无法识别 Powershell 命令

    这是这个的延续Question https stackoverflow com questions 66280000 powershell object returns null 66280138 noredirect 1 comment1
  • 在 C# .NET 中对非 ASCII 字符进行编码

    我想向我的应用程序发送的电子邮件添加自定义标头 标头名称只能包含 ASCII 字符 但对于值和用户可能会输入 UTF 8 字符 我必须对它们进行 Base64 编码 此外 我还必须将它们解码回 UTF 8 以便在 UI 中向用户显示它们 最
  • 如何释放字符串未使用的容量

    我正在程序中处理很多字符串 这些字符串数据在读入我的程序后的整个生命周期内都不会改变 但由于 C 字符串保留了容量 因此浪费了大量肯定不会被使用的空间 我尝试释放这些空间 但没有成功 以下是我尝试过的简单代码 string temp 123

随机推荐

  • 如何在 IE8 中转储 JavaScript 变量?

    我有一个需要在 IE8 中检查的对象 我尝试了开发者工具console log 他们的 Firebug 等价物 但是 当我将对象输出到日志时 console log Element element console log element 我
  • 如何在 SQL Server 中拆分分隔字符串而不创建函数?

    我正在使用 SQL Server 数据库 我有一列包含分隔列表 我需要编写一个查询 将列表的值拆分为行 通过浏览 StackOverflow 和网络的其他部分 我知道这是一个常见问题 事实上 我在这里找到了广泛的分析 http www so
  • ILGenerator 是否有一个好的包装器? [关闭]

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

    有人尝试过使用 pdb 调试 celeryd 工作程序吗 每当遇到断点 通过 pdb 运行 celeryd 或者通过pdb set trace 我遇到了以下错误 Error while handling action event Trace
  • 间歇性地从 LinkedIn API 收到 999 请求被拒绝。原因代码1,2,1指的是什么

    在过去的两天里 两个不同的 LinkedIn 应用程序 开始间歇性地收到 999 请求被拒绝的错误 除此之外 我收到 reason code 1 2 1 作为标题 具体来说 这是从 oAuth 过程的第三步 与https www linke
  • R randomForest子集无法摆脱因子水平[重复]

    这个问题在这里已经有答案了 可能的重复 删除 R 中子集数据框中的因子级别 https stackoverflow com questions 1195826 dropping factor levels in a subsetted da
  • 计算 Google Sheets 脚本中的粗体单元格数量

    所以 说实话 我并不是一个编码员 但我已经设法通过计算单元格背景颜色来摸索 但努力让它适用于计算字体为粗体的单元格 我在下面详细介绍了我的函数 其中仅计算了 6 个具有粗体字体样式的单元格 但有 13 个具有粗体字体样式的单元格 funct
  • 相对时间序列

    我正在寻找一种标准化的方法来按相对时间排列数据 应用程序包括会计数据 例如 FY1 FY2 等 和经济数据 例如使用 1 年 2 年 3 年等的利率期限结构 我希望能够比较当前的一组时间序列数据和代表类似情况或历史规范的几个历史时间序列集
  • 立即处理至 App Store 后下架

    我的应用程序之前已下架 更新获得批准后 我在 10 分钟内收到了 3 封有关状态的电子邮件 1 处理至App Store 2 准备出售 3 停止销售 在 准备销售 状态之后 状态立即更改为 已从销售中删除 我联系了苹果公司 她说一旦应用程序
  • JavaScript XMLHttpRequest“网络错误”

    一般来说 我在 javascript 和 Web 开发方面缺乏经验 我正在从事的项目是一般公司培训计划的一部分 我们被指示使用 Google Chrome 作为主要测试浏览器 本质上 我正在编写一个将在公司内部网外部的客户端上运行的应用程序
  • 使用 Spark Web 框架时如何使用原生 Servlet Filter?

    我正在玩Spark http sparkjava com Java Web 框架 而不是 Apache Spark 我发现定义路由和过滤器非常好且容易 但是我希望将本机 servlet 过滤器应用于我的路由 但似乎找不到方法来做到这一点 更
  • 警告:preg_replace():未知修饰符“g”

    我遇到这个正则表达式错误 strTmp preg replace lt CharacterStyleRange gt n gim strTmp Error Warning preg replace 未知修饰符 g in Why g是隐含的p
  • 用于面部识别和标记的 Delphi 组件

    是否有任何好的组件 免费或商业 可用于 Delphi 我使用 Delphi 2009 使我能够轻松实现面部检测和标记照片 即图形 图像 中的面部 我需要做一些类似于 Google Picasa 网络相册可以做的事情 但是是在我的应用程序中进
  • 如何用Java实现子集和问题

    有谁知道如何通过这个伪代码在Java中实现子集和问题 w an array of positive integers sorted in non decreasing order W the target sum value include
  • 自动 AWS DynamoDB 到 S3 导出失败,并显示“role/DataPipelineDefaultRole 无效”

    严格按照以下说明进行操作这一页 http docs aws amazon com amazondynamodb latest developerguide DataPipelineExportImport Exporting html我正在
  • Angular:更改输入事件的值

    我有文本区域 我尝试将值的宽度限制为 10 个符号 我正在尝试削减价值input事件
  • 如何在我的 Webpack sass-loader 配置中指定包含 SCSS 的资源根?

    假设我有类似的东西 test scss exclude node modules loaders style loader css loader sass loader 在我的 webpack 配置中 我有一个app 包含我所有 SCSS
  • 选择 Qt 写入文本文件的自定义行结尾

    在 Qt 中写入文本文件时 使用 QFile 和 QTextStream 任何 n or endl自动转换为正确的平台特定行结尾 例如 r n对于 Windows 我想让用户选择使用哪个文件结尾 有没有办法在不使用二进制文件模式的情况下设置
  • 从 Byte[] 显示图像的最简单方法是什么?

    我有一个包含黑白图像的结构 public class Img public int height public int width public byte matrix 矩阵中包含的值为0或255 使用 C WPF 在组件中显示此图像的最佳
  • 并行位置

    并行性新手 正在学习使用 C 进行 HPX 的入门知识 我正在查看将打印的特定 hello word 示例hello world在每个位置的每个操作系统线程上 一些输出如下所示 hello world from OS thread 1 on