[Pgi-wg] UNICORE extensions for describing and requesting arbitrary resources

Bernd Schuller b.schuller at fz-juelich.de
Wed Sep 21 06:39:54 CDT 2011


hi,

as discussed in the PGI session 2(Sept 21 2011, 11:00-12.30) here is
what we use in UNICORE to work with "non-JSDL" types of resources.

1)
For *describing resources to a client* (published via a service's
resource properties), we use the following schema
(this is not a JSDL extension, but a requirement on the resource
description schema, e.g. Glue)

  <xsd:element name="AvailableResource" type="tns:AvailableResourceType"/>

  <xsd:complexType name="AvailableResourceType">
    <xsd:sequence>
      <xsd:element name="Name" type="xsd:string"/>
      <xsd:element name="Description" type="xsd:string"/>
      <xsd:element name="Type" type="unigrids:AvailableResourceType_Type"/>
      <xsd:element name="Min" type="xsd:string" minOccurs="0"/>
      <xsd:element name="Max" type="xsd:string" minOccurs="0"/>
      <xsd:element name="Default" type="xsd:string" minOccurs="0"/>
      <xsd:element name="AllowedValue" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:simpleType name="AvailableResourceType_Type">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="boolean" />
      <xsd:enumeration value="int" />
      <xsd:enumeration value="double" />
      <xsd:enumeration value="string" />
      <xsd:enumeration value="choice" />
    </xsd:restriction>
  </xsd:simpleType>


In essence there are typed resources, and the limits and/or allowed values can be specified.

Some examples:

Ex 1.1: network topology (Morris' favorite)

 <AvailableResource>
   <Name>NetworkTopology</Name>
   <Description>The network topology of the selected nodes</Description>
   <Type>choice</Type>
   <Default>Torus</Default>
   <AllowedValue>Torus</AllowedValue>
   <AllowedValue>SomethingElse</AllowedValue>
 </AvailableResource>

Ex 1.2: number of GPUs allocated per node

 <AvailableResource>
   <Name>GPUsPerNode</Name>
   <Description>Number of GPUs per node</Description>
   <Type>int</Type>
   <Min>1</Min>
   <Max>8</Max>
   <Default>1</Default>
 </AvailableResource>


2)
For *requesting resources* (sent to the service as part of the JSDL)
we have the simple

  <xsd:element name="ResourceRequest" type="tns:ResourceRequest_Type"/>
   <xsd:complexType name="ResourceRequest_Type">
     <xsd:sequence>
       <xsd:element name="Name" type="xsd:string"/>
       <xsd:element name="Value" type="xsd:string" />
     </xsd:sequence>
   </xsd:complexType>

So the matching requests for the examples above would be

Ex 2.1: network topology

  <ResourceRequest>
    <Name>NetworkTopology</Name>
    <Value>Torus</Value>
  </ResourceRequest>

Ex 2.2: GPUs

  <ResourceRequest>
    <Name>GPUsPerNode</Name>
    <Value>4</Value>
  </ResourceRequest>



Best regards,
Bernd.


--
Dr. Bernd Schuller
Federated Systems and Data
Juelich Supercomputing Centre, http://www.fz-juelich.de/jsc
Phone: +49 246161-8736 (fax -8556)



------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------
Forschungszentrum Juelich GmbH
52425 Juelich
Sitz der Gesellschaft: Juelich
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
Vorsitzender des Aufsichtsrats: MinDirig Dr. Karl Eugen Huthmacher
Geschaeftsfuehrung: Prof. Dr. Achim Bachem (Vorsitzender),
Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt,
Prof. Dr. Sebastian M. Schmidt
------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------


More information about the Pgi-wg mailing list