Linux High Performance Computing Cluster -How to

Print
User Rating: / 21
PoorBest 

Linux High performance Computing Implementation Guide. By Syed Asim Abbas with help MR Kamarn Azeem CBTs.

For comments and suggestions : This e-mail address is being protected from spambots. You need JavaScript enabled to view it

 

 

 

HPCC Installation :

--------------------

 

I have 4 node for HPCC. 2 nodes are HP ML 360 servers with 2 x dual core processor. One is 1.7 mhz processor and other is AMD Sempron(tm) Processor 2600+

 

1) Centos 5.2 Installation on all nodes

2) Stop unnecessary services

3) /etc/hosts

 

------------

 

vi /etc/hosts (hpcc2)

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1 localhost.localdomain localhost

192.168.1.180 hpcc1.isb.ots.com hpcc1

192.168.1.49 hpcc2.isb.ots.com hpcc2

192.168.1.69 test.isb.com test

192.168.1.40 nworkhorse.isb.ots.com nworkhorse

 

vi /etc/hosts (test)

 

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1 localhost.localdomain localhost

192.168.1.180 hpcc1.isb.ots.com hpcc1

192.168.1.49 hpcc2.isb.ots.com hpcc2

192.168.1.69 test.isb.com test

192.168.1.40 nworkhorse.isb.ots.com nworkhorse

 

 

vi /etc/hosts (nworkhorse)

 

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1 localhost.localdomain localhost

192.168.1.180 hpcc1.isb.ots.com hpcc1

192.168.1.49 hpcc2.isb.ots.com hpcc2

192.168.1.69 test.isb.com test

192.168.1.40 nworkhorse.isb.ots.com nworkhorse

 

 

 

root@hpcc1 ~]# ssh-keygen -t dsa

Generating public/private dsa key pair.

Enter file in which to save the key (/root/.ssh/id_dsa):

/root/.ssh/id_dsa already exists.

Overwrite (y/n)?

[root@hpcc1 ~]# ssh-keygen -t dsa

Generating public/private dsa key pair.

Enter file in which to save the key (/root/.ssh/id_dsa):

/root/.ssh/id_dsa already exists.

Overwrite (y/n)? y

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /root/.ssh/id_dsa.

Your public key has been saved in /root/.ssh/id_dsa.pub.

The key fingerprint is: [root@hpcc2 ~]# ssh-keygen -t dsa

Generating public/private dsa key pair.

Enter file in which to save the key (/root/.ssh/id_dsa):

/root/.ssh/id_dsa already exists.

Overwrite (y/n)? y

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /root/.ssh/id_dsa.

Your public key has been saved in /root/.ssh/id_dsa.pub.

The key fingerprint is:

3a:c0:dc:ad:aa:52:07:f8:43:b2:cb:ee:81:c8:6a:8f This e-mail address is being protected from spambots. You need JavaScript enabled to view it

[root@hpcc2 ~]# scp ~/.ssh/id_dsa.pub root@hpcc1:/root/.ssh/authorized_keys

root@hpcc1's password:

id_dsa.pub 100% 612 0.6KB/s 00:00

[root@hpcc2 ~]#

[root@hpcc2 ~]#

[root@hpcc2 ~]#

[root@hpcc2 ~]#

[root@hpcc2 ~]# ssh hpcc1

Last login: Tue May 5 11:02:26 2009 from 192.168.1.19

[root@hpcc1 ~]# logout

 

 

7b:a6:db:3e:55:ce:da:6b:ce:48:28:d3:9a:29:84:82 This e-mail address is being protected from spambots. You need JavaScript enabled to view it

[root@hpcc1 ~]# scp ~/.ssh/id_dsa.pub root@hpcc2:/root/.ssh/authorized_keys

root@hpcc2's password:

id_dsa.pub 100% 612 0.6KB/s 00:00

[root@hpcc1 ~]# ssh hpcc2

Last login: Wed May 13 11:03:40 2009 from hpcc1.isb.ots.com

[root@hpcc2 ~]# logout

Connection to hpcc2 closed.

 

 

 

 

NTP: for all nodes :

-----

 

Node 1

[root@hpcc2 ~]# vi /etc/ntp.conf

[root@hpcc2 ~]# /etc/init.d/ntpd restart

Shutting down ntpd: [FAILED]

Starting ntpd: [ OK ]

[root@hpcc2 ~]# ntpq -p -n

remote refid st t when poll reach delay offset jitter

==============================================================================

127.127.1.0 .LOCL. 10 l 5 64 1 0.000 0.000 0.001

[root@hpcc2 ~]#

 

 

 

Node 2

 

 

[root@hpcc2 ~]# /etc/init.d/ntpd restart

Shutting down ntpd: [ OK ]

Starting ntpd: [ OK ]

[root@hpcc2 ~]# ntpq -p -n

remote refid st t when poll reach delay offset jitter

==============================================================================

127.127.1.0 .LOCL. 10 l 1 64 1 0.000 0.000 0.001

[root@hpcc2 ~]# vi /etc/ntp.conf

[root@hpcc2 ~]# /etc/init.d/ntpd restart

Shutting down ntpd: [ OK ]

Starting ntpd: [ OK ]

[root@hpcc2 ~]# ntpq -p -n

remote refid st t when poll reach delay offset jitter

==============================================================================

10.0.0.1 LOCAL(0) 11 u - 64 1 0.155 -691264 0.001

127.127.1.0 .LOCL. 10 l - 64 0 0.000 0.000 0.001

[root@hpcc2 ~]#

 

Node 3

 

[root@test ~]# /etc/init.d/ntpd restart

Shutting down ntpd: [ OK ]

Starting ntpd: [ OK ]

[root@test ~]# ntpq -p -n

remote refid st t when poll reach delay offset jitter

==============================================================================

127.127.1.0 .LOCL. 10 l 1 64 1 0.000 0.000 0.001

[root@test ~]# vi /etc/ntp.conf

[root@test ~]# /etc/init.d/ntpd restart

Shutting down ntpd: [ OK ]

Starting ntpd: [ OK ]

[root@test ~]# ntpq -p -n

remote refid st t when poll reach delay offset jitter

==============================================================================

192.168.1.180 LOCAL(0) 11 u - 64 1 0.155 -691264 0.001

127.127.1.0 .LOCL. 10 l - 64 0 0.000 0.000 0.001

[root@test ~]#

 

 

[root@nworkhorse ~]# /etc/init.d/ntpd restart

Shutting down ntpd: [ OK ]

Starting ntpd: [ OK ]

[root@nworkhorse ~]# ntpq -p -n

remote refid st t when poll reach delay offset jitter

==============================================================================

127.127.1.0 .LOCL. 10 l 1 64 1 0.000 0.000 0.001

[root@nworkhorse ~]# vi /etc/ntp.conf

[root@nworkhorse ~]# /etc/init.d/ntpd restart

Shutting down ntpd: [ OK ]

Starting ntpd: [ OK ]

[root@nworkhorse ~]# ntpq -p -n

remote refid st t when poll reach delay offset jitter

==============================================================================

192.168.1.180 LOCAL(0) 11 u - 64 1 0.155 -691264 0.001

127.127.1.0 .LOCL. 10 l - 64 0 0.000 0.000 0.001

[root@nworkhorse ~]#

 

 

 

 

 

 

PDSH:

-----

 

 

[root@hpcc1 ~]# wget http://nchc.dl.sourceforge.net/sourceforge/pdsh/pdsh-2.18-1.src.rpm

--11:52:48-- http://nchc.dl.sourceforge.net/sourceforge/pdsh/pdsh-2.18-1.src.rpm

Resolving nchc.dl.sourceforge.net... 211.79.60.17, 2001:e10:ffff:1f02::17

Connecting to nchc.dl.sourceforge.net|211.79.60.17|:80... connected.

HTTP request sent, awaiting response... 200 OK

Length: 462342 (452K) [application/x-wais-source]

Saving to: `pdsh-2.18-1.src.rpm'

 

100%[======================================================================================================>] 462,342 6.43K/s in 16s

 

11:53:05 (28.9 KB/s) - `pdsh-2.18-1.src.rpm' saved [462342/462342]

 

[root@hpcc1 ~]# scp pdsh-2.18-1.src.rpm hpcc2:/root

pdsh-2.18-1.src.rpm 100% 452KB 451.5KB/s 00:00

[root@hpcc1 ~]#

 

 

 

[root@hpcc1 ~]# rpmbuild --rebuild pdsh-2.18-1.src.rpm

Installing pdsh-2.18-1.src.rpm

warning: user grondo does not exist - using root

warning: group grondo does not exist - using root

warning: user grondo does not exist - using root

warning: group grondo does not exist - using root

Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.4710

+ umask 022

+ cd /usr/src/redhat/BUILD

+ LANG=C

 

 

 

 

 

 

 

[root@hpcc2 ~]# rpmbuild --rebuild pdsh-2.18-1.src.rpm

Installing pdsh-2.18-1.src.rpm

warning: user grondo does not exist - using root

warning: group grondo does not exist - using root

warning: user grondo does not exist - using root

warning: group grondo does not exist - using root

Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.4710

+ umask 022

+ cd /usr/src/redhat/BUILD

+ LANG=C

 

 

 

[root@hpcc1 i386]# rpm -ivh pdsh-*

Preparing... ########################################### [100%]

1:pdsh-rcmd-ssh ########################################### [ 14%]

2:pdsh ########################################### [ 29%]

3:pdsh-debuginfo ########################################### [ 43%]

4:pdsh-mod-dshgroup ########################################### [ 57%]

5:pdsh-mod-machines ########################################### [ 71%]

6:pdsh-mod-netgroup ########################################### [ 86%]

7:pdsh-rcmd-exec ########################################### [100%]

 

 

[root@hpcc2 i386]# rpm -ivh pdsh-*

Preparing... ########################################### [100%]

1:pdsh-rcmd-ssh ########################################### [ 14%]

2:pdsh ########################################### [ 29%]

3:pdsh-debuginfo ########################################### [ 43%]

4:pdsh-mod-dshgroup ########################################### [ 57%]

5:pdsh-mod-machines ########################################### [ 71%]

6:pdsh-mod-netgroup ########################################### [ 86%]

7:pdsh-rcmd-exec ########################################### [100%]

 

 

[root@test ~]# rpm -ivh /usr/src/redhat/RPMS/i386/pdsh-*

Preparing... ##### ( 14%)

########################################### [100%]

1:pdsh-rcmd-ssh ########################################### [ 14%]

2:pdsh ########################################### [ 29%]

3:pdsh-debuginfo ########################################### [ 43%]

4:pdsh-mod-dshgroup ########################################### [ 57%]

5:pdsh-mod-machines ########################################### [ 71%]

6:pdsh-mod-netgroup ########################################### [ 86%]

7:pdsh-rcmd-exec ########################################### [100%]

 

 

[root@ nworkhorse i386]# rpm -ivh pdsh-*

Preparing... ########################################### [100%]

1:pdsh-rcmd-ssh ########################################### [ 14%]

2:pdsh ########################################### [ 29%]

3:pdsh-debuginfo ########################################### [ 43%]

4:pdsh-mod-dshgroup ########################################### [ 57%]

5:pdsh-mod-machines ########################################### [ 71%]

6:pdsh-mod-netgroup ########################################### [ 86%]

7:pdsh-rcmd-exec ########################################### [100%]

 

 

 

 

NFS Setup

 

[root@hpcc1 .ssh]# vi /etc/exports
/cluster      *(rw,sync)


[root@hpcc1 .ssh]# pdsh -a mkdir /cluster

failed to install module options for "misc/dshgroup"

[root@hpcc1 .ssh]#

[root@hpcc1 .ssh]#

[root@hpcc1 .ssh]# /etc/init.d/nfs restart


Shutting down NFS mountd: [FAILED]

Shutting down NFS daemon: [FAILED]

Shutting down NFS quotas: [FAILED]

Shutting down NFS services: [ OK ]

Starting NFS services: [ OK ]

Starting NFS quotas: [ OK ]

Starting NFS daemon: [ OK ]

Starting NFS mountd: [ OK ]

[root@hpcc1 .ssh]#

 

 

[root@hpcc2 .ssh]# mount -t nfs hpcc1:/cluster/ /cluster/

[root@hpcc2 .ssh]#

[root@hpcc2 .ssh]#

[root@hpcc2 .ssh]# df -

df: `-': No such file or directory

[root@hpcc2 .ssh]# df -h

Filesystem Size Used Avail Use% Mounted on

/dev/cciss/c0d0p2 29G 5.4G 22G 20% /

tmpfs 1.7G 0 1.7G 0% /dev/shm

hpcc1:/cluster/ 19G 6.3G 12G 35% /cluster

[root@hpcc2 .ssh]#

 

Node 1

[root@hpcc1 /]# groupadd -g 604 power

[root@hpcc1 /]# useradd -u 700 -g 604 -d /cluster/power hpower

Node 2

[root@hpcc2 ~]# groupadd -g 604 power

[root@hpcc2 ~]# useradd -u 700 -g 604 -d /cluster/power hpower

useradd: warning: the home directory already exists.

Not copying any file from skel directory into it.

[root@hpcc2 ~]#

 

Node 3

 

[root@test]# mount -t nfs hpcc1:/cluster/ /cluster/

[root@test ~]# mkdir /cluster

[root@test ~]# groupadd -g 604 power

 

[root@test ~]# useradd -u 700 -g 604 -d /cluster/power hpower

useradd: warning: the home directory already exists.

Not copying any file from skel directory into it.

 

Node 4

[root@nworkhorse ~]# mkdir /cluster

[root@nworkhorse ~]# mount -t nfs hpcc1:/cluster/ /cluster/

[root@nworkhorse ~]# groupadd -g 604 power

[root@nworkhorse ~]# useradd -u 700 -g 604 -d /cluster/power hpower

useradd: warning: the home directory already exists.

Not copying any file from skel directory into it.

 

 

Node 1

 

[hpower@hpcc1 ~]$ ssh-keygen -t dsa

Generating public/private dsa key pair.

Enter file in which to save the key (/cluster/power/.ssh/id_dsa):

Created directory '/cluster/power/.ssh'.

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /cluster/power/.ssh/id_dsa.

Your public key has been saved in /cluster/power/.ssh/id_dsa.pub.

The key fingerprint is:

79:d4:a0:4e:2e:e5:b1:05:5e:9c:93:56:06:0f:d4:1f This e-mail address is being protected from spambots. You need JavaScript enabled to view it

[hpower@hpcc1 ~]$

[hpower@hpcc1 ~]$

[hpower@hpcc1 ~]$ ls

[hpower@hpcc1 ~]$ cd .ssh/

[hpower@hpcc1 .ssh]$ ls

id_dsa id_dsa.pub

[hpower@hpcc1 .ssh]$ vi authorized

[hpower@hpcc1 .ssh]$ vi id_dsa.pub

[hpower@hpcc1 .ssh]$ cat id_dsa.pub > authorized_keys

 

 

Node 2

 

[hpower@hpcc2 ~]$ ssh-keygen -t dsa

Generating public/private dsa key pair.

Enter file in which to save the key (/cluster/power/.ssh/id_dsa):

/cluster/power/.ssh/id_dsa already exists.

Overwrite (y/n)? y

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /cluster/power/.ssh/id_dsa.

Your public key has been saved in /cluster/power/.ssh/id_dsa.pub.

The key fingerprint is:

85:5a:0f:c2:d6:21:6e:55:38:24:5d:60:02:28:16:7b This e-mail address is being protected from spambots. You need JavaScript enabled to view it

[hpower@hpcc2 ~]$

 

 

 

[hpower@hpcc2 ~]$ cd .ssh/

[hpower@hpcc2 .ssh]$ cat id_dsa.pub >> authorized_keys

 

Node 3

[hpower@test ~]$ ssh-keygen -t dsa

Generating public/private dsa key pair.

Enter file in which to save the key (/cluster/power/.ssh/id_dsa):

/cluster/power/.ssh/id_dsa already exists.

Overwrite (y/n)? y

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /cluster/power/.ssh/id_dsa.

Your public key has been saved in /cluster/power/.ssh/id_dsa.pub.

The key fingerprint is:

82:d9:8e:34:48:a7:f8:32:21:8d:e6:17:3d:2b:dd:21 This e-mail address is being protected from spambots. You need JavaScript enabled to view it

 

 

[hpower@test .ssh]$ cat id_dsa.pub >> authorized_keys

 

 

 

 

Node 4

 

[hpower@nworkhorse ~]$ ssh-keygen -t dsa

Generating public/private dsa key pair.

Enter file in which to save the key (/cluster/power/.ssh/id_dsa):

/cluster/power/.ssh/id_dsa already exists.

Overwrite (y/n)? y

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /cluster/power/.ssh/id_dsa.

Your public key has been saved in /cluster/power/.ssh/id_dsa.pub.

The key fingerprint is:

c1:a6:01:ec:1e:a6:e9:8b:5e:89:2d:33:06:8b:24:cb This e-mail address is being protected from spambots. You need JavaScript enabled to view it

[hpower@nworkhorse ~]$ cat id_dsa.pub >> authorized_keys

cat: id_dsa.pub: No such file or directory

[hpower@nworkhorse ~]$ cd .ssh/

[hpower@nworkhorse .ssh]$ cat id_dsa.pub >> authorized_keys

 

 

 

 

 

 

[hpower@hpcc1 .ssh]$ chmod 644 authorized_keys

[hpower@hpcc1 .ssh]$ ssh hpcc2

The authenticity of host 'hpcc2 (192.168.1.49)' can't be established.

RSA key fingerprint is 99:6f:8d:b7:8b:89:ae:63:cf:e8:3f:3e:60:d1:bb:c3.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'hpcc2,192.168.1.49' (RSA) to the list of known hosts.

[hpower@hpcc2 ~]$ logout

Connection to hpcc2 closed.

[hpower@hpcc1 .ssh]$ ssh hpcc1

Last login: Sat Jun 6 14:25:48 2009 from hpcc2.isb.ots.com

[hpower@hpcc1 ~]$ logout

 

 

 

 

 

[hpower@hpcc2 .ssh]$ ssh hpcc1

The authenticity of host 'hpcc1 (192.168.1.180)' can't be established.

RSA key fingerprint is a2:04:92:48:b8:58:56:b7:24:9d:e5:da:30:75:92:b6.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'hpcc1,192.168.1.180' (RSA) to the list of known hosts.

[hpower@hpcc1 ~]$ logout

Connection to hpcc1 closed.

[hpower@hpcc2 .ssh]$ ssh hpcc2

Last login: Sat Jun 6 14:25:41 2009 from hpcc1.isb.ots.com

[hpower@hpcc2 ~]$ logout

 

 

 

 

 

 

 

 

[root@hpcc1 ~]# cp mpich2-1.0.8p1.tar.gz /cluster/

[root@hpcc1 ~]#

 

[root@hpcc1 /]# chown hpower.power /cluster/ -R

 

 

 

 

hpower@hpcc1 ~]$ cd ..

[hpower@hpcc1 cluster]$ ls

mpich2-1.0.8p1.tar.gz power

[hpower@hpcc1 cluster]$ tar zxvf mpich2-1.0.8p1.tar.gz

mpich2-1.0.8p1/

mpich2-1.0.8p1/mpich2.def

mpich2-1.0.8p1/test/

mpich2-1.0.8p1/test/.codingcheck

 

 

[hpower@hpcc1 mpich2-1.0.8p1]$ ./configure --prefix=/cluster/mpich2

 

config.status: executing default-3 commands

Configuration completed.

 

If done with out any error then

[hpower@hpcc1 mpich2-1.0.8p1]$ make

 

 

[hpower@hpcc1 mpich2-1.0.8p1]$ make install

 

 

[hpower@hpcc1 ~]$ vi .bash_profile

 

 

# .bash_profile

 

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

 

# User specific environment and startup programs

PATH=$PATH:$HOME/bin:/cluster/mpich2/bin

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/cluster/mpich2/lib

#PATH=$PATH:$HOME/bin

export PATH

export LD_LIBRARY_PATH

 

 

[mpiuser@node2 ~]$ source .bash_profile

 

 

[mpiuser@node1 ~]$ echo $PATH

/usr/lib/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/cluster/mpiuser/bin:/cluster/mpiuser/bin:/cluster/mpich2/bin

 

Create new file :

 

[hpower@hpcc1 ~]$ vi mpd.hosts

 

hpcc1

hpcc2

 

 

Create new file :

 

[hpower@hpcc1 ~]$ vi mpd.hosts

 

 

secretword=asim

 

 

 

[mpiuser@node1 ~]$ chmod 600 .mpd.conf

 

 

run

 

[hpower@hpcc1 ~]$ mpd &

 

 

[hpower@hpcc1 ~]$ mpd &

[1] 13499

[hpower@hpcc1 ~]$ mpdtrace

hpcc1

[hpower@hpcc1 ~]$ mpdtrace

hpcc1

[hpower@hpcc1 ~]$ mpdallexit

 

 

 

[hpower@hpcc1 ~]$ mpdboot -n 2

[hpower@hpcc1 ~]$ mpdtrace

hpcc1

hpcc2

[hpower@hpcc1 ~]$

Both nodes added Good

 

 

For Checkup

[hpower@hpcc1 ~]$ mpdboot -n 2 --chkuponly

checking hpcc2

there are 2 hosts up (counting local)

 

 

 

Now let's start some becnhmarking

 

[hpower@hpcc1 cluster]$ cd mpich2-1.0.8p1/examples/

 

cpi file already complied and executeable

 

-rw-r--r-- 1 hpower power 678 Nov 3 2007 child.c

-rwxr-xr-x 1 hpower power 576450 Jun 6 14:34 cpi

-rw-r--r-- 1 hpower power 1515 Nov 3 2007 cpi.c

-rw-r--r-- 1 hpower power 1964 Jun 6 14:34 cpi.o

-rw-r--r-- 1 hpower power 4469 Nov 3 2007 cpi.vcproj

drwxr-xr-x 2 hpower power 4096 Jun 6 14:31 cxx

drwxr-xr-x 2 hpower power 4096 Mar 27 01:40 developers

-rw-r--r-- 1 hpower power 10446 Nov 3 2007 examples.sln

drwxr-xr-x 2 hpower power 4096 Jun 6 14:31 f77

drwxr-xr-x 2 hpower power 4096 Jun 6 14:31 f90

-rw-r--r-- 1 hpower power 455 Nov 3 2007 hellow.c

-rw-r--r-- 1 hpower power 1892 Nov 3 2007 icpi.c

-rw-r--r-- 1 hpower power 6802 Jun 6 14:31 Makefile

-rw-r--r-- 1 hpower power 6767 Mar 27 01:40 Makefile.in

-rw-r--r-- 1 hpower power 1490 Mar 12 2008 Makefile.sm

drwxr-xr-x 2 hpower power 4096 Mar 27 01:39 mpiexec

-rw-r--r-- 1 hpower power 1049 Nov 3 2007 parent.c

-rw-r--r-- 1 hpower power 46399 Nov 3 2007 pmandel.c

-rw-r--r-- 1 hpower power 47798 Nov 3 2007 pmandel_fence.c

-rw-r--r-- 1 hpower power 4522 Nov 3 2007 pmandel_fence.vcproj

-rw-r--r-- 1 hpower power 45576 Nov 3 2007 pmandel_service.c

-rw-r--r-- 1 hpower power 4532 Nov 3 2007 pmandel_service.vcproj

-rw-r--r-- 1 hpower power 47510 Nov 3 2007 pmandel_spaserv.c

-rw-r--r-- 1 hpower power 4510 Nov 3 2007 pmandel_spaserv.vcproj

-rw-r--r-- 1 hpower power 49858 Nov 3 2007 pmandel_spawn.c

-rw-r--r-- 1 hpower power 4522 Nov 3 2007 pmandel_spawn.vcproj

-rw-r--r-- 1 hpower power 4492 Nov 3 2007 pmandel.vcproj

-rw-r--r-- 1 hpower power 2175 Nov 3 2007 README

-rw-r--r-- 1 hpower power 1116 Nov 3 2007 spawn_merge_child1.c

-rw-r--r-- 1 hpower power 694 Nov 3 2007 spawn_merge_child2.c

-rw-r--r-- 1 hpower power 1795 Nov 3 2007 spawn_merge_parent.c

-rw-r--r-- 1 hpower power 3554 Nov 3 2007 spawntest.vcproj

-rw-r--r-- 1 hpower power 1642 Nov 3 2007 srtest.c

drwxr-xr-x 7 hpower power 4096 Mar 27 01:40 windows

 

 

 

 

 

 

 

 

 

[hpower@hpcc1 ~]$ cd -

/cluster/mpich2-1.0.8p1/examples

[hpower@hpcc1 examples]$ mpiexec -n 1 ./cpi

Lamnodes Failed!

Check if you had booted lam before calling mpiexec else use -machinefile to pass host file to mpiexec

 

LAM Error but i m not using LAM ...........

 

After 20 mins fiding finally i found the reason mpiexec was running from /usr/bin/mpiexec

 

[hpower@hpcc1 ~]$ which mpiexec

/usr/bin/mpiexec

 

 

If run this using absolute path it is working. Means there is some problem with our .bash_profile

 

[hpower@hpcc1 ~]$ /cluster/mpich2/bin/mpiexec -n 1 /cluster/mpich2-1.0.8p1/examples/cpi

Process 0 of 1 is on hpcc1.isb.ots.com

pi is approximately 3.1415926544231341, Error is 0.0000000008333410

wall clock time = 0.000317

 

I found only one solution to solve

 

[root@hpcc1 ~]# mv /usr/bin/mpiexec /tmp/ :)

 

Its Working Now

 

[hpower@hpcc1 ~]$ which mpiexec

/cluster/mpich2/bin/mpiexec

 

[hpower@hpcc1 ~]$

[hpower@hpcc1 ~]$ mpiexec -n 1 /cluster/mpich2-1.0.8p1/examples/cpi

Process 0 of 1 is on hpcc1.isb.ots.com

pi is approximately 3.1415926544231341, Error is 0.0000000008333410

wall clock time = 0.000297

 

 

 

[hpower@hpcc1 ~]$ mpiexec -n 2 /cluster/mpich2-1.0.8p1/examples/cpi

Process 0 of 2 is on hpcc1.isb.ots.com

Process 1 of 2 is on hpcc2.isb.ots.com

pi is approximately 3.1415926544231318, Error is 0.0000000008333387

wall clock time = 0.001234

[hpower@hpcc1 ~]$

 

 

 

There is an other program available for testing lets compile it first

 

 

/cluster/mpich2-1.0.8p1/examples

 

 

[hpower@hpcc1 examples]$ mpicc -o icpi icpi.c

 

Now execute it and also open top -c to check the processes.

 

First we will run with single node

 

[hpower@hpcc1 examples]$ mpiexec -n 1 ./icpi

Enter the number of intervals: (0 quits) 1000000000

pi is approximately 3.1415926535921401, Error is 0.0000000000023470

wall clock time = 22.537397

Enter the number of intervals: (0 quits)

 

 

top -c out put :

 

 

[root@hpcc1 ~]# top -c

top - 15:53:08 up 1:57, 3 users, load average: 0.21, 0.11, 0.03

Tasks: 188 total, 2 running, 186 sleeping, 0 stopped, 0 zombie

Cpu(s): 12.5%us, 0.0%sy, 0.0%ni, 87.4%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st

Mem: 3368196k total, 936760k used, 2431436k free, 140504k buffers

Swap: 12289716k total, 0k used, 12289716k free, 634932k cached

 

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

14289 hpower 25 0 2332 812 676 R 100 0.0 0:07.80./icpi

1 root 15 0 2032 640 552 S 0 0.0 0:01.82 init [5]

 

 

 

Lets run with both nodes

 

[hpower@hpcc1 examples]$ mpiexec -n 2 ./icpi

Enter the number of intervals: (0 quits) 1000000000

pi is approximately 3.1415926535905170, Error is 0.0000000000007239

wall clock time = 11.285166

Enter the number of intervals: (0 quits)

 

 

HPCC2 top -c output

 

top - 15:56:47 up 2:01, 5 users, load average: 0.27, 0.08, 0.06

Tasks: 205 total, 2 running, 203 sleeping, 0 stopped, 0 zombie

Cpu(s): 12.5%us, 0.0%sy, 0.0%ni, 87.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

Mem: 3368120k total, 1858180k used, 1509940k free, 197464k buffers

Swap: 13309844k total, 0k used, 13309844k free, 1488212k cached

 

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

4615 hpower 25 0 2356 812 676 R 100 0.0 0:10.26 ./icpi

4593 root 15 0 2320 1080 800 R 0 0.0 0:01.06 top -c

 

 

 

HPCC1 top -c Out put

 

[root@hpcc1 ~]# top -c

top - 15:56:46 up 2:01, 3 users, load average: 0.14, 0.10, 0.04

Tasks: 188 total, 2 running, 186 sleeping, 0 stopped, 0 zombie

Cpu(s): 12.5%us, 0.0%sy, 0.0%ni, 87.4%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

Mem: 3368196k total, 941472k used, 2426724k free, 140656k buffers

Swap: 12289716k total, 0k used, 12289716k free, 634876k cached

 

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

14312 hpower 25 0 2328 848 712 R 100 0.0 0:08.84 ./icpi

1 root 15 0 2032 640 552 S 0 0.0 0:01.82 init [5]

 

 

 

Now I am going to add nodes 3 on /etc/mpd.hosts

[hpower@hpcc1 ~]$ vi mpd.hosts

 

 

hpcc1

hpcc2

test

[hpower@hpcc1 ~]$ mpdallexit

[hpower@hpcc1 ~]$ mpdboot -n 3

[hpower@hpcc1 ~]$ mpdtrace

hpcc1

test

hpcc2

 

All 3 nodes addes successfully

 

Now lets run scripts again for benchmarking

 

[hpower@hpcc1 ~]$ cd /cluster/mpich2-1.0.8p1/examples/

 

 

[hpower@hpcc1 examples]$ mpiexec -n 2 ./icpi

Enter the number of intervals: (0 quits) 1000000000

 

pi is approximately 3.1415926535905170, Error is 0.0000000000007239

wall clock time = 43.697841

 

 

[hpower@hpcc1 examples]$ mpiexec -n 3 ./icpi

Enter the number of intervals: (0 quits) 1000000000

pi is approximately 3.1415926535899761, Error is 0.0000000000001830

wall clock time = 29.853977

 

Hmmmm better then two nodes add another 0 :) It will take some time .

 

Add node 4

 

there are not enough hosts on which to start all processes

[hpower@hpcc1 ~]$ vi mpd.hosts

[hpower@hpcc1 ~]$ mpdboot -n 4

[hpower@hpcc1 ~]$ mpdtrace

hpcc1

test

nworkhorse

hpcc2

 

 

[hpower@hpcc1 examples]$ mpiexec -n 4 ./icpi

Enter the number of intervals: (0 quits) 1000000000

pi is approximately 3.1415926535896128, Error is 0.0000000000001803

wall clock time = 21.904199

 

 

 

Lets Test GoTo Blast.

Download Location

 

http://www.tacc.utexas.edu/resources/software/login/gotoblas/GotoBLAS-1.26.tar.gz

 

 

[root@hpcc1 ~]# cp GotoBLAS-1.26.tar.gz /cluster/

[root@hpcc1 ~]# cd /cluster/

[root@hpcc1 cluster]# ls

GotoBLAS-1.26.tar.gz mpich2 mpich2-1.0.8p1 mpich2-1.0.8p1.tar.gz power

[root@hpcc1 cluster]# tar zxvf GotoBLAS-1.26.tar.gz

 

[root@hpcc1 cluster]# su - hpower

[hpower@hpcc1 cluster]$ cd GotoBLAS

 

[hpower@hpcc1 GotoBLAS]$ ./quickbuild.32bit

[hpower@hpcc1 GotoBLAS]$ make

 

 

It takes some time

 

 

Now download hpl

Download Link

http://www.netlib.org/benchmark/hpl/hpl-2.0.tar.gz

http://www.netlib.org/benchmark/hpl/hpl.tgz

 

 

root@hpcc1 cluster]# cd

[root@hpcc1 ~]# ls

@ Desktop hpl.tgz ipscan-3.0_beta4-1.i386.rpm mpich2-1.0.8p1.tar.gz snapshot1.jpg snapshot4.jpg

abc.sh GotoBLAS-1.26.tar.gz install.log login.php?product=server20 pdsh-2.10-4.src.rpm snapshot2.jpg tm

anaconda-ks.cfg hpl-2.0.tar.gz install.log.syslog mac.txt

 

[hpower@hpcc1 cluster]$ ls

GotoBLAS GotoBLAS-1.26.tar.gz hpl-2.0.tar.gz hpl.tgz mpich2 mpich2-1.0.8p1 mpich2-1.0.8p1.tar.gz power

[hpower@hpcc1 cluster]$ tar zxf hpl-2.0.tar.gz

[hpower@hpcc1 cluster]$ tar zxf hpl.tgz

 

 

[hpower@hpcc1 hpl]$ cp setup/Make.Linux_PII_FBLAS_gm .

 

 

 

 

First check GCC version/Path

 

[hpower@hpcc1 hpl]$ gcc -v

Using built-in specs.

Target: i386-redhat-linux

Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --enable-plugin --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic --host=i386-redhat-linux

Thread model: posix

 

/usr/lib/gcc/i386-redhat-linux/4.1.1/

 

Now edit Make.Linux_PII_FBLAS_gm file

 

[hpower@hpcc1 hpl]$ vi Make.Linux_PII_FBLAS_gm

Edit the following lines :

 

 

ARCH = Linux_PII_FBLAS_gm

 

 

 

 

TOPdir = $(HOME)/hpl

INCdir = $(TOPdir)/include

BINdir = $(TOPdir)/bin/$(ARCH)

LIBdir = $(TOPdir)/lib/$(ARCH)

#

HPLlib = $(LIBdir)/libhpl.a

 

 

LAdir = /cluster/GotoBLAS

 

LAlib = $(LAdir)/libgoto.a -1m -L/usr/lib/gcc/i386-redhat-linux/4.1.1/

 

CC = mpicc

 

CCFLAGS = $(HPL_DEFS) -O3

 

 

LINKER = mpicc

 

 

Ok Done now compile it .

 

 

[hpower@hpcc1 hpl]$ make arch=Linux_PII_FBLAS_gm

 

 

[hpower@test hpl]$ cd /cluster/power/hpl/bin/Linux_PII_FBLAS_gm/

[hpower@test Linux_PII_FBLAS_gm]$ ls

HPL.dat xhpl

 

[hpower@test Linux_PII_FBLAS_gm]$ cp HPL.dat HPL.dat.orig

 

 

 

 

 

 

 

 

 

MY HPL parameter First testing with 2 nodes

 

Innovative Computing Laboratory, University of Tennessee

HPL.out output file name (if any)

6 device out (6=stdout,7=stderr,file)

2 # of problems sizes (N)

7000 Ns

4 # of NBs

100 NBs

0 PMAP process mapping (0=Row-,1=Column-major)

3 # of process grids (P x Q)

1 Ps

2 Qs

16.0 threshold

3 # of panel fact

0 1 2 PFACTs (0=left, 1=Crout, 2=Right)

2 # of recursive stopping criterium

2 4 NBMINs (>= 1)

1 # of panels in recursion

2 NDIVs

3 # of recursive panel fact.

0 1 2 RFACTs (0=left, 1=Crout, 2=Right)

1 # of broadcast

0 BCASTs (0=1rg,1=1rM,2=2rg,3=2rM,4=Lng,5=LnM)

1 # of lookahead depth

0 DEPTHs (>=0)

2 SWAP (0=bin-exch,1=long,2=mix)

64 swapping threshold

0 L1 in (0=transposed,1=no-transposed) form

0 U in (0=transposed,1=no-transposed) form

1 Equilibration (0=no,1=yes)

8 memory alignment in double (> 0)

~

~

[hpower@hpcc1 Linux_PII_FBLAS_gm]$ mpiexec -n 2 ./xhpl

 

 

 

The following parameter values will be used:

 

N : 6000

NB : 100

PMAP : Row-major process mapping

P : 1

Q : 2

PFACT : Left Crout Right

NBMIN : 2 4

NDIV : 2

RFACT : Left Crout Right

BCAST : 1ring

DEPTH : 0

SWAP : Mix (threshold = 64)

L1 : transposed form

U : transposed form

EQUIL : yes

ALIGN : 8 double precision words

 

 

top -c on node 1 (hpcc1) Procssor speed 3.0 dual core

 

Cpu(s): 6.2%us, 1.5%sy, 0.0%ni, 92.1%id, 0.0%wa, 0.0%hi, 0.1%si, 0.0%st

Mem: 3368196k total, 1229388k used, 2138808k free, 215208k buffers

Swap: 12289716k total, 0k used, 12289716k free, 695944k cached

 

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

16856 hpower 15 0 172m 141m 1016 S 62 4.3 0:55.41 ./xhpl

 

top -c on node 3 (test ) 1.7 MHZ PC class machine

 

Cpu(s): 78.1%us, 1.3%sy, 0.0%ni, 19.6%id, 1.0%wa, 0.0%hi, 0.0%si, 0.0%st

Mem: 443392k total, 437712k used, 5680k free, 21312k buffers

Swap: 1052248k total, 0k used, 1052248k free, 189308k cached

 

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

14055 hpower 25 0 175m 144m 960 R 78.6 33.4 0:59.60 ./xhpl

 

 

 

 

 

 

 

- The matrix A is randomly generated for each test.

- The following scaled residual checks will be computed:

1) ||Ax-b||_oo / ( eps * ||A||_1 * N )

2) ||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 )

3) ||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo )

- The relative machine precision (eps) is taken to be 1.110223e-16

- Computational tests pass if scaled residuals are less than 16.0

 

 

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2L2 6000 100 1 2 46.28 3.113e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0034911 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0072807 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0014339 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2L4 6000 100 1 2 49.01 2.939e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0038909 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0081145 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0015981 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2C2 6000 100 1 2 45.78 3.146e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0034911 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0072807 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0014339 ...... PASSED

 

 

 

 

 

Again RUN now incrase the size of NS.

 

The following parameter values will be used:

 

N : 7000

NB : 100

PMAP : Row-major process mapping

P : 1

Q : 2

PFACT : Left Crout Right

NBMIN : 2 4

NDIV : 2

RFACT : Left Crout Right

BCAST : 1ring

DEPTH : 0

SWAP : Mix (threshold = 64)

L1 : transposed form

U : transposed form

EQUIL : yes

ALIGN : 8 double precision words

 

 

 

- Computational tests pass if scaled residuals are less than 16.0

 

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2L2 7000 100 1 2 72.10 3.173e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.1808081 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091439 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0016514 ...... PASSED

 

 

 

 

 

 

 

With 4 node

 

 

 

Cpu(s): 2.9%us, 0.7%sy, 0.0%ni, 96.3%id, 0.0%wa, 0.0%hi, 0.1%si, 0.0%st

Mem: 3368196k total, 1120648k used, 2247548k free, 215220k buffers

Swap: 12289716k total, 0k used, 12289716k free, 695976k cached

 

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

17007 hpower 15 0 68892 34m 1016 S 28 1.0 0:28.31 ./xhpl

 

 

Cpu(s): 62.2%us, 20.4%sy, 0.0%ni, 8.6%id, 8.6%wa, 0.0%hi, 0.3%si, 0.0%st

Mem: 443392k total, 175608k used, 267784k free, 2532k buffers

Swap: 1052248k total, 41448k used, 1010800k free, 86836k cached

 

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

14144 hpower 15 0 70652 36m 960 R 63.1 8.5 0:10.83 ./xhpl

14066 root 15 0 2212 948 752 R 0.3 0.2 0:01.75 top -c

 

 

 

Cpu(s): 36.0%us, 10.3%sy, 0.0%ni, 50.0%id, 0.0%wa, 1.7%hi, 2.0%si, 0.0%st

Mem: 969896k total, 602732k used, 367164k free, 31900k buffers

Swap: 2096408k total, 0k used, 2096408k free, 374868k cached

 

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

4803 hpower 16 0 70416 36m 960 R 46.5 3.9 0:30.35 ./xhpl

 

 

 

 

 

 

============================================================================

HPLinpack 1.0a -- High-Performance Linpack benchmark -- January 20, 2004

Written by A. Petitet and R. Clint Whaley, Innovative Computing Labs., UTK

============================================================================

 

An explanation of the input/output parameters follows:

T/V : Wall time / encoded variant.

N : The order of the coefficient matrix A.

NB : The partitioning blocking factor.

P : The number of process rows.

Q : The number of process columns.

Time : Time in seconds to solve the linear system.

Gflops : Rate of execution for solving the linear system.

 

The following parameter values will be used:

 

N : 4000

NB : 100

PMAP : Row-major process mapping

P : 2

Q : 2

PFACT : Left Crout Right

NBMIN : 2 4

NDIV : 2

RFACT : Left Crout Right

BCAST : 1ring

DEPTH : 0

SWAP : Mix (threshold = 64)

L1 : transposed form

U : transposed form

EQUIL : yes

ALIGN : 8 double precision words

 

----------------------------------------------------------------------------

 

- The matrix A is randomly generated for each test.

- The following scaled residual checks will be computed:

1) ||Ax-b||_oo / ( eps * ||A||_1 * N )

2) ||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 )

3) ||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo )

- The relative machine precision (eps) is taken to be 1.110223e-16

- Computational tests pass if scaled residuals are less than 16.0

 

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2L2 4000 100 2 2 46.16 9.248e-01

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098900 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091332 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020759 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2L4 4000 100 2 2 18.48 2.310e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0086843 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0080198 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0018228 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2C2 4000 100 2 2 21.46 1.990e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098900 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091332 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020759 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2C4 4000 100 2 2 18.39 2.322e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0086843 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0080198 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0018228 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2R2 4000 100 2 2 18.68 2.285e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098900 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091332 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020759 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00L2R4 4000 100 2 2 17.58 2.428e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098668 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091118 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020710 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00C2L2 4000 100 2 2 19.05 2.241e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098900 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091332 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020759 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00C2L4 4000 100 2 2 17.81 2.398e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0086843 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0080198 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0018228 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00C2C2 4000 100 2 2 17.51 2.438e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098900 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091332 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020759 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00C2C4 4000 100 2 2 18.25 2.340e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0086843 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0080198 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0018228 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00C2R2 4000 100 2 2 18.62 2.293e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098900 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091332 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020759 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00C2R4 4000 100 2 2 17.84 2.393e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098668 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091118 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020710 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00R2L2 4000 100 2 2 18.31 2.331e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098900 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091332 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020759 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00R2L4 4000 100 2 2 17.48 2.442e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0086843 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0080198 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0018228 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00R2C2 4000 100 2 2 18.03 2.368e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098900 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091332 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020759 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00R2C4 4000 100 2 2 18.90 2.259e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0086843 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0080198 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0018228 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00R2R2 4000 100 2 2 18.64 2.290e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098900 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091332 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020759 ...... PASSED

============================================================================

T/V N NB P Q Time Gflops

----------------------------------------------------------------------------

WR00R2R4 4000 100 2 2 18.59 2.296e+00

----------------------------------------------------------------------------

||Ax-b||_oo / ( eps * ||A||_1 * N ) = 0.0098668 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = 0.0091118 ...... PASSED

||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = 0.0020710 ...... PASSED

============================================================================

 

Finished 18 tests with the following results:

18 tests completed and passed residual checks,

0 tests completed and failed residual checks,

0 tests skipped because of illegal input values.

----------------------------------------------------------------------------

 

End of Tests.

============================================================================