abaqus
实验环境:rhel5.5
selinux是disabled  iptables off
desktop24.example.com
简介:
ABAQUS分布式并行计算(Linux系统)
一般而言,ABAQUS并行计算有两种模式:
(1) 本地并行:利用同一台计算机的多个处理器进行计算。
(2) 分布并行:利用相互连接的多台计算机进行计算,而每台计算机均可配置一个或者多个处理器。
进行分布式并行计算时,提交计算任务的计算机称为主计算机,一般前后处理和求解选项的设置都在主计算机上完成。参与并行计算的其它计算机都称为从计算机。ABAQUS分布式并行的主要安装配置使用过程,分成以下4个步骤:
1. 在所有参与并行计算的计算机上用相同的用户名和密码创建一个新帐号;
2. 用第1步创建的新帐号分别登录主、从计算机,在相同的目录下安装ABAQUS;
3. 在所有的从计算机上安装并设置Remote Shell (RSH) 服务;
4 用第1步中创建的新帐号登录主计算机,设置并行计算选项,提交计算任务。

步骤(1)cd /mnt
lftp 192.168.0.254
cd /pub/westos/abaqus
get TLF-SOFT-Simulia.Abaqus.v6.10.1.ISO-TBE-DVD1.iso TLF-SOFT-Simulia.Abaqus.v6.10.1.ISO-TBE-DVD2.iso
(2)先安装文档
mount -o loop TLF-SOFT-Simulia.Abaqus.v6.10.1.ISO-TBE-DVD2.iso /opt(记住先挂载的是2哦!)
/opt/setup(注意这个命令的执行应该是将全部的目录写下,不应该是去/opt下执行./setup否则会报错 ) 之后会有一个Scratch directory is:/tmp 会弹出一个:Staring up Abaqus Install hostname/IP address :desktop24.example.com-->Web server section(Abaqus Web server)-->Please choose the Abaqus documentation parent director(/usr/local/adaqus)-->Would you like to create it?(Yes)-->install
安装成功之后会在: /usr/local/abaqus下有个Documentation目录。

注意这里本人由于连接到其他的机子执行/opt/setup。出现如下异常:

本以为是因为没有安装gui相关的软件,可是安装之后仍然不行的,后来查阅资料得知是因为不再本机操作的原因,也就是说你要想在其他主机上操作,需要现在其他机子上执行xhost +localhost  或者直接到真机去执行就可以了。参考:http://www.linuxquestions.org/questions/linux-software-2/installing-abaqus-display-problem-789763/

(3) umount /opt
useradd abaqus
passwd abaqus
设置密码:redhat

mount -o loop TLF-SOFT-Simulia.Abaqus.v6.10.1.ISO-TBE-DVD1.iso /opt
cd /opt

less readme.txt(查看说明文档)
cd /usr/local/abaqus/Documentation/docs/v6.10/(里面是一些文档信息哦!)
/opt/setup

Scratch directory is:/tmp
Installation type(License)-->NO abaqus License。。。->Installation type(Just install the licensing utilities)-->Installation directory(/usr/local/adaqus)-->License server1()先停下.....
在命令行中:cd /opt/crack
cp abq6101.dat /usr/local/abaqus/License
cd /usr/local/abaqus/License
vim abq6101.dat

 
  
  1. SERVER desktop24.example.com ID=20111111 27011 

/usr/local/abaqus/License/lmgrd -c /usr/local/abaqus/License/abq6101.dat -l /tmp/abaqus.log(-l /tmp/abaqus.log意思是写进日志)
cat /tmp/abaqus.log可以看到 lmgrd tcp-port 27011(表示成功)你会看到:

回到刚才停止的地方:License server1(27011@desktop24.example.com)-->Documentation(file:///usr/local/abaqus/Documentation/docs/v6.10/index.html)-->Installation directory(/usr/local/abaqus)-->next-->I accept the terms of the License Agreement-->next->Install.
(4)cd /usr/local/abaqus/6.10-1/installation_info
cat vertify.html(从里面你可以看到你需要安装什么包啊之类的)
lftp 192.168.0.254
cd /pub/westos/abaqus
get Job30-15.inp
su - abaqus
/usr/local/abaqus/Commands/abaqus job=Job30-15 cpus=2 interactive
(cpus=2由cat /proc/cpuinfo看cpu core的个数interactive指的是交互式的。要想开机的时候就运行需要在/etc/rc.local写上:su - abaqus;`/usr/local/abaqus/License/lmgrd -c /usr/local/abaqus/License/abq6101.dat -l /tmp/abaqus.log`)
此时top你可以看到2个abaqus进程在运行。Command:explicit.exe

Ñ63 abaqus 25 0 437m 194m 44m R 96.4 9.7 1:16.82 explicit.exe
20964 abaqus 25 0 398m 173m 40m R 96.1 8.7 1:18.17 explicit.exe

实验2:
进行分布式并行计算时,提交计算任务的计算机称为主计算机,一般前后处理和求解选项的设置都在主计算机上完成。参与并行计算的其它计算机都称为从计算机。
ABAQUS分布式并行的主要安装配置使用过程,分成以下4个步骤:
1. 在所有参与并行计算的计算机上用相同的用户名和密码创建一个新帐号;
2. 用第1步创建的新帐号分别登录主、从计算机,在相同的目录下安装ABAQUS;
3. 在所有的从计算机上安装并设置Remote Shell (RSH) 服务;
4 用第1步中创建的新帐号登录主计算机,设置并行计算选项,提交计算任务。

环境:desktop38.example.com(主计算机)
desktop24.example.com(从计算机)
desktop40.example.com(从计算机)
步骤(1):
1. 在所有的计算机上创建新帐号
对于Linux系统,以root帐号登录,输入以下命令创建新帐号,并设置密码
[root ~]# useradd abaqus
[root ~]# passwd abaqus

假设设置为:redhat
对所有参与并行计算的计算机进行相同的操作,创建的用户名和密码也必须相同。
2. 安装ABAQUS
用第1步创建的新帐号分别登录主、从计算机,在相同的目录下安装ABAQUS(之前在挂载那2个iso镜像的时候已经安装好了!)
3. 安装配置RSH服务
为了使主计算机能在远程的从计算机上执行命令,必须在所有的从计算机上已安装并启动RSH服务。
(1) 在所有参与计算的计算机上,以root 登录,设置/etc/hosts: 用文本编辑器(例如: vi)编辑/etc/hosts,将每台计算机的IP 地址和主机名都列在此文件中。例如:
192.168.0.38 desktop38.example.com
192.168.0.24 desktop24.example.com
192.168.0.40 desktop40.example.com

并在每一台计算机上测试ping 所有其他机器的主机名。如有ping 不通的,请仔细检查各机器的IP 地址、主机名和/etc/hosts 文件的内容。常用命令:
查看主机名:hostname
查看本机的IP 地址:ifconfig
查看本级的/etc/hosts 文件:cat /etc/hosts
正常的话:在主计算机上desktop38.example.com:su - abaqus rsh 192.168.0.40 rsh 192.168.0.24都是可以的。 (要想通过rsh连接需要安装yum install rsh* -y 然后/etc/init.d/xinetd restart chkconfig rsh on chkconfig rexec on chkconfig rlogin on)
(2) 在所有参与计算的计算机上,以root 登录,开启所有的r 服务,包括rsh, rexec, rlogin。常用命令:
/etc/init.d/xinetd.d restart(守护进程)
查看r 后台服务的状态(以rsh 为例): chkconfig --list | grep rsh
开启r 后台服务:chkconfig rsh on(属于守护进程的服务的开启方式)
chkconfig rexec on
chkconfig rlogin on

关闭防火墙:/etc/rc.d/init.d/iptables stop
重新启动xinetd 进程(使服务生效):/etc/rc.d/init.d/xinetd restart
(如果还没有安装远程服务,请在主菜单依次选择System Settings > Add /Move Applications,选中网络服务器中的远程服务,点击Update。)
(3) 在abaqus新用户的主目录下新建一个新文件.rhosts,文件内容为:
desktop38.example.com abaqus(在desktop24.example.com和desktop40.example.com上执行,因为服务器不写回去默认的是本机。)
其中desktop38.example.com是主控制机的主机名,abaqus是在第2步中创建的用户名。最后执行以下命令修改该文件的属性:
chmod 600 ~/.rhosts
(4) 检查RSH服务:在主计算机上以第2步中创建的新用户名(abaqus)登录,执行以下命令
rsh 192.168.0.24 echo working(rsh 192.168.0.40 echo working)
其中192.168.0.24是远程计算机的主机名。如果以上设置正确的话,显示的结果等同于在本地机上执行echo working命令,也就是说如果成功会输出working;否则请根据以上说明重新进行设置。
注意:如果在rsh 192.168.0.24 echo working时候出现:543的错误,说明在24主机上多安装了:krb5-workstation.x86_64 应该卸载: yum remove krb5-workstation.x86_64
4. 设置并行计算选项(在主调度节点上:desktop38.example.com)
设置ABAQUS环境变量,进入
cd /usr/local/abaqus/6.10-1/site目录,编辑abaqus_v6.env文件:
在mp_rsh_command下面加一行
mp_host_list = [['desktop38.example.com',2],['desktop40.example.com',2],['desktop24.example.com',2]]
这里PCnode1’, PCnode2’, PCnode3’分别表示用来并行计算的计算机,后面的数字表示每个计算机可以使用的最大cpu数目。
测试:
/usr/local/abaqus/Commands/abaqus job=Job30-15 cpus=6 interactive
(连同主调度节点一起共6个cpu内核)
此时在desktop38.example.com(主计算机) top
desktop24.example.com(从计算机) top
desktop40.example.com(从计算机) top

观察会发现每个计算机上都有2个:
Ñ63 abaqus 25 0 437m 194m 44m R 96.4 9.7 1:16.82 explicit.exe
20964 abaqus 25 0 398m 173m 40m R 96.1 8.7 1:18.17 explicit.exe