Changes between Version 1 and Version 2 of WikiStart

Show
Ignore:
Timestamp:
12/02/10 17:31:22 (14 years ago)
Author:
mmatloka
Comment:

readme

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v1 v2  
    1 = Welcome to Trac 0.12 = 
     1= PSNC DRMAA for IBM !LoadLeveler = 
    22 
    3 Trac is a '''minimalistic''' approach to '''web-based''' management of 
    4 '''software projects'''. Its goal is to simplify effective tracking and handling of software issues, enhancements and overall progress. 
     3== Introduction == 
    54 
    6 All aspects of Trac have been designed with the single goal to  
    7 '''help developers write great software''' while '''staying out of the way''' 
    8 and imposing as little as possible on a team's established process and 
    9 culture. 
     5PSNC DRMAA for !LoadLeveler is an implementation of Open Grid Forum [#DRMAA DRMAA]  
     61.0 (Distributed Resource Management Application API) [#drmaa_specification specification] for submission and control of jobs to [#LoadLeveler IBM Tivoli LoadLeveler].  Using DRMAA, 
     7grid applications builders, portal developers and ISVs can use the same 
     8high-level API to link their software with different cluster/resource 
     9management systems. 
    1010 
    11 As all Wiki pages, this page is editable, this means that you can 
    12 modify the contents of this page simply by using your 
    13 web-browser. Simply click on the "Edit this page" link at the bottom 
    14 of the page. WikiFormatting will give you a detailed description of 
    15 available Wiki formatting commands. 
     11This software also enables the integration of [#smoa_computing SMOA Computing] with the 
     12underlying !LoadLeveler system for remote multi-user job submission and control 
     13over Web Services. 
    1614 
    17 "[wiki:TracAdmin trac-admin] ''yourenvdir'' initenv" created 
    18 a new Trac environment, containing a default set of wiki pages and some sample 
    19 data. This newly created environment also contains  
    20 [wiki:TracGuide documentation] to help you get started with your project. 
     15== Installation == 
    2116 
    22 You can use [wiki:TracAdmin trac-admin] to configure 
    23 [http://trac.edgewall.org/ Trac] to better fit your project, especially in 
    24 regard to ''components'', ''versions'' and ''milestones''.  
     17To compile and install the library just go to main source directory 
     18and type:: 
     19{{{ 
     20#!sh 
     21  $ ./configure [options] && make 
     22  $ sudo make install 
     23}}} 
     24The library was tested with !LoadLeveler version 3.5. (for AIX operating systems). 
     25If you encountered any problems using the library on the different systems, please use  
     26the contact e-mails for reporting the problem. 
     27 
     28Notable `./configure` script options: 
     29 
     30  `--with-ll-inc` LL_INCLUDE_PATH 
     31    Path to LL header files (i.e. directory containing `llapi.h` ). By default the library tries  
     32    to guess the `LL_INCLUDE_PATH` and `LL_LIBRARY_PATH` based on location 
     33    of the `llsubmit` executable. 
     34 
     35  `--with-ll-lib` LL_LIBRARY_PATH 
     36    Path to LL libraries (i.e. directory containing `libllapi.a` ). 
     37 
     38  `--prefix` INSTALLATION_DIRECTORY 
     39    Root directory where PSNC DRMAA for !LoadLeveler shall be installed. 
     40    When not given library is installed alongside with LL. 
     41 
     42  `--enable-debug` 
     43    Compiles library with debugging enabled (with debugging symbols not 
     44    stripped, without optimizations, and with many log messages enabled). 
     45    Useful when you are to debug DRMAA enabled application 
     46    or investigate problems with DRMAA library itself. 
     47 
     48There are no unusual requirements for basic usage of library: ANSI C 
     49compiler and standard make program should suffice.  If you have taken 
     50sources directly from SVN repository or wish to run test-suite you would 
     51need additional [=#dev_tools developer tools].  For further information regarding 
     52GNU build system see the INSTALL file. 
    2553 
    2654 
    27 TracGuide is a good place to start. 
     55== Configuration == 
    2856 
    29 Enjoy! [[BR]] 
    30 ''The Trac Team'' 
    3157 
    32 == Starting Points == 
     58During DRMAA session initialization (`drmaa_init`) library tries to 
     59read its configuration parameters from locations: `/etc/ll_drmaa.conf`, 
     60`~/.ll_drmaa.conf` and from file given in `LL_DRMAA_CONF` environment 
     61variable (if set to non-empty string).  If multiple configuration 
     62sources are present then all configurations are merged with values 
     63from user-defined files taking precedence (in following order: 
     64`$LL_DRMAA_CONF`, `~/.ll_drmaa.conf`, `/etc/ll_drmaa.conf`). 
    3365 
    34  * TracGuide --  Built-in Documentation 
    35  * [http://trac.edgewall.org/ The Trac project] -- Trac Open Source Project 
    36  * [http://trac.edgewall.org/wiki/TracFaq Trac FAQ] -- Frequently Asked Questions 
    37  * TracSupport --  Trac Support 
     66Currently recognized configuration parameters are: 
    3867 
    39 For a complete list of local wiki pages, see TitleIndex. 
     68  cache_job_state 
     69    According to DRMAA specification every `drmaa_job_ps()` call should 
     70    query DRM system for job state.  With this option one may optimize 
     71    communication with DRM.  If set to positive integer `drmaa_job_ps()` 
     72    returns remembered job state without communicating with DRM for 
     73    `cache_job_state` seconds since last update.  By default library 
     74    conforms to specification (no caching will be performed). 
     75 
     76    Type: integer, default: 0 
     77 
     78  job_categories 
     79    Dictionary of job categories.  It's keys are job categories names 
     80    mapped to [=#native_specification native specification] strings.  Attributes set by job 
     81    category can be overridden by corresponding DRMAA attributes or 
     82    native specification.  Special category name `default` is used when 
     83    `drmaa_job_category` job attribute was not set. 
     84 
     85    Type: dictionary with string values, default: empty dictionary 
     86         
     87  terminate_job_on_vacated 
     88        Attribute which determines if job should be terminated just after entering the `vacated` state. 
     89         
     90        Type: integer, default: 1 
     91 
     92=== Configuration file syntax === 
     93 
     94Configuration file is in form a dictionary. 
     95Dictionary is set of zero or more key-value pairs. 
     96Key is a string while value could be a string, an integer 
     97or another dictionary. 
     98 
     99 
     100{{{ 
     101  configuration: dictionary | dictionary_body 
     102  dictionary: '{' dictionary_body '}' 
     103  dictionary_body: (string ':' value ',')* 
     104  value: integer | string | dictionary 
     105  string: unquoted-string | single-quoted-string | double-quoted-string 
     106  unquoted-string: [^ \t\n\r:,0-9][^ \t\n\r:,]* 
     107  single-quoted-string: '[^']*' 
     108  double-quoted-string: "[^"]*" 
     109  integer: [0-9]+ 
     110}}} 
     111[=#native_specification] 
     112== Native specification == 
     113 
     114DRMAA interface allows to pass DRM dependent job submission options. 
     115Those options may be specified directly by setting `drmaa_native_specification` job 
     116template attribute or indirectly by the `drmaa_job_category` job template attribute.  
     117The legal format of the native options looks like:: 
     118{{{ 
     119  @ll_cmd_keyword1 = value @ll_cmd_keyword2 = value1 value2 value3  
     120}}} 
     121where the `ll_cmd_keyword` can be any of the [=#keyword keyword] accepted by the !LoadLeveler. It is user 
     122responsibility to provide legal combination of the `drmaa_native_specification`/`drmaa_job_category` 
     123and the other DRMAA attributes. 
     124 
     125== Release notes == 
     126 
     127 * 1.0.1 - first public release 
     128 
     129=== Known bugs and limitations ===  
     130 
     131Library covers all [#drmaa_specification DRMAA 1.0 specification] with exceptions listed 
     132below.  It was successfully tested with [#LoadLeveler IBM Tivoli LoadLeveler 3.5.0.5] on AIX 
     133OS and passes 43/44 tests of the [#test_suite official DRMAA test-suite]. All mandatory and 
     134nearly all optional job attributes (except job run duration soft limit, job run duration hard limit,  
     135drmaa_transfer_files and drmaa_deadline_time) are implemented. 
     136 
     137Known limitations: 
     138 
     139 * `drmaa_control()` - `DRMAA_CONTROL_RESUME` and `DRMAA_CONTROL_SUSPEND` are not implemented as suspending jobs in !LoadLeveler requires administrator privileges.  
     140 
     141=== Authors === 
     142 
     143The library was developed by: 
     144 
     145 * Michal Matloka - core implementation 
     146 * Mariusz Mamonski - AIX portability issues 
     147 
     148This library relies heavily on the ''Fedstage DRMAA utils'' code developed by: 
     149 
     150 * Lukasz Ciesnik. 
     151 
     152=== Acknowledgments === 
     153 
     154We would like to thank [#loni Louisiana Optical Network Initiativ] for providing us access to the clusters managed by !LoadLeveler. 
     155 
     156[=#dev_tools] 
     157=== Developer tools === 
     158 
     159Although not needed for library user the following tools may be required 
     160if you intend to develop PSNC DRMAA for !LoadLeveler: 
     161 
     162 * GNU autotools (autoconf, automake, libtool), 
     163 * [#Bison Bison] parser generator, 
     164 * [#docutils Docutils] for processing this `README`, 
     165 * [#latex LaTeX] for creating documentation in PDF format, 
     166 * [#doxygen Doxygen] for generating source code documentation. 
     167 
     168=== Links === 
     169 
     170[=#Bison] Bison: http://www.gnu.org/software/bison/ \\ 
     171[=#docutils] Docutils:  http://docutils.sourceforge.net/ \\ 
     172[=#latex] LaTeX:     http://www.latex-project.org/ \\ 
     173[=#doxygen] Doxygen:   http://www.stack.nl/~dimitri/doxygen/ \\ 
     174[=#DRMAA] DRMAA: http://www.drmaa.org/ \\ 
     175[=#drmaa_specification] DRMAA 1.0 specification: http://www.ogf.org/documents/GFD.133.pdf \\  
     176[=#test_suite] Official DRMAA test-suite: http://drmaa.org/testsuite.php \\ 
     177[=#smoa_computing]SMOA Computing: http://larix.man.poznan.pl/wiki/SMOA_Computing \\ 
     178[=#LoadLeveler] IBM Tivoli !LoadLeveler: http://www-03.ibm.com/systems/software/loadleveler/index.html \\ 
     179[=#loni] Louisiana Optical Network Initiative: http://loni.org/ \\ 
     180[=#keyword] !LoadLeveler Keywords: http://publib.boulder.ibm.com/infocenter/clresctr/vxrx/topic/com.ibm.cluster.loadl.doc/loadl33/am2ug30223.html#jobkey \\