Julia 并行编程 - 使现有功能可供所有工作人员使用

2024-02-07

我面临以下问题:

我有一个函数叫做火车模型在单个线程上运行很长时间。当它完成计算时,它返回一个函数作为输出参数,我们称之为f。当我询问这个​​的类型时f,朱莉娅返回:

(具有 1 种方法的通用函数)

(我不确定最后一条信息对阅读本文的人是否有用)

现在在第二步中,我需要应用函数f在一个非常大的值数组上。这是我想并行的一个步骤。使用多个进程启动 Julia 后,例如

julia -p 4

理想情况下,我会使用:

pmap(f, my_values)

也许:

aux = @parallel (hcat) for ii=1:100000000
        f(my_values[ii])
      end

不幸的是,这不起作用。朱莉娅抱怨工人们不知道这个功能f,即我收到一条消息:

错误:函数 f 未在进程 2 上定义

我怎样才能实现功能f可供所有工人使用?显然,“肮脏”的解决方案是运行耗时的函数火车模型对所有工人来说,也许像这样:

@everywhere f = TrainModel( ... )

但这会浪费CPU,因为我想要的只是结果f可供所有工人使用。

虽然我搜索了类似问题的帖子,但到目前为止我找不到答案......

提前致谢! 最好的,

N.


返回函数的方法看起来很优雅,但不幸的是,与 JavaScript 不同,Julia 在创建函数时不会解析所有变量。 从技术上讲,您的训练函数可以生成函数的源代码,其中包含所有训练参数的文字值。然后将其传递给每个工作进程,工作进程可以在其环境中将其解析为可调用函数。

我建议返回一个数据结构,其中包含生成训练函数的所有信息:ANN 的权重、支持向量、决策规则...... 在工作进程上定义一个“经过训练的”函数,以便它将利用经过训练的参数。无论如何,您可能希望能够将训练结果保存到磁盘,以便可以轻松地重新生成计算。

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

Julia 并行编程 - 使现有功能可供所有工作人员使用 的相关文章

  • 如何在 Julia 中将列数据类型从浮点更改为字符串?

    我正在尝试将数据框中的一列从浮点数转换为字符串 我努力了 df readtable data csv coltypes String String String String String Float64 Float64 String 但我
  • 如何使用 OpenMP 并行化数组移位?

    如何使用 OpenMP 并行化数组移位 我已经尝试了一些方法 但没有得到以下示例的任何准确结果 该示例旋转 Carteira 对象数组的元素 用于排列算法 void rotaciona int i Carteira aux this gt
  • .Net 中可用的并行技术

    我是 Net 平台的新手 我查了一下 发现 Net中有几种做并行计算的方法 任务并行库中的并行任务 即 Net 3 5 PLINQ Net 4 0 异步编程 Net 2 0 异步主要用于执行 I O 繁重的任务 F 有简洁的语法支持这一点
  • 互补DNA序列

    我在编写这个循环时遇到问题 它似乎在第二个序列之后停止了 我想返回给定 DNA 序列的互补 DNA 序列 例如 AGATTC gt TCTAAG 其中 A T 和 C G def get complementary sequence dna
  • Java 8 Stream - 并行执行 - 不同的结果 - 为什么?

    假设我有一个List
  • 并发集合和独特元素

    我有一个并发BlockingCollection具有重复的元素 如何修改它以添加或获取不同的元素 默认后备存储BlockingCollection is a ConcurrentQueue 正如其他人指出的那样 使用它来添加不同的项目相当困
  • 在 Java 中并行处理两个任务

    我想在一个方法中调用8个方法 这8个方法中的2个方法是一个洞任务 其余6个方法是另一个洞任务 我想同时并行处理这两个任务 据我所知 我可以用线程来做到这一点 但说实话 要么我看不到与我的目标相似的示例 要么即使我看到了我也无法理解该示例 您
  • 批处理文件 FOR/f 扩展

    我有一个文件 directories txt 与目录名称 每个在一行上 我喜欢扩展该行 C Documents and Settings USERNAME My Documents 在我的脚本中以真实用户名运行脚本 然而 回声与线路完全相同
  • JavaScript 中最长的通用前缀

    我正在尝试解决 Leet Code 挑战14 最长公共前缀 https leetcode com problems longest common prefix 编写一个函数来查找字符串数组中最长的公共前缀字符串 如果没有公共前缀 则返回空字
  • 使用多线程并行化 Java 中的 for 循环

    我对java很陌生 我想使用执行器服务或使用java中的任何其他方法并行化嵌套for循环 我想创建一些固定数量的线程 这样CPU就不会完全被线程占用 for SellerNames sellerNames sellerDataList fo
  • 高度并行化的Levenshtein距离算法

    实际上 我必须实现一个字符串比较 最后得到匹配百分比 不仅仅是布尔结果匹配 不匹配 为此 我找到了 Levenstein 距离算法 但现在的问题是性能 例如 我有 1k 个字符串需要相互比较 现在大约需要 10 分钟 对于每个算法 我已经并
  • Repa 数组上的并行 mapM

    在我最近的work https github com bgamari mixture model with Gibbs sampling 我一直在充分利用RVar http hackage haskell org packages arch
  • S3并行读写性能?

    考虑 Spark 或任何其他 Hadoop 框架 从 S3 读取大型 例如 1 TB 文件的场景 多个spark执行器如何从S3并行读取非常大的文件 在 HDFS 中 这个非常大的文件将分布在多个节点上 每个节点都有一个数据块 在对象存储中
  • 在for循环中声明和初始化变量

    可以简单写一下吗 for int i 0 代替 int i for i 0 在 C 或 C 中 并且会变量i只能在循环内部访问 它在 C 中有效 它在 C 的原始版本中是不合法的 但在 C99 中被采用为 C 的一部分 当时一些 C 功能被
  • Julia:按第 2 列然后按第 3 列对矩阵进行排序

    我想对我的矩阵进行排序A按第 2 列 然后按第 3 列 A round randn 100 4 也许是这样的 sort A 0 2 3 100x4 Array Float64 2 0 0 2 0 2 0 1 0 1 0 2 0 1 0 1
  • 正确地将 for 循环转换为并行循环

    我这里有这个数据集 例如 学生在几年内多次参加考试 要么通过 要么失败 我有兴趣研究上一次测试对下一次测试的影响 id sample int 10000 100000 replace TRUE res c 1 0 results sampl
  • 循环中的恒定条件:编译器优化[重复]

    这个问题在这里已经有答案了 考虑以下代码 Preprocessor include
  • 尽管代码是正确的,为什么这个程序会显示其他内容? [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 include
  • 类型定义:期望UnionAll,得到TypeVar

    在 v0 6 的 Julia 手册中 我发现以下内容 abstract type Pointy T end struct Point T lt Pointy T x T y T end 这工作得很好 我认为以下也应该 abstract ty
  • 减少最大值并保存其索引

    int v 10 2 9 1 3 5 7 1 2 0 0 int maximo 0 int b 0 int i pragma omp parallel for shared v private i reduction max maximo

随机推荐

  • 数据帧子集性能

    我有几个大型数据帧 100 万行以上 x 6 10 列 需要重复进行子集化 子集部分是我的代码中最慢的部分 我很好奇是否有办法更快地做到这一点 load https dl dropbox com u 4131944 Temp DF IOST
  • Pascal 对象:如何进行类型化前向声明?

    我正在将很棒的 fmod C 标头翻译为 Pascal 但由于前向声明而陷入困境 如果我声明该函数before类型 错误为 FMOD CODEC STATE 未知 如果我声明 FMOD CODEC STATEbefore该函数 错误为 FM
  • 如何在 CherryPy 中执行异步后处理?

    Context 想象一下您有一个标准的 CherryPy hello word 应用程序 def index self return Hello world index exposed True 并且您想要进行一些后处理 即记录请求处理或仅
  • 如何从命令行在 Ubuntu Linux 上打开 AVD 管理器?

    如何从命令行在 Ubuntu Linux 上打开 AVD 管理器 对于那些来这里是因为android avd命令已被弃用 现在的操作方法如下 使用Android Studio 使用有效的 studio 项目打开 Android Studio
  • XMPP 使用哪个端口?

    我搜索过但没有找到 XMPP 使用哪些端口 我需要实现XMPP服务器和客户端并使用XML传输 文件传输和流媒体 他们使用不同的端口吗 有没有办法让它们都一样使用 这样我就不需要打扰网络管理员 谢谢 根据维基百科 http en wikipe
  • 意外标记:LIMIT

    当我将上述依赖项与 NamedQuery 一起使用时 我在错误部分收到错误提示 注意 请指教 是jar问题还是JBOSS问题 我在 Jboss 7 版本中使用 jdk1 7 运行此代码 使用 EntityManager 使用命名查询 Que
  • 编写优秀的 Twisted 网络资源

    我编写了第一个 Twisted 10 1 0 网络Resource我正在寻求反馈 因为我觉得这并不完全遵循最佳实践 并且可能包含新手错误 资源响应 url http www foo baz abc123并依赖于返回的服务dict 如果出现任
  • “尝试设置非属性列表对象......”带有自定义类的 NSMutableDictionary [重复]

    这个问题在这里已经有答案了 我有一个名为的自定义类ServerModule这是一个子类NSObject 我基本上存储了所有这些ServerModules 中包含一个键值对NSMutableDictionary 然后字典存储在NSUserDe
  • 主体参数不能与表单参数一起使用 - 具有 Headers 和 json 数据的 Feign 客户端

    我有一个像这样的 FeignClient RequestLine POST enroll Headers header1 header1 header2 header2 Content Type application json Respo
  • 还有什么更好的方法来解决 Python 中的“静态变量”呢?

    似乎在Python中 要在类中声明变量 它是静态的 在下一个实例中保留其值 有什么更好的方法来解决这个问题 class Foo number 0 def set self self number 1 gt gt gt foo Foo gt
  • Keras 2,TypeError:无法pickle _thread.lock对象

    我正在使用 Keras 创建一个 ANN 并在网络上进行网格搜索 我在运行以下代码时遇到以下错误 model KerasClassifier build fn create model input dim verbose 0 define
  • 如何在与当前片段相同的空间中加载新片段

    我正在寻找一些关于处理启动其他片段的片段的最佳方法的建议 我正在转换一个应用程序 我开始使用更多基于活动的方法编写该应用程序 并开始将其转移到使用片段 我有一些用于启动新活动的片段 我想将它们移至当前片段所在的同一视图中启动其他片段 例如
  • 在地图列的 Spark 数据框中如何使用所有键的常量更新值

    我有 Spark 数据框 其中包含 Integer 和 Map 类型的两列 我想知道更新映射列的所有键的值的最佳方法 在 UDF 的帮助下 我能够更新值 def modifyValues map data Map String Int gt
  • 用 Java 调高/调低计算机音量?

    我想用一个命令来调高或调低计算机的主音量 100 0 我看到我可以使用FloatControl 但我不知道如何使用它 看看看看使用JavaSound控制主音量 http www coderanch com t 492931 java jav
  • 使用 GTM 在一个容器中实施两个 Analytics 属性

    我想在两个包含相同网站 cms 代码但内容语言不同的域上实施 Google 跟踪代码管理器 因此 我想使用一个容器 一个 GTM 代码 其中包含两个标签 一个标签包含domainA com 的UA 代码段 另一个标签包含domainB co
  • 需要 Postgres 触发器和函数方面的帮助

    我有一个查找表 其中包含一列来源 来自通过我创建的 Web 服务 API 捕获的各种硬编码活动 以及应与其关联的各个品牌 这样我就可以为品牌为空的记录赋予品牌 以便可以通过营销自动化工具使用特定模板来欢迎它们 我最终会弃用这个 API 并用
  • 学说 2 - 查询生成器条件查询... If 语句?

    我的查询是 doctirne 2 我在用户中有一个状态字段 私人或 民众 我希望能够运行此查询并显示所有评论 其中 仅当 userid 当前登录时 状态 公共和私有 用户 ID 我知道 loggerUserVarID q this gt e
  • 如何在 Azure ML 服务中注册本地训练的机器学习模型?

    我正在尝试Azure 机器学习服务 https azure microsoft com en us services machine learning service 用于机器学习部署 我已经在计算 VM 上训练了一个模型并将其保存为 pi
  • c++ - 如何使用裸新初始化智能点?

    我正在尝试学习新的 C 标准 但在使用智能指针时我遇到了不足 这是我正在编写的一个不想运行的程序的代码 include
  • Julia 并行编程 - 使现有功能可供所有工作人员使用

    我面临以下问题 我有一个函数叫做火车模型在单个线程上运行很长时间 当它完成计算时 它返回一个函数作为输出参数 我们称之为f 当我询问这个 的类型时f 朱莉娅返回 具有 1 种方法的通用函数 我不确定最后一条信息对阅读本文的人是否有用 现在在