GPGPU-WG KnowledgeBase GLUE2 Profile Application ApplicationEnvironment

From EGIWiki
Revision as of 18:45, 27 February 2014 by Walshj1 (talk | contribs)
Jump to: navigation, search


The ApplicationEnvironment is a GLUE2 class that describes the software environment in which a job will run.

  • Each Application is identified by a name.
  • The AppVersion is voluntary
  • These names are not defined by the schema, but should be assigned in a way that allows applications to be uniquely identified.

Discussion Points

  • Q1. Should we use the AppVersion to indicate what version the software is installed?
    • Pros (positives)
      • Makes it clear which version of the software is installed.
      • Could be generated dynamically (requires changes to GIP plugin, and assumes the value can be calulated on that resource BDII)
    • Cons (negatives)
      • If there are different versions of the software installed, they cannot all use the same name, so version data has to be incorporated into the AppName anyhow.
  • Q2. If we add version information data to the AppName, what convention shall we use? Is the format AppName_MajorVersion and AppName_MajorVersion_MinorVersion enough?
  • Q3. Do we want to use the OtherInfo attribute? If so, what are the use cases?

Draft Application Profiles

ApplicationEnvironment Definition

Entity Inherits from Description
ApplicationEnvironment Entity A description of the installed application software available or software environment characteristics available within one or more Execution Environments.
Inherited Attribute Type Mult Unit Description
Creation Time DateTime_t 0..1 Timestamp describing when the entity instance was created
Validity Unit64 0..1 s The duration after CreationTime that the information presented in the Entity SHOULD be considered relevant. After that period has elapsed, the information SHOULD NOT be consideredrelevant
ID [key] URI 1 A global unique ID
Name String 0..1 Human Readable name
OtherInfo String * Placeholder to publish info that does not fit in any other attribute. Free-form string, comma-separated tags, (name, value ) pair are all examples of valid syntax.
Attribute Type Mult Unit Description
AppName String 1 The name of the application or environment.
AppVersion String 0..1 The version of the application or environment, as defined by the supplier.
Repository URL 0..1 The URL of a service which offers a name service and/or a repository for this application environment. Application environments can be categorized under namespaces maintained by application repositories.
State AppEnvStat_t 0..1 The current installation state of the application.
RemovalDate DateTime_t 0..1 The date and time after which the application MAY be removed.
License License_t 0..1 The type of license under which the application is usable
Description String 0.1 A human-readable description of this application or environment.
BestBenchmark Benckmark_t * The type of benchmark which best identifies the sensitivity of this application to the performance of the Execution Environment, which can be compared with the rating published via the Benchmark class.
ParallelSupport ParallelSupport_t 0..1 The type of supported parallel execution framework
MaxSlots UInt32 0..1 slot The maximum number of concurrent slots that may be used to run jobs using the application
MaxJobs UInt32 0..1 job The maximum number of concurrent jobs that may use the application
MaxUserSeats UInt32 0..1 user seat The maximum number of concurrent user seats (i.e. distinct users) that may use the application.
FreeSlots UInt32 0..1 slot The number of slots currently available to run jobs using the application
FreeJobs UInt32 0..1 job The number of jobs that could immediately start their execution using the application
FreeUserSeats UInt32 0..1 user seat The current number of free seats for additional users to use the application.
Association End Mult. Description
ExecutionEnvironment.ID * An application environment MAY be used in zero or more execution environments
ComputingManager.ID 1 An application environment is part of a computing manager.
ApplicationHandle.ID * An application environment MAY be handled via zero or more application handles.
Inherited Association End Mult. Description
Extension.Key * The entity MAY be extended via key-value pairs