Thrift module: applicationDeploymentModel

ModuleServicesData typesConstants
applicationDeploymentModel ApplicationDeploymentDescription
ApplicationModule
ApplicationParallelismType
SetEnvPaths
DEFAULT_ID

Constants

ConstantTypeValue
DEFAULT_IDstring"DO_NOT_SET_AT_CLIENTS"

Enumerations

Enumeration: ApplicationParallelismType

Enumeration of application parallelism supported by Airavata

SERIAL: Single processor applications without any parallelization.

MPI: Messaging Passing Interface.

OPENMP: Shared Memory Implementtaion.

OPENMP_MPI: Hybrid Applications.



SERIAL0
MPI1
OPENMP2
OPENMP_MPI3

Data structures

Struct: SetEnvPaths

KeyFieldTypeDescriptionRequirednessDefault value
1namestringrequired
2valuestringrequired

Key Value pairs to be used to set environments

name: Name of the environment variable such as PATH, LD_LIBRARY_PATH, NETCDF_HOME.

value: Value of the environment variable to set

Struct: ApplicationModule

KeyFieldTypeDescriptionRequirednessDefault value
1appModuleIdstringrequired"DO_NOT_SET_AT_CLIENTS"
2appModuleNamestringrequired
3appModuleVersionstringoptional
4appModuleDescriptionstringoptional

Application Module Information. A module has to be registered before registering a deployment.

appModuleId: Airavata Internal Unique Job ID. This is set by the registry.

appModuleName: Name of the application module.

appModuleVersion: Version of the application.

appModuleDescription: Descriprion of the Module


Struct: ApplicationDeploymentDescription

KeyFieldTypeDescriptionRequirednessDefault value
1appDeploymentIdstringrequired"DO_NOT_SET_AT_CLIENTS"
2appModuleIdstringrequired
3computeHostIdstringrequired
4executablePathstringrequired
5parallelismApplicationParallelismTyperequiredUNKNOWN
6appDeploymentDescriptionstringoptional
7moduleLoadCmdslist<string>optional
8libPrependPathslist<SetEnvPaths>optional
9libAppendPathslist<SetEnvPaths>optional
10setEnvironmentlist<SetEnvPaths>optional

Application Deployment Description

appDeploymentId: Airavata Internal Unique Job ID. This is set by the registry.

appModuleName: Application Module Name. This has to be precise describing the binary.

computeHostId: This ID maps application deployment to a particular resource previously described within Airavata. Example: Stampede is first registered and refered when registering WRF.

moduleLoadCmd: Command string to load modules. This will be placed in the job submisison Ex: module load amber

libPrependPaths: prepend to a path variable the value

libAppendPaths: append to a path variable the value

setEnvironment: assigns to the environment variable "NAME" the value