Mercurial > hg > Papers > 2010 > jsst-yutaka
comparison presen/presen.html @ 13:87b8bb4d104c
fix
author | Yutaka_Kinjyo |
---|---|
date | Fri, 10 Sep 2010 10:00:23 +0900 |
parents | c770f569a801 |
children | ca231fdd013c |
comparison
equal
deleted
inserted
replaced
12:c770f569a801 | 13:87b8bb4d104c |
---|---|
93 | 93 |
94 | 94 |
95 <div class="slide"> | 95 <div class="slide"> |
96 <h1>研究目的 と 背景</h1> | 96 <h1>研究目的 と 背景</h1> |
97 <p class="ex1"> | 97 <p class="ex1"> |
98 CPUのクロック周波数の増加は、発熱や消費電力の増大により難しくなっている | |
99 </p> | |
100 <ul> | |
101 <li> | |
102 クロック周波数を上げる代わりに、CPUコア数を増やす傾向になった。 | |
103 </li> | |
104 <br> | |
105 <li>マルチコアにあったプログラミングが必要になる</li> | |
106 </ul> | |
107 | |
108 <p><font color="red">そこで、プログラミングを支援するフレームワークが必要になってくる</font></p> | |
109 | |
110 </div> | |
111 | |
112 <div class="slide"> | |
113 <h1>研究目的 と 背景</h1> | |
114 <p class="ex1"> | |
98 現在 Cell/PS3またはMac OS X上で動作するOpen CL 的なFine Grain Task Manager である Cerium Task Manager を開発中である。 | 115 現在 Cell/PS3またはMac OS X上で動作するOpen CL 的なFine Grain Task Manager である Cerium Task Manager を開発中である。 |
99 </p> | 116 </p> |
100 <ul> | 117 <ul> |
101 <li> | 118 <li> |
102 ソフトウェアレンダリングエンジンとWord countを例題として、Task Manager の実装時の問題を洗い出している。 | 119 ソフトウェアレンダリングエンジンとWord countを例題として、Task Manager の実装時の問題を洗い出している。 |
357 <ul> | 374 <ul> |
358 <li>SPEからPPEへのMail送信ボックスはキューになっている</li> | 375 <li>SPEからPPEへのMail送信ボックスはキューになっている</li> |
359 <li>キューのサイズは1</li> | 376 <li>キューのサイズは1</li> |
360 <li>書き込む際にキューがいっぱいの場合はPPEから呼び出されるまで待つ</li> | 377 <li>書き込む際にキューがいっぱいの場合はPPEから呼び出されるまで待つ</li> |
361 <li>PPEからのMail呼び出しがないと、SPEは待ち続ける</li> | 378 <li>PPEからのMail呼び出しがないと、SPEは待ち続ける</li> |
379 <li>SPEの待ち時間が増えると、処理速度の低下につながる</li> | |
362 </ul> | 380 </ul> |
363 | 381 |
364 </div> | 382 </div> |
365 | 383 |
366 <div class="slide"> | 384 <div class="slide"> |
426 </div> | 444 </div> |
427 | 445 |
428 <div class="slide"> | 446 <div class="slide"> |
429 <h1>WordCount</h1> | 447 <h1>WordCount</h1> |
430 | 448 |
449 構成Task | |
450 | |
451 <ul> | |
452 <li>WordCountTask(<font color="red">TaskArray化</font>)</li> | |
453 <ul> | |
454 <li>Input data であたえられたデータをwcし、output data に書き出す</li> | |
455 </ul> | |
456 | |
457 <li>PrintTask</li> | |
458 <ul> | |
459 <li>各SPEから書き出されたwcデータを集計し、出力する</li> | |
460 <li>dependency に WordCountTaskを設定</li> | |
461 </ul> | |
462 | |
463 </ul> | |
464 | |
465 </div> | |
466 | |
467 <div class="slide"> | |
468 <h1>WordCount</h1> | |
469 | |
431 <ul> | 470 <ul> |
432 <li>wcするfileをマッピングし、Taskに割り振る</li> | 471 <li>wcするfileをマッピングし、Taskに割り振る</li> |
433 <li>WordCountTaskの終了をまって、PrintTaskが実行される</li> | 472 <li>WordCountTaskの終了をまって、PrintTaskが実行される</li> |
434 </ul> | 473 </ul> |
435 | 474 |
441 </div> | 480 </div> |
442 | 481 |
443 <div class="slide"> | 482 <div class="slide"> |
444 <h1>WordCount</h1> | 483 <h1>WordCount</h1> |
445 | 484 |
485 計測条件 | |
486 | |
446 <ul> | 487 <ul> |
447 <li>TaskArrayのサイズは64</li> | 488 <li>TaskArrayのサイズは64</li> |
448 <li>WC対象は166Mのテキスト</li> | 489 <li>Word count対象は166Mのテキスト</li> |
449 <li>TaskArrayの適応の有無を比較</li> | 490 <li>TaskArrayの適応の有無を比較</li> |
450 </ul> | 491 </ul> |
451 | 492 |
452 </div> | 493 </div> |
453 | 494 |
455 <h1>WordCount</h1> | 496 <h1>WordCount</h1> |
456 | 497 |
457 <ul> | 498 <ul> |
458 <li>time : 実行時間</li> | 499 <li>time : 実行時間</li> |
459 <li>dma wait : dma転送待ちの割合</li> | 500 <li>dma wait : dma転送待ちの割合</li> |
460 <li>time wait : mail待ちの割合</li> | 501 <li>mail wait : mail待ちの割合</li> |
461 </ul> | 502 </ul> |
462 | 503 |
463 <br> | 504 <br> |
464 | 505 |
465 <table border="3" style="width:100%;"> | 506 <table border="3" style="width:100%;"> |
536 | 577 |
537 改善策 | 578 改善策 |
538 | 579 |
539 <ul> | 580 <ul> |
540 <li>一度にファイルマッピングをしない</li> | 581 <li>一度にファイルマッピングをしない</li> |
541 <li>何度かに分けてマッピングする</li> | 582 <li>同じ領域を切り替えて、何度かに分けてマッピングする</li> |
542 <li>同じ領域を切り替えて使う</li> | 583 <li>スワップを減らし、アクセス時間を短縮できる</li> |
543 <li>スワップを減らし、アクセス時間を短縮する</li> | |
544 <li>dma wait の割合が減る</li> | 584 <li>dma wait の割合が減る</li> |
545 </ul> | 585 </ul> |
546 | 586 |
547 </div> | 587 </div> |
548 | 588 |
552 | 592 |
553 構成Task | 593 構成Task |
554 | 594 |
555 <ul> | 595 <ul> |
556 <li>CreatePolygonTask</li> | 596 <li>CreatePolygonTask</li> |
597 <ul> | |
598 <li>Polygonを生成する</li> | |
599 </ul> | |
557 <li>CreateSpanTask</li> | 600 <li>CreateSpanTask</li> |
601 <ul> | |
602 <li>Polygonを水平な線(Span)に分割する</li> | |
603 </ul> | |
558 <li>DrawSpanTask(<font color="red">TaskArray化</font>)</li> | 604 <li>DrawSpanTask(<font color="red">TaskArray化</font>)</li> |
605 <ul> | |
606 <li>Spanを描画する</li> | |
607 </ul> | |
559 </ul> | 608 </ul> |
560 | 609 |
561 <br> | 610 <br> |
562 DrawSpanTask : Taskの数が多いDrawSpanTaskをTaskArray化した。地球と月を表示する | 611 DrawSpanTask : Taskの数が多いDrawSpanTaskをTaskArray化した。地球と月を表示する |
563 例題を対象に計測した。 | 612 例題を対象に計測した。 |
598 <caption></caption> | 647 <caption></caption> |
599 | 648 |
600 </table><br> | 649 </table><br> |
601 | 650 |
602 <ul> | 651 <ul> |
603 <li>mail wait 割合が減った</li> | 652 <li>mail wait 割合が減少した</li> |
604 <li>レンダリングエンジンの場合、PPE側で実行するTaskがあるので、 | 653 <li>レンダリングエンジンの場合、PPE側で実行するTaskがあるので、 |
605 mailチェックが遅れ気味</li> | 654 mailチェックが遅れ気味になっている</li> |
606 </ul> | 655 </ul> |
607 | 656 |
608 </div> | 657 </div> |
609 | 658 |
610 <div class="slide"> | 659 <div class="slide"> |
611 <h1>まとめ</h1> | 660 <h1>まとめ</h1> |
612 | 661 |
613 | 662 |
614 <ul> | 663 <ul> |
615 <li>複数のTaskをまとめるTaskArrayを提案、実装した。</li> | 664 <li>複数のTaskをまとめるTaskArrayを提案、実装した。</li> |
616 <li>PPE側が忙しく、mailチェックが遅れる場合に効果的</li> | 665 <li>PPE側が忙しく、mailチェックが遅れる場合に効果がある</li> |
617 <li>PPE側にTaskがない場合は、mailチェックは間に合う</li> | 666 <li>PPE側にTaskがない場合は、mailチェックは間に合う</li> |
618 <li>WordCountはdma転送がネックになっている</li> | 667 <li>WordCountはdma転送がネックになっている</li> |
619 <li>マッピングの方法、Taskのスケジューリングを工夫して、dma転送時間を削減できる</li> | 668 <li>マッピングの方法、Taskのスケジューリングを工夫して、dma転送時間を削減できる</li> |
620 | 669 |
621 | 670 |