#nomenubar *2006年度第13回ゼミ(2006年09月12日)資料 [#oe59bab2] CENTER:[[09月07日(第2回中間発表)>Lab/2006/第2回中間発表]] << 09月12日(ゼミ#15) >> [[09月21日(ゼミ#16)>Lab/2006/0921]] CENTER:[[研究関係Wikiトップへ戻る>Lab]] ※木曜に開催できないため今回のみ変則開催 #contents **MBCF関係のシステムコールがうまく使えない件について [#g7f88e45] ***9月10日 [#ee1dc5c5] -send_taskqueが含まれるサンプルソース:beat.c --read_taskqueは含まれない -read_taskqueが含まれるサンプルソース:pqdisp.c --send_taskqueは含まれない --受信した内容を表示するためだけのプログラム? ***9月11日 [#v797b844] -コンパイルオプションに-sssを含めるかどうか --send_taskqueは上記に関係なく動くときと動かないときがある --read_taskqueは上記に関係なく全く動かない -send_taskque時、pstartで開始すると常に同じtaskidを示している? --taskid: 457342976 --pstartで指定するタスク名によってidが固定されてる模様 beat.cについて -usage: beat [<task> [<text> [<interval>]]] -str_to_nameはタスク名をID番号に、name_to_strはID番号をタスク名に pqdisp.cについて -/ssspc/elf、/ssspc/sampleどちらのバイナリもread_taskque直前でストップ -自分でコンパイルしても同様 mbtest.cとmbtestd.cを使って一応send_taskqueとread_taskqueの送受信に成功 -オリジナルlibcかどうか(-sssオプションを付けるか)は関係なかった **9月12日 [#sdf26a34] 自分は付け焼き刃的にその場で思ったことをどんどん取り込もうとしてしまう性格のため、当初の目的を見失いがちと考え、一度「何を設計・実装しようとしているのか」を考え直すことにした。 ***ロードバランサ [#d0e44f7d] 「ロードバランサ(負荷分散装置)」とは、「外部ネットワークからの要求を一元的に管理し、同等の機能を持つ複数のサーバに要求を転送する装置」(http://e-words.jp/w/E383ADE383BCE38389E38390E383A9E383B3E382B5.html)。つまりはやってきた要求(実行前のタスク)を複数のノードに振り分ける装置。 これに対し、今検討しているのは「複数のノード上で現在実行中のタスクを再配置することによってノード間の負荷を均等にする」装置。つまり一般的に言われる「ロードバランサ」とは思想が異なるのではないか? まとめると以下のようになる。 > 本ロードバランサは、「現在実行中のタスクを再配置する」ことを主眼に置いている。一般的なロードバランサは「これから実行しようとしているタスクを適切なノードに配置して実行させる」ことを目的としており、実行中のタスクには関与しない。 ***スケジューラ [#p15d6e94] そもそも当初は「タスクスケジューラ」と呼称していたはず。 タスクスケジューラとは?→Windows9x系OSに搭載されている、指定時間に指定プログラムを起動してくれるツール。 スケジューリングとは - Wikipedia(http://ja.wikipedia.org/wiki/%E3%82%B9%E3%82%B1%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AA%E3%83%B3%E3%82%B0)によると、「スケジューリング」とは「優先度つきキューで優先度を割り当てられたプロセス(またはタスク)を制御する手法を指す。この優先度割り当てを行うソフトウェアをスケジューラと呼ぶ。」とのこと。 「マルチプロセッサにおけるスケジューリング」の項が参考になる。私が現在やろうとしてるのは「プロセッサ単位」(というか「ノード単位」)のスケジューリングに近い。 ***SSS-PCの(並列分散処理OSとしての)方向性 [#s7572538] そもそも、SSS-PCは何を目標にしているのか?どういった並列処理プログラムを動かすことを目的に開発しているのだろうか?特定の方向性があるように見えない。 -ゼミ資料ではSSS-PCをけなしてもしょうがないので前向きな内容を掲載する。 **関連ページ [#ra113390] -[[Lab]]