The CSF2 has been replaced by the CSF3 - please use that system! This documentation may be out of date. Please read the CSF3 documentation instead. To display this old CSF2 page click here. |
FICO Xpress
Overview
FICO Xpress is a platform for building optimization solutions.
Versions 7.6 and 8.4.0 are installed on the CSF.
Restrictions on use
Access to this software is restricted. The license is owned by a specific research group. Only members of the correct unix group can access the software. Please contact its-ri-team@manchester.ac.uk to request about access to the software.
Set up procedure
To access the software you must first load one of the following modulefile:
module load apps/binapps/ficoxp/8.4-smp module load apps/binapps/ficoxp/7.6-smp
Running the application
Please do not run FICO Xpress on the login node. Jobs should be submitted to the compute nodes via batch.
By default FICO Xpress will use all cores on a compute node if it executes parts of its solver that can run in parallel. Hence it is essential that you reserve the correct number of cores in the system via your batch script. The CSF has different types of compute nodes each with a different number of cores. Hence you must specify the correct maximum number of cores to match the architecture:
- Reserve all cores on a Westmere or Sandybridge node (max 12 cores) using
#$ -pe smp.pe 12 #$ -l westmere #### OR #$ -l sandybridge # This architecture should perform better than westmere
in your jobscript.
- Reserve all cores on an Ivybridge node (max 16 cores) using
#$ -pe smp.pe 16 #$ -l ivybridge
in your jobscript.
- Reserve all cores on an Haswell or Broadwell node (max 24 cores) using
#$ -pe smp.pe 24 #### You do not need to specify an architecure here because requesting 24 cores #### will always land on a 24 core node. If you want to run timing tests then #### you may want to fix the architecture so you can use either of the following #### architectures that have 24-cores: #### -l haswell #### -l broadwell
in your jobscript.
- Alternatively, reserve a specific number of cores between 1 and 24 and then inform FICO Xpress to use that number in your FICO input file by setting the
THREADS
, for example:# In your .mos file add, e.g., for 4 threads setparam("THREADS", 4) # In your jobscript add: #$ -pe smp.pe 4
Serial batch job submission
A serial jobscript will use just one core. The jobscript will reserve one core if no #$ -pe smp.pe
is supplied. But you must still ensure your input file informs mosel to use only one core. Make sure you have the modulefile loaded then create a batch submission script, for example:
#!/bin/bash #$ -S /bin/bash #$ -cwd # Job will run from the current directory #$ -V # Job will inherit current environment settings # Ensure your .mos file contains the following to use just 1 core: # setparam("THREADS", 1) mosel -c "cl filename.mos; run"
Submit the jobscript using:
qsub scriptname
where scriptname is the name of your jobscript.
Parallel batch job submission
Make sure you have the modulefile loaded then create a batch submission script, for example:
#!/bin/bash #$ -S /bin/bash #$ -cwd # Job will run from the current directory #$ -V # Job will inherit current environment settings #$ -pe smp.pe 12 # Specify the number of cores to reserve # Ensure your .mos file contains the same number of cores as given above: # setparam("THREADS", 12) mosel -c "cl filename.mos; run"
Submit the jobscript using:
qsub scriptname
where scriptname is the name of your jobscript.
Further info
Updates
None.