我正在购买一台新的笔记本电脑用于工作。我是一名博士生,每天都使用 R 和 pyhton,经常运行大型模拟。我想知道对于运行具有大型数据集和大量模拟的 R,最重要的是什么:处理器速度还是 RAM?
答案1
现代计算机通常配备 2-4 GB 的 RAM,至少在 Windows 上,“推荐”的 R 版本仍然是 32 位的,这意味着,除非您使用支持程度较低的 64 位 R 版本,否则您将无法利用超过 2-4 GB 的内存。在 Linux 上,分发 64 位版本(如果您有内存,则出于所有实际目的可以使用无限量的内存)更为常见。此外,更多的 RAM 只会在您不再频繁交换到页面文件之前导致更快的处理速度。另一方面,处理器速度永远不会达到这种任意限制或收益递减的程度。
话虽如此,如果性能至关重要,那么首先要考虑的是使用比 R 或 Python 更快的语言。R 和 Python 是非性能关键代码的绝佳语言,程序员的便利性很重要,但如果您需要速度,那么最好学习 D、C#、Java 甚至 C++,并找到一个好的统计库来配合它们。在处理类似编写的代码时,这些语言的速度可能比 R 和 Python 快几个数量级。
答案2
取决于模拟的大小。如果模拟的数据量太大,以至于无法放入工作集(主内存)中,那么瓶颈就始终是硬盘。在这些情况下,增加内存将通过消除循环中的硬盘来提高性能,因为主内存比硬盘快几个数量级。另一方面,如果整个问题都适合放在 RAM 中,那么瓶颈可能是 CPU 时间。