Ocean Color Forum - Not logged in
Forum Ocean Color Home Help Search Login
Previous Next Up Topic SeaDAS / SeaDAS 6.x - General Questions / Seadas 6.4 & multiprocessor linux box (2075 hits)
By sambrott Date 2012-07-30 17:23
I am using Seadas 6.4 & on a 64 bit linux box that has 4 processors.  It appears that Seadas is only using 1 of the processors.  Is there an environmental variable to set or other approach to get Seadas to take advantage of all of the processors?
By @sean Date 2012-07-31 12:50
The processing code is all single stream - 1 process, 1 cpu - there is nothing you can do to make the processing code use of more than one cpu per process.
However, you could run simultaneous processes.

Sean
By WhiteG Date 2012-08-03 10:59
There are some tradeoffs in the design of remote sensing programs.   In principle, processing a single "image" could go faster if the work was spread across multiple CPU's, but at a cost of increased overhead, complexity, reduced portability, etc.   Remote sensing processing streams typically involve processing multiple "images", so it is generally more efficient to run multiple copies of a simpler single-CPU program.  This is known as a "trivially parallel" problem.  One area where improvements can be made is for operations such as filters that can be done more quickly using GPU hardware (e.g., one CPU plus the GPU).  Many steps in the pipeline are I/O bound.  Adding CPU's will have minimal impact if the process spends much of the time waiting for I/O.  There are systems that use one CPU for the main processing and add others to compress and decompress the I/O streams -- the additional CPU's don't end up doing much work, but overall things are faster because the main process spends less time waiting on I/O.

In practice, processing multiple images in parallel is not supported by current GUI environments so requires some shell scripts.  If you are interested, you should look into the GNU parallel program.   As an example, supposed you have downloaded a collection of .bz2 compressed images.   You can run:

$ bzip2 -d *.bz2

which will take a long time, or:

$ parallel bzip2 -d :::  *.bz2

On a high-end system with fast I/O and multiple cores this will take much less "clock" time.
Previous Next Up Topic SeaDAS / SeaDAS 6.x - General Questions / Seadas 6.4 & multiprocessor linux box (2075 hits)



Responsible NASA Official: Gene C. Feldman
Curator: OceanColor Webmaster
Authorized by: Gene C. Feldman
Updated: 27 November 2007
Privacy Policy and Important Notices NASA logo