对于复杂的数学计算,额外的线程或高速磁盘访问是否更重要?


8

下学期,我打算开始进行组合学研究。我曾经爱上Mac计算机和Wolfram Mathematica 8,并且打算将它们用于本项目和大学。我将是物理和数学双专业。由于预算有限,我想知道哪种应用程序应该优先处理:拥有四核处理器而不是两核处理器,还是拥有SSD而不是硬盘驱动器?


1
我可以自由地将问题标题编辑得更具体一点,并可能会基于不问实质性问题而动摇所有膝跳票以将其关闭。我个人认为这是此特定应用程序的一个好问题。
井2011年

3
实际上,我首先要说的是尽可能多地使用RAM。
liori 2011年

1
我同意增加内存。我对组合技术的了解很少,但是它们可能适合基于GPU的计算。如果它可以进行批量线程化,那么它可能会在使用CUDA或同等性能的GPU上更快地运行(md5破解要快很多,然后才是范围最高的CPU)。
Silverfire

我很好奇为什么要获得接近的投票-你们对这个问题有什么反对意见?
井2011年

Answers:


17

对于您将要使用的应用程序,与SSD相比,首选4核。

Mathematica特别支持多核处理器,并且扩展性非常好。看这里:

http://www.wolfram.com/technology/guide/MulticoreSupport/

您不会期望与数学和物理应用程序中的SSD驱动器没有太大区别,因为它们不处理磁盘中的千兆字节数据。


+1-这是极少数情况下的实例,其中更多的内核/更高的时钟将比SSD提供更大的好处。到目前为止,与大多数CPU相比,FAR更容易在大多数Mac中升级存储。
afrazier 2011年

我通常不喜欢这样的问题,但这是事实。这类计算的速度(除非它们具有微不足道的复杂性)将从其他处理线程中获得巨大的提升。
Shinrai 2011年

1
多年前,我也面临着类似的决定。获得带硬盘驱动器的i486DX33或仅带软盘驱动器的i486DX50。对于纯粹的数学计算(例如我所关心的那些),尽管磁盘访问速度大大降低,但DX50还是胜出了!
Brian Knoblauch

对于需要大文件才能从快速磁盘中获得优势,我将部分不同意。在过去的15年中,我与一系列核和粒子物理分析引擎以及蒙特卡洛斯一起工作。尽管这些筛选的数据堆适中,但IO绑定的文件的共同点是使用许多单独的文件...例如十个配置文件(包括机制和(或)默认故障转移的多层)和中端磁盘基于数据库的几何数据库,三个日志文件,一个检查点系统,以及较大的输入和输出文件。
dmckee ---前主持人小猫,

1
+1-但我也建议您确保系统也有足够的RAM。确保您的系统中有8GB而不是4GB(在Lion中,这确实勉强够用),并且要有更快的CPU,除非您要处理GB到GB的数据。(钻探测量,核炸弹模拟等)如果以后需要更多/更快的存储,可以随时使用连接到Thunderbolt的外接盒。除非要使用Mac Pro,否则更改CPU是不切实际的。
SplinterReality

3

在确定新的计算机要求时,我建议您听取教授关于应对组合爆炸的建议。毫无疑问,您将不得不解决一些具有这种副作用的问题。如果您的中间存储需求超出了可用的主内存,则系统将开始交换磁盘内存(抖动),甚至是简单的问题也将“永远”解决。

过去几年中,我不得不在Mathematica中解决此类问题时,我的座右铭是:“如果摔打,就死定了。”


2

我将其作为一个单独的答案提供,因为还没有人提到沙发上的大象:

在大多数Mac(Mac Pro以外的任何其他产品)上,后来更改CPU是不切实际的,但是如果您拥有非常庞大的数据集,则可以在以后添加快速的外部存储,而将其存储在内部驱动器上则是不切实际的。

对于不需要高GB到TB数据的任何事情,CPU都将更加有益;如果您需要高GB / TB的数据,SSD也不会削减数据,您将需要一个外接盒。

我的建议: 8GB的RAM和您可以负担的最快的CPU。如果以后需要非常快速的磁盘来处理TB的数据,请购买带有Thunderbolt接口的外接盒。(无论如何,最大的SSD不会容纳那么多)


1

如果您的任务可以并行化(对于数学/物理学通常可以并行化),则可以使用多个核以及您可以负担/将需要的尽可能多的RAM。通常,情况是您需要大量磁盘空间来存储旧数据(通过各种方法处理),并且与CPU部分相比,计算的IO部分可以忽略不计。我可能会考虑获得一个可以针对严重的计算需求进行编程的优质GPU;但这可能对您的问题来说是矫kill过正。

对于7200rpm的硬盘,将1GB的数据从磁盘加载到缓冲区(可以存入内存)大约需要10秒钟。这是大多数计算的一次性成本。复杂的数学计算很少会花费几秒钟的时间(如果确实如此,瓶颈是您解释结果并给出要运行的新任务,而不是IO速度)。具有将数据加载到内存中的计算瓶颈并没有什么不同寻常,并且完成一个任务需要一个核心2天的时间。但是4个核心可以在半天之内完成它。现在没有足够的RAM且必须将RAM读/写到磁盘将大大减慢速度(即使使用SSD驱动器作为交换)。

作为粗略的指导;从RAM读取的随机访问大约需要10 ns;从比其慢一万倍(100微秒)的固态硬盘; 硬盘的速度大约比硬盘(10毫秒)慢100倍。因此,您真的不想从SSD或硬盘中进行随机访问读取。同样,对于从磁盘的连续读取(例如,您正在将整个数据集读取到内存中的文件),硬盘的性能也不会很差。


-1

如果您正在使用MacBook Pro,那么我将屏幕大小首选项放在首位。据我所知,这实际上也定义了机器中的内核数量。然后最大化RAM(可能是第三方)。然后查看SSD。我将15英寸型号的2.0GHz和2.2GHz Core之间的差异留到最后。由于价格的差异,性能的差异相对较小。


我假设OP会像这样认真工作,而只是在看台式机,而不是笔记本电脑。您可以用自己的钱获得更多的处理能力(是的,甚至来自Apple McOverprice ...)
Shinrai 2011年

@Shinrai如果没有关于OP正在考虑的内容,价格范围,OP是否已经有显示器等的更多信息,很难说。iMac的价格相当不错,包括漂亮的显示器,以及所有其他产品。有四核处理器。但是这台计算机也可用于大学,我认为这使笔记本电脑很有吸引力,因为它将笔记本电脑带到图书馆,与团体会面以进行项目工作等等。...即使在笔记本电脑上,您也经常可以利用GPU来获得更多的东西(FAST )的核心,可用于Mathematica中的特定类型的计算(带有额外的编程)。
Brett冠军,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.