Back to Peppermint.jp
2011-11-24
Js_of_ocamlでaobench
なんかAO Benchが続く。
画像処理をブラウザでやりたかったけれど、JavaScriptが1000行近くなったあたりで面倒になってきたので、http://d.hatena.ne.jp/camlspotter/20111015/1318664763を見てそのうち試そうと思ってたJs_of_ocamlを試してみた。
とりあえずざっくり実行速度見てみるために、http://d.hatena.ne.jp/h013/20110625/1309114394のaobenchを移植。
といっても基本的に変更なしでCanvas描画を付け加えるだけで動いた。つまらん。
プロファイルとって見ると、Random.floatがOCamlでの実装をJSにコンパイルしたものになって重い様子なのでMath.randomを呼ぶように変更した。
let rnd f:float = let r = Js.Unsafe.meth_call (Js.Unsafe.variable "Math") "random" [||] in r *. f
調子に乗って画像のfloat配列もFloat32Arrayに置き換えてみたけれど、AOのループの外でしかアクセスしないせいかあんまり影響なかった。
後は、普通にレイトレの処理に時間を食ってるようだ。vdotはインライン展開してくれてもいい気がするけど、そのままでもtracing treeで展開されるんだっけ。
トラックバック - http://d.hatena.ne.jp/MATSUZAKI/20111124/1322147757
リンク元
- 335 http://www.google.co.jp/url?sa=t&rct=j&q=android emacs&source=web&cd=1&ved=0CB4QFjAA&url=http://d.hatena.ne.jp/MATSUZAKI/20101104/1288882148&ei=0hbPTqWvE-3nmAW4hMGPDQ&usg=AFQjCNFGrlpbwxcy22xpqOsAZGYOK3Qw8w
- 235 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCYQFjAA&url=http://d.hatena.ne.jp/MATSUZAKI/20101104/1288882148&ei=B88wT8GCBYvNmAXEqY29BQ&usg=AFQjCNFGrlpbwxcy22xpqOsAZGYOK3Qw8w&sig2=3vM5Q63F1GgaA1z6_qRydg
- 222 http://peppermint.jp/
- 130 http://www.google.co.jp/url?sa=t&rct=j&q=android+emacs&source=web&cd=1&ved=0CCAQFjAA&url=http://d.hatena.ne.jp/MATSUZAKI/20101104/1288882148&ei=eNHOTq6TOouImQX7vJihDQ&usg=AFQjCNFGrlpbwxcy22xpqOsAZGYOK3Qw8w&sig2=3TDlvwhirbc9D1-oLy5HfA
- 116 http://www.google.co.jp/url?sa=t&rct=j&q=emacs android&source=web&cd=2&ved=0CCUQFjAB&url=http://d.hatena.ne.jp/MATSUZAKI/20101104/1288882148&ei=_qnVTpCrC47KmQW_t4FT&usg=AFQjCNFGrlpbwxcy22xpqOsAZGYOK3Qw8w
- 70 http://hitoriblog.com/?p=1649
- 50 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=5&cts=1331108861198&ved=0CE8QFjAE&url=http://d.hatena.ne.jp/MATSUZAKI/20111124/1322147757&ei=8BtXT4u_MIHUmAX7xbC0Dw&usg=AFQjCNGRfKo2VYvLWyQpocLo79vrBsJPXw&sig2=zusud0EiilOn6Yy-0yaK
- 42 http://www.google.co.jp/url?sa=t&rct=j&q=emacs+android&source=web&cd=2&ved=0CCYQFjAB&url=http://d.hatena.ne.jp/MATSUZAKI/20101104/1288882148&ei=uALSTsfzLojZmAXMkqzJDQ&usg=AFQjCNFGrlpbwxcy22xpqOsAZGYOK3Qw8w&sig2=65l9R6V8ffjNZvsD67PE9w
- 36 http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CB0QFjAA&url=http://d.hatena.ne.jp/MATSUZAKI/20101104/1288882148&ei=zkXQTrnDCsTImQW26vzWDQ&usg=AFQjCNFGrlpbwxcy22xpqOsAZGYOK3Qw8w&sig2=UrcUsVfZx9h6PGgIDwZn4g
- 29 http://www.google.co.jp/url?sa=t&rct=j&q=llvm java&source=web&cd=2&ved=0CCQQFjAB&url=http://d.hatena.ne.jp/MATSUZAKI/20080907/1220790524&ei=vC7PTv31DIbfmAWHtvXWDQ&usg=AFQjCNGsrWQ3IqQUDcR4ykfLkgrJjzVekQ&sig2=Kbyks-NwdjSQz3qPd6uuDQ