并行化使用 rpy2 的 python 代码的最有效方法是什么?
What is the most efficient way to parallelize python code that uses rpy2?
我正在使用 python3,在其中,我使用 rpy2
程序包来访问 R,在完成繁重计算的地方传入 R 代码,并将结果返回给 python.特别是,我正在使用 R 的 lfe
函数(文档 here)。
我想知道哪个选项更好:在 python 或 R 中进行并行化。这有关系吗?我们为什么要怀疑其中一个比另一个更有效率?谢谢
除了 multi-threading(这不是并行化 Python 代码的好方法,因为 GIL),这是因为 R 无法处理并发,任何其他并行化的方法Python 任务(您会发现有人将 rpy2
与 pyspark
和 multiprocessing
一起使用的报告)或 R(有用于并行化的 R 包)将起作用。
我正在使用 python3,在其中,我使用 rpy2
程序包来访问 R,在完成繁重计算的地方传入 R 代码,并将结果返回给 python.特别是,我正在使用 R 的 lfe
函数(文档 here)。
我想知道哪个选项更好:在 python 或 R 中进行并行化。这有关系吗?我们为什么要怀疑其中一个比另一个更有效率?谢谢
除了 multi-threading(这不是并行化 Python 代码的好方法,因为 GIL),这是因为 R 无法处理并发,任何其他并行化的方法Python 任务(您会发现有人将 rpy2
与 pyspark
和 multiprocessing
一起使用的报告)或 R(有用于并行化的 R 包)将起作用。