2007年11月10日から2007年11月6日までの日記を表示中
2007年11月10日 (土)
■OpenBlockSでntpd
PS3の時計が超早く進むので,OpenBlockSでntpdを上げて時計を合わせるようにしてみました.ああ,時計が合っているというだけで落ち着くのが何とも不思議です.ていうかずれすぎだろPS3の時計.ゲームOSだとこの辺平気なのか?
■Cell向けクロスコンパイル環境
ヒタヒタさんに負けじと,Cell用のクロスコンパイル環境 (ppu-binutils,ppu-gcc,spu-binutils, spu-gcc, spu-newlib, libspe2) をソースからビルドしてみました. /opt/cell とかに入らずに,/usr/local/cross/cell-linux 以下に綺麗に入れられて超 (゜Д゜)ウマー
基本的に ここからSRPMを落としてきて,展開してソースとパッチとspecファイルを取り出して,後はspecファイルの中を見ながらパスを読み替えてビルドしていけばできあがりなんですが,spu-gccを作るところで,spu-gcc と spu-newlib が相互に依存しててちょっと戸惑いました.ここは過去の経験を元に
- spu-newlib のヘッダをxgccが見えるところに展開しておく
- spu-gcc のCコンパイラだけ作ってインストールする
- spu-newlib を作ってインストールする
- spu-gcc をC・C++の両方を有効にして作り直す
とやったら回避できました.これが正解かどうかは知らんけど,まあ動いてます.
あとlibspe2をmakeする際に 32bit版のライブラリしかできなくて軽くはまりました.こっちは普通にMakefileを書き直すことで回避.
いやー,やっぱspecファイルがあるのはいいですねぇ.OpenZaurusのクロス環境を手探りで作ったときに比べて10倍くらい簡単な感じです.ていうか今思うとよくあんな不毛なことやったな・・・.
気になる速度比較ですが,PS3でやるとこんな感じ.
% time make spu-gcc -Wall -Winline -O3 -funroll-loops -falign-functions=16 \ -falign-labels=8 -falign-jumps=16 --param max-inline-insns-single=32000 \ --param large-function-growth=8000 --param inline-unit-growth=600 -c spe.c spu-gcc -o celltripper-spu spe.o make 35.47s user 0.78s system 99% cpu 36.251 total
T60 (Core2Duo T7200 2.0GHz・メモリ2G) でやるとこんな感じ.
% time make spu-gcc -Wall -Winline -O3 -funroll-loops -falign-functions=16 \ -falign-labels=8 -falign-jumps=16 --param max-inline-insns-single=32000 \ --param large-function-growth=8000 --param inline-unit-growth=600 -c spe.c spu-gcc -o celltripper-spu spe.o nice -n 10 make 7.20s user 0.08s system 99% cpu 7.292 total
やっぱPPE単体だと(ry
[コメントを書く]
■無双5
明日発売じゃーん.ムービー見てみたらちょっと欲しくなったけど,なんで呂布と趙雲が闘ってんだこれ.
[コメントを書く]
2007年11月 9日 (金)
■飲み
突発的に飲みが.というわけで今日は何も書くことがないっす.
[コメントを書く]
2007年11月 8日 (木)
■kernel-2.6.22.12
TuxOnIceを3.0-rc2に上げるついでにカーネルを2.6.22.12に上げました.・・・げ,GCC-4.1.2でコンパイルしてしまった・・・.カーネルは3.4系と決めてあったのにぃ.やりなおしー.
[コメントを書く]
■バンの方
「バン」は角の丸いファミコンソフト出してたあの「バン」に決まってんだろうが!ということを今日たまたまhyousuke氏に会ったので説明してきました.久々に会って話したのがそれだけってどうなんだろうなw
そういえば聞くところによると,バンの方はセガじゃなくてナムコで本当によかったね,という感じだったらしいですが,ナムコの方はどうなんだろうね.
[コメントを書く]
2007年11月 7日 (水)
■PS3でトリップ探索
何か寝付けないんで色々試してたらバグ発見.「\」が混じると答えが合わないぞ・・・と思ったらsalt部分の処理間違えてた(´・ω・`).ちなみに,現在コア1個で 1.5Mトリップ/秒.1.66Mくらいまで行きたいところですが,とりあえず今思いつく限りのことは全部試してみた感じでそろそろ苦しいかも・・・.先に6コアで動かすことを考えよう.
[コメントを書く]
2007年11月 6日 (火)
■TuxOnIce
hibernate問題は解決したものの,何かハイバネに失敗しまくりです.いや,単に失敗して「いや〜失敗しちゃいましたよ」とXに戻ってくるなら全然OKなんすけど,途中でカーネルパニックおこして死ぬのはマジで勘弁していただきたいところ・・・.あ,3.0-rc2が出ていますねぇ.
[コメントを書く]
■PS3でトリップ探索
せっかくだから nonstd.c を取り込んでみることにしました.単にEmacsでごりごり置換するだけなんですが.ばかおめXNOR命令がねーからそんなの意味ねーよ.・・・え?spu_eqvでいいの?なんだよー早く言えよー.SIMD命令2個つかっちゃったじゃねーかよー.
・・・なんてことはなくて,普通に最初からspu_eqv使って書きましたが.で,置換した結果,1.4Mトリップ/秒を超えました (計算を間違えていなければの話ですが).こうかはてきめんだ!
しかし,気がつけばコンパイルが激遅に.そろそろクロス環境を真面目に整えることを検討したほうが良さそうね・・・
[コメントを書く]
2007年11月10日から2007年11月6日までの日記を表示中
[コメントを書く]