所以针对我目前的程序特地写过一个挑最佳核数的测试程序。
matlab中eigs本身也是多线程应用的,指定规模后,不开parpool一个迭代需要跑31秒(相当于有多线程)。parpool(1)是47秒,parpool(4)是48~51秒,parpool(20)大概衰减到60-70秒之间。因为每个迭代内存峰值在4G左右,整机目前才配64G,所以parpool(20)的时候一个worker掉线,相当于parpool(19)。
虽然折腾,整体非常满意。整套下来才花了1900不到(显卡硬盘用旧的且闲置的),还不到去年一个12700的价格。后面再200块钱加个矿卡去。
【 在 heideggerr 的大作中提到: 】
: 根据阿姆达定律,即使只有5%的通讯成本,加速比最多也只能达到20(现实一般只能到10左右),所以,超过10核以后,增加核心数所带来的提升就越来越小,到了20核之后,就没有提升了。所以,没必要盲目追求增加核心数。
:
--
FROM 124.90.178.*