Hprc banner tamu.png

Difference between revisions of "SW:ANSYS:Fluent"

From TAMU HPRC
Jump to: navigation, search
(Terra Example)
(Ada Example)
Line 33: Line 33:
  
 
===Ada Example===
 
===Ada Example===
 +
'''Example 1:''' A serial (single core) Fluent Job example:
 +
#BSUB -J FluentJob1   # sets the job name to FluentJob1.
 +
#BSUB -L /bin/bash          # uses the bash login shell to initialize the job's execution environment.
 +
#BSUB -W 5:00                # sets to 5 hours the job's runtime wall-clock limit.
 +
#BSUB -n 1                  # assigns 1 core for execution.
 +
#BSUB -R "span[ptile=1]"    # assigns 1 core per node.
 +
#BSUB -R "rusage[mem=5000]"  # reserves ~5GB per process/CPU for the job
 +
#BSUB -M 5000     # sets to ~5GB the per process enforceable memory limit.
 +
#BSUB -o stdout1.%J          # directs the job's standard output to stdout1.jobid
 +
 +
 +
## Load the necessary modules
 +
module purge
 +
module load ANSYS/17.1
 +
 +
## Launch the Fluent Solver with proper parameters
 +
fluent 3d -g < ''inputfile''
  
Below is an example job script for running Fluent in parallel with 40 cores as a batch job.
+
'''Example 2:''' A parallel (multiple core) Fluent Job example:
 +
#BSUB -J FluentJob1   # sets the job name to FluentJob1.
 +
#BSUB -L /bin/bash          # uses the bash login shell to initialize the job's execution environment.
 +
#BSUB -W 5:00                # sets to 5 hours the job's runtime wall-clock limit.
 +
#BSUB -n 10                  # assigns 10 core for execution.
 +
#BSUB -R "span[ptile=10]"    # assigns 10 core per node.
 +
#BSUB -R "rusage[mem=5000]"  # reserves ~5GB per process/CPU for the job (5GB * 10 Cores = 50GB per node)
 +
#BSUB -M 5000     # sets to ~5GB the per process enforceable memory limit.
 +
#BSUB -o stdout1.%J          # directs the job's standard output to stdout1.jobid
 +
 +
 +
## Load the necessary modules
 +
module purge
 +
module load ANSYS/17.1
 +
 +
## Launch the Fluent Solver with proper parameters
 +
fluent 3d -g -t10 < ''inputfile''
  
<pre>
 
#BSUB -J FluentJob1   # sets the job name to FluentJob1.
 
#BSUB -L /bin/bash        # uses the bash login shell to initialize the job's execution environment.
 
#BSUB -W 5:00            # sets to 5 hours the job's runtime wall-clock limit.
 
#BSUB -n 40              # assigns 40 cores for execution.
 
#BSUB -R "span[ptile=20]" # assigns 20 cores per node.
 
#BSUB -R "rusage[mem=2000]"  # reserves 2000MB per process/CPU for the job (2GB * 20 Cores = 40GB per node)
 
#BSUB -M 2000   # sets to 2,000MB (~2GB) the per process enforceable memory limit.
 
#BSUB -o stdout1.%J      # directs the job's standard output to stdout1.jobid
 
  
 
+
To submit the batch job, run: (where ''jobscript'' is a file that looks like one of the above examples)
## Load the necessary modules
+
  [ NetID@ada1 ~]$ '''bsub < jobscript'''
module load ANSYS/18.0
 
 
 
## Launch fluent with proper parameters
 
fluent 3d -g -t40 < inputfile
 
</pre>
 
 
 
The inputfile would contain a list of text commands for running Fluent inside the job script.
 
 
 
To submit the batch job, run:
 
  [NetID@ada1 ~]$ '''bsub < jobscript'''
 
  
 
===Terra Example===
 
===Terra Example===

Revision as of 12:46, 24 March 2017

Fluent

Description

ANSYS Fluent is a powerful computational fluid dynamics (CFD) software tool. Fluent includes well-validated physical modeling capabilities to deliver fast, accurate results across the widest range of CFD and multiphysics applications. - Homepage: http://www.ansys.com/Products/Fluids/ANSYS-Fluent

Access

ANSYS is open to all HPRC users when used within the terms of our license agreement.

IMPORTANT NOTE REGARDING THE ANSYS LICENSE:

   Terms of the ANSYS Academic license require that all users be within 50 miles 
       of the TAMU main campus in College Station, TX. Use of this software outside
       the designated area represents a breach of the license and any users caught
       doing so may be subject to account suspension and/or other action.

If you have particular concerns about whether specific usage falls within the TAMU HPRC license, please send an email to the HPRC Helpdesk. Usage of ANSYS is restricted by the number of available tokens. To see the number of available tokens, use the License Checker Tool.

Loading the Module

To see all versions of ANSYS available on Ada:

[NetID@cluster ~]$ module spider ANSYS

To load a particular version of ANSYS on Ada (Example: 17.1):

[NetID@cluster ~]$ module load ANSYS/17.1

Known Issues

There is a known issue when using the Ansys GUI for any version of Ansys. The Geometry Editor in the Ansys Workbench will not run properly without also loading an NVIDIA module.
To bypass this bug, load the OpenGL/NVIDIA module before running the Ansys Workbench:

[ netID@cluster ~]$ module load OpenGL/NVIDIA

Usage on the Login Nodes

Please limit interactive processing to short, non-intensive usage. Use non-interactive batch jobs for resource-intensive and/or multiple-core processing. Users are requested to be responsible and courteous to other users when using software on the login nodes.

The most important processing limits here are:

  • ONE HOUR of PROCESSING TIME per login session.
  • EIGHT CORES per login session on the same node or (cumulatively) across all login nodes.

Anyone found violating the processing limits will have their processes killed without warning. Repeated violation of these limits will result in account suspension.
Note: Your login session will disconnect after one hour of inactivity.

Usage on the Compute Nodes

Non-interactive batch jobs on the compute nodes allows for resource-demanding processing. Non-interactive jobs have higher limits on the number of cores, amount of memory, and runtime length.

For instructions on how to create and submit a batch job, please see the appropriate wiki page for each respective cluster:

Ada Example

Example 1: A serial (single core) Fluent Job example:

#BSUB -J FluentJob1	  # sets the job name to FluentJob1.
#BSUB -L /bin/bash           # uses the bash login shell to initialize the job's execution environment.
#BSUB -W 5:00                # sets to 5 hours the job's runtime wall-clock limit.
#BSUB -n 1                   # assigns 1 core for execution.
#BSUB -R "span[ptile=1]"     # assigns 1 core per node.
#BSUB -R "rusage[mem=5000]"  # reserves ~5GB per process/CPU for the job 
#BSUB -M 5000		     # sets to ~5GB the per process enforceable memory limit.
#BSUB -o stdout1.%J          # directs the job's standard output to stdout1.jobid 


## Load the necessary modules
module purge
module load ANSYS/17.1

## Launch the Fluent Solver with proper parameters
fluent 3d -g < inputfile

Example 2: A parallel (multiple core) Fluent Job example:

#BSUB -J FluentJob1	  # sets the job name to FluentJob1.
#BSUB -L /bin/bash           # uses the bash login shell to initialize the job's execution environment.
#BSUB -W 5:00                # sets to 5 hours the job's runtime wall-clock limit.
#BSUB -n 10                  # assigns 10 core for execution.
#BSUB -R "span[ptile=10]"    # assigns 10 core per node.
#BSUB -R "rusage[mem=5000]"  # reserves ~5GB per process/CPU for the job (5GB * 10 Cores = 50GB per node) 
#BSUB -M 5000		     # sets to ~5GB the per process enforceable memory limit.
#BSUB -o stdout1.%J          # directs the job's standard output to stdout1.jobid


## Load the necessary modules
module purge
module load ANSYS/17.1

## Launch the Fluent Solver with proper parameters
fluent 3d -g -t10 < inputfile


To submit the batch job, run: (where jobscript is a file that looks like one of the above examples)

[ NetID@ada1 ~]$ bsub < jobscript

Terra Example

Example 1: A serial (single core) Fluent Job example: (Last updated March 24, 2017)

#!/bin/bash
##ENVIRONMENT SETTINGS; CHANGE WITH CAUTION
#SBATCH --export=NONE
#SBATCH --get-user-env=L

##NECESSARY JOB SPECIFICATIONS
#SBATCH --job-name=FluentJob    # Sets the job name to FluentJob
#SBATCH --time=5:00:00          # Sets the runtime limit to 5 hr
#SBATCH --ntasks=1              # Requests 1 core
#SBATCH --ntasks-per-node=1     # Requests 1 core per node (1 node)
#SBATCH --mem=5G                # Requests 5GB of memory per node
#SBATCH --output=stdout1.o%J    # Sends stdout and stderr to stdout1.o[jobID]

## Load the necessary modules
module purge
module load ANSYS/18.0

## Known error fix
unset SLURM_GTIDS 

## Fluent_slurm script will set some parameters for using Fluent correctly on Terra
fluent_slurm 3d -i inputfile 


Example 2: A parallel (multiple core) Fluent Job example: (Last updated March 24, 2017)

#!/bin/bash
##ENVIRONMENT SETTINGS; CHANGE WITH CAUTION
#SBATCH --export=NONE
#SBATCH --get-user-env=L

##NECESSARY JOB SPECIFICATIONS
#SBATCH --job-name=FluentJob    # Sets the job name to FluentJob
#SBATCH --time=5:00:00          # Sets the runtime limit to 5 hr
#SBATCH --ntasks=10             # Requests 10 cores
#SBATCH --ntasks-per-node=10    # Requests 10 cores per node (1 node)
#SBATCH --mem=50G               # Requests 50GB of memory per node
#SBATCH --output=stdout1.o%J    # Sends stdout and stderr to stdout1.o[jobID]

## Load the necessary modules
module purge
module load ANSYS/18.0

## Known error fix
unset SLURM_GTIDS 

## Fluent_slurm script will set some parameters for using Fluent correctly on Terra
fluent_slurm 3d -i inputfile 


To submit the batch job, run: (where jobscript is a file that looks like one of the above examples)

[ NetID@terra ~]$ sbatch jobscript

Usage on the VNC Nodes

The VNC nodes allow for usage of the a graphical user interface (GUI) without disrupting other users.

VNC jobs and GUI usage do come with restrictions. All VNC jobs are limited to a single node (Terra: 28 cores/64GB). There are fewer VNC nodes than comparable compute nodes.

For more information, including instructions, on using software on the VNC nodes, please visit our Terra Remote Visualization page.