Just came across this project, of which we can take advantage to speed up
the large computation involved in the image analysis, without modifying the
majority of the current codes. Though it can not split a single process
onto different nodes, many FSL's current processes can be split up onto
different nodes, say the batching of multiple analyses of individual
subject's data (first level) and parallel processes for multiple contrasts
at higher level analysis after "featregapply" process (maybe this can be
split up too if the processes - awwmaths and avwmerge - dependent on the
results of this process is smart enough to wait all splits of the process
finishing). Some codes need to be changed while keeping them still backward
compatible with the non-cluster computer. I will leave that to people with
more progamming expertise.
http://openmosix.sourceforge.net/
"openMosix is a Linux kernel extension for single-system image clustering
which turns a network of ordinary computers into a supercomputer."
"Probably the best-known type of Linux-based cluster is the Beowulf
cluster. ...... While Beowulf clusters are extremely powerful, they aren't
for everyone. The primary drawback of Beowulf clusters is that they require
specially designed software (written with explicit PVM or MPI support) in
order to take advantage of cluster resources."
"Wouldn't it be wonderful if there were some technology that would allow
standard Linux applications to take advantage of a cluster without any need
for them to be rewritten or even recompiled? Thankfully, there is — and
this technology is called openMosix."
"The really great thing about openMosix is that it can turn a bunch of
Linux machines into something like a large virtual SMP (symmetric
multiprocessor) system. "
"OpenMosix, like an SMP system, cannot execute a single process on multiple
physical CPUs at the same time."
|