This section briefly explains the procedure to compile the program with Intel compiler and execute it serially (one core) on a SQUID general-purpose CPU node.
1.environment setting
SQUID manages environment variable settings for compilers, libraries, and application environments with a tool called Environment modules. First of all, please execute the following command to load the recommended environment for general-purpose CPU nodes.
% module load BaseCPU/2021
2.compile
Compiling a program source file into a format that can be executed on a computer is called compiling, and SQUID can use compilers such as the Intel compiler and GNU compiler (C/C++/Fortran, respectively). The commands used to compile differ depending on the compiler and programming language used.
C | C++ | Fortran | |
---|---|---|---|
Intel compiler | icc | icpc | ifort |
GNU compiler | gcc | g++ | gfortran |
For instance, if you compile a FORTRAN program "sample.f90" with Intel compiler, please execute the following command on frontend server.
% ifort sample.f90
If compiler generates "a.out" file without displaying error, compile is a success.
* If compiler displays some error message, please re-check a source code of programs according to the message. a common mistake is a spelling mistake.
3.job-script
All user must use our computing system with "batch processing". "batch processing" means to require execution of a program with submitting job-script. After submitting job-script, calculate may not start soon and you may wait for ages because our computing system is crowded with many other users. On our system, "scheduler" system manages a wait queue for execution of programs.
-
* We bar execution a program on frontend server with interactive processing. Please execute with batch processing or interactive-batch processing.
The following is an example for job-script executing "a.out" on 1 CPU node, SQUID.
1 2 3 4 5 6 7 8 |
#!/bin/bash #PBS -q SQUID-S #PBS --group=[your group name] #PBS -l elapstim_req=1:00:00 #PBS -l cpunum_job=38 module load BaseCPU cd $PBS_O_WORKDIR ./a.out |
Enter your own group name in "[your Group name]". You can check the group name by using the "id" or "groups" command. If the result of the "id" command is as follows, "G12345" is the group name:
uid=11111(u6a123) gid=12345(G12345) groups=12345(G12345)
The job-script require just executing a program. However, it is available to require "send mail at the end of executing job" or "change a name of output file" with specifying options. Please see the following page for a detail of job-script and options.
how to write job-script
3.execute program
Please submit a job-script to our computing system for execution program. The following is an example for submitting job-script. On the example, a name of a job-script file is "nqs.sh".
% qsub nqs.sh
You can check a status of your submitted job with qstat command or sstat command. Please see the following page for a detail.
Our computing system transfers a result of your calculation to frontend-server when your calculation finished. our system output a result as a standard output file if you did not specify an output file on job-script. A standard output file is "[job-script name].o.[request ID]" and a standard error output file is "[job-script name].e.[request ID]".
Final
The above is how to execute a serial program. Please check FAQ page or inquiry us if you have any question.
Consultation/Inquiry