R语言多线程运算

Python017

R语言多线程运算,第1张

如果你有台好电脑,R语言多线程绝对打开一个新的世界,而如果有台超级计算机,恭喜你,要上天了。

R多线程其实就是基于向量化,说白了就是要避免For循环,利用apply 的方法改造你的函数

For循环的作用就是反复读取数据,而apply函数则跳过这一步,直接让R去输入For循环想要输入的数据,理解了这一点,先封装函数,然后再调用多线程的apply的方式。

多线程有多种方法,容易搜到的教程我简单列两个,但是核心就是要封装函数,避免For,然后调用多线程apply,后再将每一个输入数据的结果在合并在一起。也许我表达的还不够清楚,但是请把这点留在心里,也许以后看多了就会有一点帮助。

教程一

教程二

教程三

我的一个例子:

很久很久没更新了,最近遇到了如题所示的问题

然后安静的让他跑着,回去睡觉了。但是。 一个核跑了一夜也没跑完

然后查了一下有parallel包,

加速显而易见,但是也不是成比例的,任务分发以及各核心之间转换也需要时间

fine, 焦虑。做实验去