“模拟退火算法的并行化”之“工欲善其事,必先利其器”

来源:互联网 发布:淘宝数据分析看不懂 编辑:程序博客网 时间:2024/05/01 08:21

书接上回《“模拟退火算法的并行化”之“接手‘硬骨头’”》,在我接手这项任务后,就要进行项目评估了。

孙子曰:“夫未战而庙算胜者,得算多也,未战而庙算不胜者,得算少也。多算胜,少算不胜,而况于无算乎!”,孙子又曰:“知己知彼,百战不殆;不知彼而知己,一胜一负;不知彼,不知己,每战必殆。”

我们工作时使用的平台是Linux/GNU系统,公司有个专门给我们软件组使用的服务器,名字叫做Blade,看来应该是个刀片服务器啦,大家可以脑补一下刀片服务器阵列的画面。这个服务器不赖,用top,然后按1,可以看到她如下:

Blade's top figure

看官可以看到她有十二个核,500+GB内存。使用

% cat /proc/cpuinfo | less...model name  :   Intel(R) Xeon(R) CPU E5-2643 v2 @ 3.50GHzcpu MHz     : 3500.230cache_size  : 25600 KBcache_alignment : 64...

可以看到这台服务器CPU的具体参数。性能不错,但是作为多线程测试平台,不行!

为什么不行?
且听我慢慢道来。当时大家发现这个平台上面测得的时间不是稳定的,但主管这个项目的人并不知道问题出在了哪里,而且一直使用这个平台进行测试,所以他的测试数据也只具有参考价值了。正巧我们组又搭建了两个服务器TM1和TM2,顾名思义,Timing Machine,主要用于测试时间性能的服务器啦,但这个系统不如Blade,top数据如下:

TM1's top figure

她只有4个核,内存也只有30GB左右,使用

$ cat /proc/cpuinfo | less...model name  : Intel(R) Core(TM) i7-4790K CPU @ 4.00GHzcpu MHz     : 4000.112cache size  : 8192 KBcache_alignment : 64...

缓存没有Blade大,但是主频稍高。

0 0
原创粉丝点击