
Ariel Oleksiak wrote:
What is your versioning policy and plans for further development? Is the number of current version 1.1? Are you going to introduce any changes to this version or you plan to release subsequent versions? Do you think we can base our interfaces on this version of JSDL schema?
I think we plan to make the first version actually submitted to the formal part of the GGF process into version 1.0; everything before that is "bleeding edge".
1. We don't see where we could specify a type of application distribution, e.g. MPI, OpenMPI. Do you think this is too specific to add it to the application element?
Either it is a Resource (something which has to be there for the job to run) or it is part of the Application (an inherent aspect of the app running itself). I don't fully understand which. :^) Either way, it should be possible to fit it as an extension element into one of the two places.
2. How would you suggest to specify a logical file name: using predefined syntax or using a special attribute in the FileName element? Can a whole directory be specified as well?
I don't see why not.
3. Why Source & Target in DataStaging are in one element? How to use different name for an input and output file? We would suggest to add a choice element above Source and Target or to define some separate elements: e.g. SourceFiles and TargetFiles (probably of the same type).
They are in a single element so you can have a (logical) file that is staged in, modified, and then staged out again. No file has to have both Source and Target, and I think there are use-cases for having neither (e.g. where you just want to closely control some deletion behaviour).
4. Why the CreationFlag element is mandatory? I think this feature is not available in many systems. Furthermore, a reasonable default value can be chosen.
Pass. :^)
5. Definition 5.6.6.1: "A Source element contains the location and may contain a user on the remote system. This file MUST be staged in from the location specified by the URL as the user on the remote host before the job has terminated." Do you really mean "terminated" or it should be "started"?
Sounds like a typo.
6.What is expected as operatingSystemDesc? Is it human readable description?
I think that's one of the items we hope to borrow from CIM.
7. I saw the uses-cases containing descriptions of a job consisting of multiple processes and threads requiring multiple resources and/or processors. I guess that specification of alternative configurations is not possible, e.g. 4 nodes 4 processors each OR 1 node, 16 processors?
That's something you'd specify using Profiles I think.
8. I didn't find a specification of the queue name in the new schema. I think it might be sometimes useful similarly as an implicit specification of a specific host.
It got removed. It's a scheduling attribute, and so not within the domain of JSDL (we know we need further XML languages to specify these things; JSDL is definitely just a part of the wider picture of computational workflow template description.)
10. Do limits mean that if they are exceeded during application execution the application must be terminated?
They're meant to be interpreted as what the user want's his POSIX system limits to be.
11. Within the FileSystem element there is a sub-element MountPoint. Who should specify this? A user? I think a more common use case is that users use predefined variables (e.g. home, tmp) to specify paths that are relative to these variables (but mount points depend on a local system).
IIRC, the user can specify it and the system can either ensure that the FS is mounted, or it can just check to see if it is mounted and throw the job out if it isn't.
12. I asked in the previous email about defining software dependencies, e.g. necessary libraries and you requested some use-cases. Simple examples are as follows: - interactive application may need additional software (e.g. VNC) to enable users to access remotely application's user interface - graphical application may need the OpenGL library to run - Java applications need Java Virtual Machine installed Therefore, in my opinion such an element would be useful and general. Of course, we can add it using the extension possibility.
In the specific case of Java, there's a specialized ApplicationType (which needs some more fleshing out IIRC). But these are all good examples of "software resources". Thanks. Donal.