[Beowulf] cluster softwares supporting parallel CFD computing
hahn at physics.mcmaster.ca
Sun Sep 17 16:05:09 PDT 2006
wherein Jim describes a system which scaled poorly even at n=2.
>> Yes, the software structure was badly designed for the interconnect.
>> HOWEVER, the whole point of computing resources is that I really
>> shouldn't have to design the whole software system around the
>> peculiarities of the hardware platform.
I would say you want a computational appliance - a concept which is
somewhat at odds to actual programming. to me, programming consists
mainly in producing the plumbing between the high-level goal and
the low-level hardware oddities. pandering to the system's preferences.
it might be nice if the system could present an idealized machine
for you to use, where all underlying weaknesses are somehow worked around.
but that doesn't exist today, except in fairly limited senses (for
instance, compilers workaround lack of divide, or need to fill branch-delay
slots, etc.) they don't magic away a lot of things, though (using
exceptional FP values, wrong array indexing, the assumption that memory is
cheap to access, etc). hopefully, middleware doesn't reduce expressive
power while still requiring a new investment in learning to use it...
> It sure would be nice if software could be partitioned in an efficient
> manner, including considerations of interconnect topology, with a
> compiler flag. Alas, this we must still do ourselves.
well, there are platforms that try to address this such as charm++.
they require some conceptual investment, though. for the most part,
I think they're on the right track - trying to come up with a model
in which you can express your calculation, capturing the relevant detail
and leaving as much unspecified as possible to maximize the middleware's
opportunity to adapt...
> This is a strange sentiment to be displaying on this list, if I may say
> so. Beowulfers sit further out on the frontier so they can derive more
> performance from their hardware budgets. The consequence of this is
> additional development time, application complexity, and sometimes
> hardware specificity.
I see beowulfry as hacking - repurposing of something that's been made
cheap by mass adoption. not necessarily just "extreme computation",
but "supercomputer hack". and that doesn't necessarily imply development,
custom apps or hardware, at least not once the bush has been whacked...
More information about the Beowulf