Page 1 of 1

Compiling abinit-6.2.1 on NEC SX-9

Posted: Mon Aug 09, 2010 9:26 am
by goodwill
Hi, all.

I have to compile ABINIT-6.2.1 on NEC SX-9, a vector
supercomputer. Because the machine type of the frond end and
the computing nodes are totally different, I was suggested
by the system engineer to run the configure script first
on the computing node, generating Makefile and
then manually modify Makefile for cross-compiling on the
frond end. However, there are so many Makefile files
in the sub-directories, and I wonder if there is a way
to automatically update Makefile (on options like FC, CC)
in sub-directories with manually modified Makefile in the
top directory. Could you please give me some advice on
this point?

By the way, in order to run configure on computing nodes
of SX-9, I have downloaded the latest version of
config/gnu/config.sub, config.guess, and added the following
sentences as suggested by the system engineer:

SX-9:SUPER-UX:*:*)
echo sx9-nec-superux${UNAME_RELEASE}
exit ;;

Any comments are appreciated.

Thanks.

Re: Compiling abinit-6.2.1 on NEC SX-9

Posted: Fri Sep 03, 2010 4:45 pm
by pouillon
The easiest way would probably be to submit a job to compile Abinit. You may even benefit from the use of several processors by running "make multi multi_nprocs=<nprocs>", where <nprocs> is the number of processors you reserved for the job.

Re: Compiling abinit-6.2.1 on NEC SX-9

Posted: Tue Sep 14, 2010 10:02 am
by goodwill
Thank you for your suggestion. I have tested it. However, it was shown to be not feasible to compile the source on the computing nodes, because the system is a cross compiling system. Necessary supports for the compiling are only availabe in the front end.

Re: Compiling abinit-6.2.1 on NEC SX-9

Posted: Wed Sep 15, 2010 2:38 pm
by pouillon
If you can only cross-compile, then you should follow the instructions of your system administrator. To override variables set in the Makefile, you may specify them on the command line, e.g.:

Code: Select all

make CC=gcc FC=gfortran-4.5 ...var=value ...