
Morris, Johannes and all, Concerning the usage of GLUE 2.0 inside JSDL : +------------------------+ | List of requirements | +------------------------+ I propose following list, which is extracted from chapter 4 of the 'PGI chart of priorities for the detailed specification of PGI requirements' at http://forge.gridforum.org/sf/go/doc16156 : For JSDL (apart SPMD, MPI and Application profile) -------------------------------------------------- 100 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD3 The Job Description document MUST reference all grid entities in conformance to the GLUE specification 112 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD17 Job Description document should offer a clear separation between resource requirements and application requirements (for example: suggest to put memory information into resource), e.g. improving the JSDL specification in this context (if necessary) 115 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD20 It must be possible to specify hardware characteristics (e.g. in terms of a benchmark value) corresponding to the indicated performance numbers For JSDL SPMD and MPI --------------------- 108 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD13 Job Description comes with support for requesting multi-processor Activities (for example: threads/node, network topology, task/core mappings, multi-threading and such like). For JSDL Application Profile ---------------------------- 34 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqAR1 An easy way of launching applications or pre-configured /pre-installed software w/o specifying location details. Installed/pre-configured ones should be exposed as well as part of the resource description. The available software should be exposed through the service and in turn be requestable for resource/applications statements in JSDL. E.g. extending the JSDL with "pre-configured sw pieces" and/or "software libraries", e.g. global namespace of this applications might be beneficial as well. , etc. 35 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqAR2 Application management, for example: pre-installed applications, abstract notion of the application (i.e. specify w/o executable locations) 113 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD18 Job Description document should offer a new re-usable structure to describe an executable composed as folder and filename +------------------------------------+ | Detailed work on requirement 100 | +------------------------------------+ 100 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD3 The Job Description document MUST reference all grid entities in conformance to the GLUE specification Rationale --------- Figure 1 of the 'Job Submission Description Language (JSDL) Specification, Version 1.0' at http://www.ogf.org/documents/GFD.136.pdf] clearly shows that, in order to work correctly, a 'Superscheduler, or Broker, or …' has to match client requirements expressed in the JSDL document to information provided by a Grid Information System. Therefore, it is essential that client requirements on entities described by GLUE use only GLUE classes and attributes. For XML purposes, I propose to use the 'glue' namespace specified at http://schemas.ggf.org/glue/2008/05/spec_2.0_d42_r01 JSDL elements clearly incompatible with GLUE 2.0 ------------------------------------------------ Searching for JSDL elements clearly incompatible with GLUE 2.0 at http://www.ogf.org/documents/GFD.147.pdf I have found following ones (but careful study by other persons could perhaps find other ones) : - JSDL 'ProcessorArchitectureEnumeration' specified in JSDL section 5.2.1 and used by the 'CPUArchitectureName' element specified in JSDL section 6.4.15 : The corresponding GLUE 2.0 enumeration is 'Platform_t' specified in GLUE 2.0 appendix B.26. While some JSDL values (such as 'powerpc' and 'sparc') match GLUE 2.0 values, some other JSDL values (such as 'x86_64', 'x86_32' and 'ia64') do NOT match GLUE 2.0 values (which are respectively 'amd64', 'i386' and 'itanium'). Therefore, I propose to deprecate JSDL 'ProcessorArchitectureEnumeration' and replace it with GLUE 2.0 'Platform_t' enumeration (for XML, inside the above described 'glue' namespace). - JSDL 'OperatingSystemTypeEnumeration' specified in JSDL section 5.2.3 and used by the 'OperatingSystemName' element specified in JSDL section 6.4.12 :\\ The corresponding GLUE 2.0 enumerations are 'OSFamily_t' specified in GLUE 2.0 appendix B.23 and 'OSName_t' specified in GLUE 2.0 appendix B.24.\\ GLUE 2.0 permits the client to specify the desired OS either through a vague requirement ('OSFamily' attribute) or through a precise requirement ('OSName' attribute).\\ Therefore, I propose to deprecate JSDL 'OperatingSystemTypeEnumeration' and replace it with the GLUE 2.0 'OSFamily_t' and 'OSName_t' enumerations (for XML, inside the above described 'glue' namespace). Practical usage of the 2 previous proposals permitting backward compatibility should be easily achieved using the JSDL 'other' value as described in JSDL section 4.3 'Semantics of the JSDL “other” Value'. Please study and criticize the above proposals. Do not hesitate to add comments and suggestions for improvements at http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD3 Best regards. ----------------------------------------------------- Etienne URBAH LAL, Univ Paris-Sud, IN2P3/CNRS Bat 200 91898 ORSAY France Tel: +33 1 64 46 84 87 Skype: etienne.urbah Mob: +33 6 22 30 53 27 mailto:urbah@lal.in2p3.fr -----------------------------------------------------

Morris, Johannes and all, Concerning OGF PGI requirement 100 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD3 The Job Description document MUST reference all grid entities in conformance to the GLUE specification From the raw minutes and my own memory of today's telephone conference, I have extracted the points directly concerning requirement 100 (excluding points concerning the PGI process). I have written down these points in the above mentioned wiki page, and here : * Mark: What does 'values do not match' mean ? * Etienne: This means that the values describe the same architecture with different names. * Oxana: This means that the enumerations are not the same (bottom line). * Andrew: I agree to align to GLUE2, to use space additions for enumerations when 2 groups call them differently. * Morris: We need a general strategy to integrate GLUE2 details inside JSDL. * Agreement on 'Example of GLUE2 extension and integration inside JSDL' http://forge.gridforum.org/sf/docman/do/downloadDocument/projects.pgi-wg/doc... : o We integrate GLUE2 elements in some parts of the JSDL job description o JSDL should be further used and not replaced, but augmented with GLUE2. * Morris: What is your feeling of re-using the GLUE2 parts that are compatible ? * Etienne: Some GLUE2 attributes do NOT conflict with JSDL, and can be directly integrated inside JSDL. As first candidates for integration inside JSDL, I propose the GLUE2 attributes of the 'ExecutionEnvironment' class (Chapter 6.6 of GLUE 2.0). * Morris: We have to prepare a discussion on these candidates for the next telephone conference. * Etienne: I will contribute to this preparation. * Morris: Are the attributes of the 'ComputingService' class of GLUE2 also good candidates for integration inside JSDL ? * Etienne: These attributes are only numbers of jobs, therefore I think that they are NOT good candidates. I prefer to focus on 'ExecutionEnvironment' attributes, which describe hardware. Do not hesitate to edit the wiki page if points on this precise requirement have been missed or inaccurately written down. Do not hesitate to add your own comments and suggestions for improvement at the end of this wiki page. In particular, after more careful thinking, many attributes of the 'ComputingService' class of GLUE2 are good candidates for integration inside JSDL indeed. Clients may for example issue requirements on computing services having : - given values for 'Capability', - a given 'Type' or 'QualityLevel', - low values for 'WaitingJobs', 'SuspendedJobs', ... Anyway, I will focus first on 'ExecutionEnvironment' attributes, and then on attributes of other classes. Best regards. ----------------------------------------------------- Etienne URBAH LAL, Univ Paris-Sud, IN2P3/CNRS Bat 200 91898 ORSAY France Tel: +33 1 64 46 84 87 Skype: etienne.urbah Mob: +33 6 22 30 53 27 mailto:urbah@lal.in2p3.fr ----------------------------------------------------- On Wed, 08/12/2010 18:46, Etienne URBAH wrote:
Morris, Johannes and all,
Concerning the usage of GLUE 2.0 inside JSDL :
...
+------------------------------------+ | Detailed work on requirement 100 | +------------------------------------+ 100 : http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD3 The Job Description document MUST reference all grid entities in conformance to the GLUE specification
Rationale --------- Figure 1 of the 'Job Submission Description Language (JSDL) Specification, Version 1.0' at http://www.ogf.org/documents/GFD.136.pdf] clearly shows that, in order to work correctly, a 'Superscheduler, or Broker, or …' has to match client requirements expressed in the JSDL document to information provided by a Grid Information System.
Therefore, it is essential that client requirements on entities described by GLUE use only GLUE classes and attributes.
For XML purposes, I propose to use the 'glue' namespace specified at http://schemas.ggf.org/glue/2008/05/spec_2.0_d42_r01
JSDL elements clearly incompatible with GLUE 2.0 ------------------------------------------------ Searching for JSDL elements clearly incompatible with GLUE 2.0 at http://www.ogf.org/documents/GFD.147.pdf I have found following ones (but careful study by other persons could perhaps find other ones) :
- JSDL 'ProcessorArchitectureEnumeration' specified in JSDL section 5.2.1 and used by the 'CPUArchitectureName' element specified in JSDL section 6.4.15 : The corresponding GLUE 2.0 enumeration is 'Platform_t' specified in GLUE 2.0 appendix B.26. While some JSDL values (such as 'powerpc' and 'sparc') match GLUE 2.0 values, some other JSDL values (such as 'x86_64', 'x86_32' and 'ia64') do NOT match GLUE 2.0 values (which are respectively 'amd64', 'i386' and 'itanium'). Therefore, I propose to deprecate JSDL 'ProcessorArchitectureEnumeration' and replace it with GLUE 2.0 'Platform_t' enumeration (for XML, inside the above described 'glue' namespace).
- JSDL 'OperatingSystemTypeEnumeration' specified in JSDL section 5.2.3 and used by the 'OperatingSystemName' element specified in JSDL section 6.4.12 :\\ The corresponding GLUE 2.0 enumerations are 'OSFamily_t' specified in GLUE 2.0 appendix B.23 and 'OSName_t' specified in GLUE 2.0 appendix B.24.\\ GLUE 2.0 permits the client to specify the desired OS either through a vague requirement ('OSFamily' attribute) or through a precise requirement ('OSName' attribute).\\ Therefore, I propose to deprecate JSDL 'OperatingSystemTypeEnumeration' and replace it with the GLUE 2.0 'OSFamily_t' and 'OSName_t' enumerations (for XML, inside the above described 'glue' namespace).
Practical usage of the 2 previous proposals permitting backward compatibility should be easily achieved using the JSDL 'other' value as described in JSDL section 4.3 'Semantics of the JSDL “other” Value'.
Please study and criticize the above proposals. Do not hesitate to add comments and suggestions for improvements at http://forge.gridforum.org/sf/wiki/do/viewPage/projects.pgi-wg/wiki/ReqJD3
Best regards.
----------------------------------------------------- Etienne URBAH LAL, Univ Paris-Sud, IN2P3/CNRS Bat 200 91898 ORSAY France Tel: +33 1 64 46 84 87 Skype: etienne.urbah Mob: +33 6 22 30 53 27 mailto:urbah@lal.in2p3.fr -----------------------------------------------------
participants (1)
-
Etienne URBAH