Startup & Shutdown
[Environmental Management]

Collaboration diagram for Startup & Shutdown:

Detailed Description

Internals about the startup of the execution-environment and SPU-Thread-Management.

Startup

The PPU-Process creates for every SPU-thread an own thread using the pthread-library (see SPU-Thread Management). The rank of each prozess, the overall process count, the sizes of message-queue and buffer-space and the effective base address of the buffer is send to each SPU-thread via mailbox-messages. The SPU-threads then send the memory-addresses of their message-queues and status-arrays back to the PPU-process which writes this data into the prozess-list. After all SPU-Threads have reported back to the PPU-process the effective address of the PPU's process-list ist distributed among the SPU-processes which then copy the process-list via DMA in their local storages.

Shutdown

PPU

The PPU-process waits till all SPU-threads have signalled that they are also executing the finalize-function. After that a signal is send back to each SPU-Thread that they can now stop execution. Then local ressources are freed and the finalize-function returns.

SPU

A mailbox-message is send to the PPU to signal that the SPU-process is now executing the finalize-function. After that the SPU-process is waiting till a mailbox-message from the PPU-process is received. Then local ressources are freed and the finalize-function returns.


Modules

 SPU-Thread Management
 This section deals about the creation and management of SPU-threads.


Generated on Thu Feb 12 13:51:05 2009 for MPI On Cell (Documentation) by  doxygen 1.5.6