Mercurial > hg > Papers > 2010 > program-symposium
view cerium-rl.ind @ 0:a9fda18657b3 default tip
add
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 16 Dec 2009 10:05:04 +0900 |
parents | |
children |
line wrap: on
line source
-title: Cerium Project --Double Linked TaskQueue 実装してみましたが、word count あたりでは、あまり効果はないらしい。 --HTask と ListData 128byte に align してない。ListData (DMA list の配列)は毎回送っている。 なので、一緒に送ってみたけど、速度的には関係ないらしい。 少なくとも、必要なサイズに抑えるべき。 ListData ではない read/write の Task が廃止されているのはおかしい。 (大半は、そういうもののはず) --Write DMA Rendering Engine では使ってないらしい。 Object の破壊時に、Write DMA 待ちするとか言うコードはわかってない。 SPU Task の中で、outData を指定するのが正しい。 Task の中では 手動DMAを許さない方針で。 --ReNew Task 複雑すぎ。要書き直し。 TaskList を受け取った後、TaskQueue に書き換えて、あとはTaskQueue で処理すれば良い。 --Task と HTask PPU側のTaskと、SPU側のTaskで出来ることが違うのはおかしい。 SPU側からも、PPU側のTaskが生成できた方が良い。 TaskManager から create するのと、ShcedTask から create する 二つの方方法がある。 --Post function 引数に、SchedTask を渡せば、Task と同じ形式になる。そちらの方が良い。 --Application Mac OS X は簡単に分離してみました。 Cell 側は、SPU Task id を調整する必要がある。 Embeded binary にした方が扱いが楽。Path の問題があるので。 hoge.app の下に、spu/task/xmlfile/binary と置くのが良いのでは。 だったら、spu-main でも良いけど。 view.cc を直接変更するのは、やめて下さい。 MainLoop を自分で定義して、それを使う。 --Fifo の方が速い どこが遅いのかを計測しないと。 Word count だけの問題か? --Idle Time mail blocking の idle time を計ってない? --Memory Model MemList で全体を統一するのが良いのではないか? LRU, Hash, Queue として使う。これが、Code Segment に対応する Data Segment になる。 Copying を行ない、自動的な GC (Garbage Collection) になる。 MemList は固定長だが、不定長も許して良い。 read/write buf には、MemList を直接指定する