[Beowulf] Parallel memory
hahn at physics.mcmaster.ca
Tue Oct 18 15:39:50 PDT 2005
> memory, if you do a memory access like that over openssi it will forward
> in a very slow manner like 2048 bytes.
of course the correct answer is page size, since that's the granularity
at which a net-shm can hook app references. (actually, the segv handler
*could* trap each faulting instruction and deliver the data in smaller
pieces. it could even try to figure out when patching in a whole page
would be more effective. some of this sort of thing is done in papers
that involve "pointer swizzling" - various amounts of dynamic code patching,
as well. but using pages means that further references have zero overhead,
which is always nice.)
> This is ok if you are streaming in some sort of way.
or at least high locality within the pages you do touch.
> Anyway you'll need to dramatically rewrite the application for it.
not at all. the whole point of mmu-based net-shm is to present the app
with the illusion that the pages are just *there*. you'll probably want
to change your allocator so that you call netshm_alloc for a few big
chunks of distributed memory, and leave most other allocs local.
> Keep in mind such systems like openmosix and openssi are beginner projects,
> getting executed by big enthusiastic amateurs, who still own many machines
> with only 10 mbit cards and therefore you really should worry about those
> 1-2 milliseconds it takes to get you that say 2k bytes of memory.
sadly, nothing in this sentence is correct.
More information about the Beowulf