有没有人做过直接的苹果对苹果比较:
- 使用 RInside 调用在 R 函数中完成的算法的 C++ 应用程序
- 一个 C++ 应用程序调用等价算法,但使用 GSL、LAPACK 或 CBLAS 等数学库之一?
我正在尝试获得更快的基准。我也对什么样的并行化/多线程设计感兴趣,可以使 C++ 中的计算更快?
除了初始化 R 的启动成本(您只能在案例 1)中通过研究设计获得,结果应该是相同的,因为如果构建正确,R 本身使用完全相同的 BLAS 和 LAPACK 库。
我有一个待更新的包/小插图,它为这些问题提出了一个基准测试框架,因为这个问题很容易被误解——请参阅gcbd 的 CRAN 页面以及相应的 pdf vignette。
如果您以不同的方式构建 R(例如,静态构建,或使用其自己的 BLAS / LAPACK 源),那么您会得到不同的结果,但您也不会进行苹果对苹果的比较。