Mercurial > hg > Papers > 2008 > gongo-sigos
view manager-cr.tex @ 10:887d57278cb6
*** empty log message ***
author | gongo |
---|---|
date | Wed, 26 Mar 2008 12:59:31 +0900 |
parents | fea1ac32de27 |
children |
line wrap: on
line source
\subsubsection{パイプライン処理} Cell ではそれぞれのコアがメインメモリを 直接参照することは出来ず、DMA 転送によりデータをやりとりする。 DMA は CPU を介さず直接データ転送を行う方式である。 SPE は DMA 完了を待たずに他の処理を行うことが出来るので、 DMA のレイテンシを隠すことが出来る。 また、ダブルバッファリングを行うことで パイプライン処理が可能となる (\figref{fig-pipeline}) 。 \begin{figure}[tb] \begin{center} \includegraphics[scale=0.43]{figure/pipeline.pdf} \caption{Pipeline} \label{fig-pipeline} \end{center} \end{figure} パイプライン処理を入れた Task Manager の Scheduler を以下に示す。 \begin{verbatim} do { task3->write(); task2->exec(); task1->read(); taskTmp = task3; task3 = task2; task2 = task1; task1 = task1->next(this, taskTmp); } while (task1); \end{verbatim} Task Manager を \figref{fig-cerium} に適用させると、 \figref{fig-manager-pipeline} のようにパイプライン的に動作する。 \begin{figure}[tb] \begin{center} \includegraphics[scale=0.36]{figure/manager-pipeline.pdf} \caption{Task Manager が行う Pipeline} \label{fig-manager-pipeline} \end{center} \end{figure}