How application profiles interact with queue and job parameters
Application profiles operate in conjunction with queue
and job-level options. In general, you use application profile definitions
to refine queue-level settings, or to exclude some jobs from queue-level
parameters.
Application profile settings that override queue settings
The following application profile parameters override the corresponding queue setting:
Application profile limits and queue limits
The following application profile limits override the corresponding queue-level soft limits:
Define application-specific environment variables
You can use application profiles to pass application-specific tuning and runtime parameters to the application by defining application-specific environment variables. Once an environment variable is set, it applies for each job that uses the same application profile. This provides a simple way of extending application profiles to include additional information.
Absolute run limits
If you want the scheduler to treat any run limits as absolute, define ABS_RUNLIMIT=Y in lsb.params or in lsb.applications for the application profile that is associated with your job. When ABS_RUNLIMIT=Y is defined in lsb.params or in the application profile, the run time limit is not normalized by the host CPU factor. Absolute wall-clock run time is used for all jobs submitted with a run limit configured.
Pre-execution
Queue-level pre-execution commands run before application-level pre-execution commands. Job level pre-execution commands (bsub -E ) override application-level pre-execution commands.
Post-execution
When a job finishes, post-execution commands run. For the order in which these commands run, refer to the section on Pre-Execution and Post-Execution Processing.
Re-runnable jobs
RERUNNABLE in an application profile overrides queue-level job rerun, and allows you to submit re-runnable jobs to a non re-runnable queue. Job-level rerun (bsub -r or bsub -rn ) overrides both the application profile and the queue.
Resource requirements
Application-level resource requirements can be simple (one requirement for all slots) or compound (different requirements for specified numbers of slots). When resource requirements are set at the application-level as well as the job-level or queue-level, the requirements are combined in different ways depending on whether they are simple or compound.
Estimated job run time and runtime limits
Instead of specifying an explicit runtime limit for jobs, you can specify an estimated run time for jobs. LSF uses the estimated value for job scheduling purposes only, and does not kill jobs that exceed this value unless the jobs also exceed a defined runtime limit.