可以将for循环与依赖项并行化吗?

时间:2015-06-24 07:51:24

标签: r rparallel

Hello老手R用户,

我对R很新,我想知道是否有可能将我的过程并行。我的数据集基本上是从pcap文件派生的,我在那里提取了与特定协议-MODBUS / TCP相对应的数据包。有超过800k的数据包,每两个连续的数据包对应于特定(即相同)MODBUS事务的查询/响应。

由于某些值包含在查询/响应中,我创建了一个初始for循环,逐行逐行“排列”数据,以便每个事务都有一行,并填充所有变量来自查询/响应行。区分查询/响应的唯一方法是使用源/目标端口号,它位于条件if语句中。

我正在使用数据表,设置键,预分配变量(合并表/结果)。应用于向量的函数(结果data.table中的列)执行得相当快。

我的电脑正在使用4个处理器运行debian wheezy。既然存在依赖关系,那么从我的阅读中我理解的是,利用并行处理并不是真的可行吗?但是,有什么方法可以对整个数据集进行分区,让它们并行处理然后合并结果?运行花了3个多小时,也许还有其他一些我可以申请的优化?

任何指导/指示非常感谢。谢谢!

1 个答案:

答案 0 :(得分:0)

我已经在C中重新实现了代码,并且发现了我目前正在探索的Rcpp。这似乎是要走的路。