
Thanks for the clarification Andreas. I guess I need to do some reading up on some of the changes. :-) -- Chris On 1/3/05 18:41, "Andreas Savva" <andreas.savva@jp.fujitsu.com> wrote:
Hi Chris,
Just to give you some background on why this is the way it is.
At the last F2F after a lengthy discussion on topology and what it really means the group reached the conclusion that topology is part of the application definition rather than part of the hardware requirements. (That is, it is independent of the hardware resources to be allocated to the job and should be described separately and in terms that are not hardware specific.) So the topology tags describe the number of processes and their desired grouping/tiling and appear in the Application section rather than the Resource section. The Resource section (may) contains tags to describe the hardware resources required: CPUCount and ResourceCount.
I have some doubts about the current definition (in particular I think we either overloaded the term 'Process' or we defined TileSize the wrong way). But I think it is easier to bash this out on a call or f2f (hand to hand? :-) at GGF13.
Andreas
Christopher Smith wrote:
Perhaps there are naming issues here, or there are too many terms defined here.
JSDL is only concerned with specifying the resource requirements for the allocation request, not with how those resources end up being used (i.e. using threads or processes). So the TileSize indicates how many cpus need to be allocated as a unit within one OS image (i.e. a group of cpus), and the CPUCount would tell you how many cpus are needed in total. I don't believe you need any more. If the job chooses to use processes or threads is independent of the allocation.
So given this example:
tasks per job=3 threads per task=4 processors per task=4
TileSize = 4 CPUCount = 12
This can translate to the PBS syntax "nodes=3:ppn=4" or the LSF syntax "-n 12 -R 'span[ptile=4]'", and I'm sure others as well.
To the entity making the allocation, processes or threads doesn't matter.
-- Chris