基于Gaussian 03 的计算化学集群系统方案(4)

时间:2008-11-22   来源:   网友评论:0   人气: 1440 作者:

1000M 以太网显示了更好的运算性能。在更大规模的计算问题上,如果采用千兆以太网,会得到比百兆以太网好很多的运算性能。

2.6. 关于g03 的应用部署问题

g03 应用通常不会采用太多的CPU 计算太大规模的问题,通常情况下32 CPU 的并行计算的规模已经被认为是较大规模的计算。同时由于该计算需要反复的验证过程,所以通常g03 计算采用分布式计算的方式,将多个计算任务分配到集群系统或者高性能计算机系统中,这个时候,针对Gaussian 03 计算的方案中就必须体现对系统的应用部署的优化。解决这个问题的关键点主要有如下几点:

 

1、您的应用最多希望使用多少CPU

假设您的应用最多希望使用32 CPU,则在配置集群系统方案的时候要提供至少32 CPU 同时计算的能力,同时为了满足冗余的需求,最好配置一倍左右的CPU 数。

 

2、您的大规模应用和小规模应用的计算频率比是多少?

同样假设您最多希望使用32 CPU,但是使用这么大规模进行计算的情况非常少,大部分的应用都是在8 CPU 以内进行的,则在部署系统的时候建议将这些系统按照8CPU 一组进行部署,并提供多组整合的能力,以确保大计算任务的顺利完成。

 

3、您的计算问题是否需要大量的IO 处理?

这个问题同样很关键,因为如果采用每个计算任务都使用单独的存储系统方案得话,通常造价较高,性价比不好,但是如果整个系统仅有一个存储入口,则在大量IO 频繁计算需求下,会造成整个系统的不可用。因此您的计算是否大多都是IO 量大的应用和是否都是CPU 量大的应用将决定整个系统的IO 节点数量和计算节点数量的比值。

 

4、您的系统是否具有良好的作业管理能力?

利用成熟的作业管理系统可以实现对计算资源的充分调度,极大地降低管理员的管理成本,从而提高整个系统可用性。

 

2.7. 操作系统和操作系统内核对g03 计算的影响

通常的共享内存服务器系统主要有两种架构,一种是基于NUMA 结构的内存访问架构,另外一种是基于SMP 的内存访问架构,两种架构的最主要的区别是在访问统一的内存空间的时候,NUMA 架构CPU 会优先访问离自己最近的内存,而SMP 架构的CPU 访问所有内存的速度是一样的。显然,在这样的架构条件下,采用NUMA 结构的CPU 可能会带来系统性能的提高。但是实验证明对于Gaussian 03 软件来说,这些内存访问带来系统性能的提高并不大,如下是对test415 1 CPU 计算所得到的结果:
A4.jpg
A4.jpg 
 

这其实和Gaussian 计算的特点有关,Gaussian 计算采用Link 计算的方式,内部有非常多的子运算程序,用来完成一个整体运算的不同步骤。而在这些子应用程序进行切换的时候,我们发现其切换的CPU 是非常随机的,有的时候采用CPU0,有的时候采用CPU1,或者切换的CPU2CPU3,等等。所以在计算的时候,特别是采用多线程进行计算的时候,CPU 无法确保会访问离自己最近的内存,这也是操作系统和软件层共同作用的结果。不过上面的测试结论至少证明,采用64 位系统下的64 Gaussian 03 软件的应用性能可以超过32 位系统下的32 Gaussian 03 应用性能。

 

2.8. 小结

经过前面的分析,我们认为构建一个计算化学计算硬件平台需要注意以下几点:

1 Gaussian 计算可以通过并行计算机实现性能的提高。

2 Gaussian 计算对计算能力的需求是很大的,越多的CPU 将提供越强大的计算能力

3 Gaussian 计算对内存的需求很大,通常一个CPU 至少要配置2G 的内存

4 Gaussian 计算对IO 的需求是根据应用的不同而不同的,并且如果采用多任务计算的分配方法,则建议在IO 层面进行全面的优化

5 Gaussian 计算的并行部分采用单节点内并行较多节点内并行效率更高,并且Linda 软件需要额外的付费,所以对于小规模的应用应使其尽量在一个节点内完成。

6 Gaussian 计算无法使用高速专用网,在高速专用网上运行


 

文章评论