1 / 17

卒業研究 JCSP を用いたプログラム開発

卒業研究 JCSP を用いたプログラム開発. 05162042  池部理奈. 目次. ① JCSP について   1) JCSP Base Edition   2) JCSP Network Edition   3) JCSP プログラム開発 ② マンデルブロー集合のプログラミング   1)プログラム構成   2)計算時間の結果 ③ まとめ. ParaMain. SendProc. Chan. ReadProc. JCSP について. CSP ( Communicating Sequential Process) の概念を

anevay
Télécharger la présentation

卒業研究 JCSP を用いたプログラム開発

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 卒業研究 JCSPを用いたプログラム開発 05162042 池部理奈

  2. 目次 ①JCSPについて   1)JCSPBase Edition   2)JCSPNetwork Edition   3)JCSPプログラム開発 ② マンデルブロー集合のプログラミング   1)プログラム構成   2)計算時間の結果 ③ まとめ 池部理奈 卒業研究発表 2009.03.03

  3. ParaMain SendProc Chan ReadProc JCSPについて CSP(Communicating Sequential Process)の概念を Javaで実装するためのライブラリ。 パラレルプロセスはチャネルとCSPプロセスから構成されている。 パラレルプロセスParaMainの構成 池部理奈 卒業研究発表 2009.03.03

  4. Farmer Worker out in Occamではこのタイプのチャネルを使っている チャネルの種類 One2Oneチャネル 池部理奈 卒業研究発表 2009.03.03

  5. Worker0 out Worker1 Farmer0 out in out Worker2 Worker0 in Farmer0 Worker1 out in Worker2 in 多対一の関係のチャネル Any2Oneチャネル これらのチャネルは Any側のどのプロセスが通信するか 確定的でない One2Anyチャネル 池部理奈 卒業研究発表 2009.03.03

  6. 計算機(1個のCPU) P1 Main P0 P2 JCSPの実行形態(1/2) JCSPを用いて開発される並列プロセスのプログラムは、主に 2種類の実行形態をとることができる。 1つは、チャネルで接続された複数の並列プロセスを1つのCPU 上で行うタイプ。 池部理奈 卒業研究発表 2009.03.03

  7. Node2 Node1 Node0 Main Main Main P0 P1 P2 しかし実際の物理的な ネットワークの接続形態は 必ずしもこのようにはなっていない JCSPの実行形態(2/2) もう一方の実行形態は、ネットワークに接続された実際の計算機 (ノード)に各プロセスを配置して実行するタイプ。 池部理奈 卒業研究発表 2009.03.03

  8. JCSPには、このチャネルの接続問題を解決するためにJCSPには、このチャネルの接続問題を解決するために CNSというものが用意されている! ネットワーク 物理的なノードの接続形態とソフトウェア上のプロセスの 接続形態を合理的にマッピングする必要が生じる。 Node1 Main P1 Node0 Main Node2 P0 Main P2 池部理奈 卒業研究発表 2009.03.03

  9. プログラムの設計時には物理的なネットワークの接続形態をプログラムの設計時には物理的なネットワークの接続形態を 考慮する必要がなく、大変便利である。 CNS server CNS(チャネルネームサーバー)は、ノードのIPアドレスとチャネルの 名前を管理し、各プロセスからの問い合わせに対応するもの。 池部理奈 卒業研究発表 2009.03.03

  10. 第一段階 第二段階 第三段階 CNS CNS Farmer Farmer Worker Farmer Worker Worker JCSPプログラム開発 一般的なプログラム開発 第一段階 : 一台の計算機内に並列プロセスとして実行 第二段階 : 一台の計算機内の複数のJava仮想マシンで          ネットワークプログラムとして実行 第三段階 : 実際のネットワークの複数の計算機でネットワーク          プログラムを実行 池部理奈 卒業研究発表 2009.03.03

  11. Worker 0 Farmer 0 Worker 1 400 Worker 2 マンデルブロー集合のプログラミング プログラムをFarmer部とWorker部に分ける Farmer部 座標をWorkerに送り、計算結果を受信する Worker部 受け取った座標を計算し、発散速度の結果をFarmerに送信する 400 池部理奈 卒業研究発表 2009.03.03

  12. 粒度、Workerの台数、実行形態に注目して、比較。粒度、Workerの台数、実行形態に注目して、比較。 第一段階 第二段階 第三段階 CNS CNS Farmer Farmer Worker Farmer Worker Worker 計算時間の比較 TPCOREと違い、 Worker3台以上でも繋げられる ① 粒度を変えて時間を比較。(実行形態:第一段階) ② Workerの台数を変えて時間を比較。(実行形態:第一段階) ③ 実行形態による時間の比較。(Worker:1台) 池部理奈 卒業研究発表 2009.03.03

  13. ①と②の結果 ① 粒度が粗いほうが、計算時間は短い。 ② Workerの台数による時間差はあまりない。 池部理奈 卒業研究発表 2009.03.03

  14. 第一段階 第二段階 第三段階 CNS CNS Farmer Farmer Worker Farmer Worker Worker ③の結果(1/2) 池部理奈 卒業研究発表 2009.03.03

  15. ③の結果(2/2) ネットワークに接続すると、非常に時間がかかる。 また、1台のCPU上で実行させるよりも複数台のCPUで実行させた方が、 約2倍ほどはやくなっている。 池部理奈 卒業研究発表 2009.03.03

  16. W data ack F 一台のCPU上では送受信を一本の回線で行う ため、時間がかかってしまうと思われる なぜCPU複数台のほうがはやい? data ack ▼ F W 池部理奈 卒業研究発表 2009.03.03

  17. まとめ 今回は単純な計算だったのでネットワークプログラムで 実行させた場合、通信にかかる時間が計算時間の差に 大きく影響していた。 もっと複雑な計算をさせるプログラムにすれば、 複数台のCPUの方がはやい結果が出ると思われる。 池部理奈 卒業研究発表 2009.03.03

More Related