Changes between Version 34 and Version 35 of ApplicationScripts

Show
Ignore:
Timestamp:
07/21/14 16:00:32 (10 years ago)
Author:
piontek
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ApplicationScripts

    v34 v35  
    1414{{{ 
    1515MATLAB * /opt/qcg-app-scripts/apps/matlab.app 
    16 NAMD * /opt/qcg-app-scripts/apps/namd.app 
     16NAMD 6.2 /opt/qcg-app-scripts/apps/namd-6.2.app 
    1717bash * /opt/qcg-app-scripts/apps/bash.app 
    1818R * /opt/qcg-app-scripts/apps/R.app 
    19 CFX * /opt/qcg-app-scripts/apps/cfx.app 
    20 fluent * /opt/qcg-app-scripts/apps/fluent.app 
    21 nwchem * /opt/qcg-app-scripts/apps/nwchem.app 
    22 g09     * /opt/qcg-app-scripts/apps/g09.app 
    2319}}} 
    2420The scripts for the most common applications are provided by the `qcg-appscripts` RPM package. 
     
    7773== Installation == 
    7874To install QCG application scripts: 
    79 1. install `qcg-appscripts` RPM package 
     751. install (as root) the `qcg-appscripts` RPM package 
     76{{{ 
     77yum install qcg-appscripts 
     78}}} 
    80792. edit `/etc/qcg/qcg-comp/app-scripts/config` configuration file and set `cluster_shared_path` variable to point to a directory shared by all worker nodes 
    81 3. launch `qcg-appscripts-deploy` script 
     803. launch the `qcg-appscripts-deploy` script 
    82814. edit/create application configuration files in `$cluster_shared_path/apps` directory and refer to them in the QCG-Computing application mapping file (`/etc/qcg/qcg-comp/application_mapfile`) 
    8382 
    8483 
    8584== Upgrade == 
    86 After instalation of new QCG application scripts package: 
     85After installation of new QCG application scripts package: 
     86 
    87871. launch `qcg-appscripts-deploy` script to update files in shared directory. 
    8888 
    89   `qcg-appscripts-deploy` updates directories `app-scripts`, `core`, `tools`. `apps` directories (besides `bash.app`, `common.app` and `template.app` is not overwritten. 
     89'''IMPORTANT:''' 
     90`qcg-appscripts-deploy` updates directories `app-scripts`, `core`, `tools`.  
     91 
     92`apps` directories (besides `bash.app`, `common.app` and `template.app`) are not overwritten. 
    9093 
    9194 
    9295= New application = 
    93 To handle application, following elements must be provided: 
     96To handle a application, the following elements must be provided: 
    9497* application configuration file (script in `apps` directory), 
    9598* application script (script in `app-scripts` directory), 
     
    99102== Application configuration file == 
    100103 
    101 The application configuration file is simple script that: 
     104The application configuration file is a simple script that: 
    102105* loads the required modules or sets PATH/LD_LIBRARY_PATH variables, 
    103106* calls proper application script (from the `app-scripts` directory). 
    104107 
    105 To create new application configuration `apps/template.app` file can be used as a base.  
     108To create a new application configuration the `apps/template.app` file can be used as a base.  
    106109 
    107110Example application configuration file for NAMD application: 
     
    123126* validation of input arguments, 
    124127* preparation of input data, 
    125 * application launch with proper parameters, 
     128* launching the application with proper parameters, 
    126129* optional post processing of output data/files. 
    127130 
     
    152155}}} 
    153156 
    154 Every application script should include `core.qcg` script which provides rich function library that can be used by application scripts. In the above simple example, application script only validates number of arguments and uses `qcg_app_wrapper` function to launch MPI version of the NAMD application. The `qcg_app_wrapper` function should always be used to launch application, as it also activates other QCG mechanism such as: user's pre-processing & post-processing scripts, application monitoring, output file notifications, mounting remote file systems etc. 
    155  
    156 Any modification/conversion of input file should be done in function `qcg_pre_callback`, for example: 
     157Every application script has to include the `core.qcg` script which provides rich function library that can be used by application scripts. In the above simple example, the application script only validates number of arguments and uses the `qcg_app_wrapper` function to launch MPI version of the NAMD application. The `qcg_app_wrapper` function should always be used to launch application, as it also activates other QCG mechanisms such as: user's pre-processing & post-processing scripts, application monitoring, output file notifications, mounting remote file systems etc. 
     158 
     159Any modification/conversion of input files should be done in the `qcg_pre_callback` function, for example: 
    157160{{{ 
    158161function qcg_pre_callback { 
     
    172175 
    173176= New application version = 
    174 To create new version of already supported application, it is sufficient to: 
    175 1. copy existing application configuration file, eg: 
     177To create a new version of the already supported application, it is sufficient: 
     1781. to copy the existing application configuration file, eg: 
    176179{{{ 
    177180cp /opt/qcg-app-scripts/apps/namd.app /opt/qcg-app-scripts/apps/namd-6.2.app 
    178181}}} 
    179 2. change loaded module and/or environment variables in `$cluster_shared_path/apps/namd-6.2.app` 
    180 3. add new application version to the QCG application mapping file (`/etc/qcg/qcg-comp/application_mapfile`), eg: 
     1822. to change the module to be loaded and/or environment variables in `$cluster_shared_path/apps/namd-6.2.app` 
     1833. to add a new application version to the QCG application mapping file (`/etc/qcg/qcg-comp/application_mapfile`), eg: 
    181184{{{ 
    182185...