No Such Blog or Diary
きれいなプログラマが欲しい
- 2010-09-06 (Mon)
- プログラミング
d 次元ベクトル n 本の和を求めるプログラムを書け.つまり,s と x_i をベクトルとして s = \SUM_{i = 0}^{n-1} x_i を計算せよ.ただし,d ≪ n とする.なお,後で和を求める部分を並列化する予定なのでそれを考慮してね.
という注文に対して,次のプログラムが返ってきた.
for(int j = 0; j < d; j++) for(int i = 0; i < n; i++) s[j] += x[i * d + j];
何故こうなった?
元々の計算式を元にプログラムの構造を考えればループの順番が不自然だと思うのだけど… 何故にわざわざベクトルの次元のループを外側に持ってきだのだろうか? 構造的に不自然な上に配列 x の読み込みが連続でなくて時間的にも不利になると思うのだけど.そして二つのループのうち並列化すべきは i のループなわけで,それが内側にあると下手すりゃ同期が増えて無駄なのに.こんなのは非効率かつ非明確なプログラムであって百害あって一利なし.
なんていうことを考えずにプログラムを書くのが普通なのだろうか? よくわからん.とりあえずきれいなプログラムを書く事を最優先して欲しい.
閑話休題.
効率改善のためにとある仕組みを導入しようとしている場合,その仕組みが本当に効率を上げられるのかどうかを事前にちゃんと考えて欲しい.効率改悪の仕組みとか入れてもしょうがないし,効率改善が出来ず無駄にプログラムを汚くしてもしょうがないし.
どこかに泉はないのだろうか?
- Comments: 0
- TrackBack (Close): -
今回の旅まとめ(写真とった部分)
4ユーロのピザ(マルゲリータ).昼飯食べる場所を探していたら呼び止められたのでその店で.5ユーロ以下でピザを食べるのが目的だったので丁度よかった.シンプル故に美味い.
ペンネ・アラビアータ.いくらだったか忘れた.日本人数人で歩いていたら「日本の雑誌に載ったんだぜ,へへ」というおじさんに捕まってその店で.辛くて美味しい.
ホテルからの朝日とか.空港が近いためか飛行機雲が縦横無尽に走ってた気がする.ちなみに Best Western Regina Palace Terme というホテル.ある意味丁度良い位置にあった.
とりあえずNEX-5は旅のお供に丁度良いなぁという印象.重くないし,小さいし,縦パノラマ横向きで超広角で撮れるし,HDRできるし,バリアングル液晶だし.ただ,パンケーキは要らない子だと思う.標準ズームで丁度良い.超小型の望遠とかあるともっと良いかも.
- Comments: 0
- TrackBack (Close): -
洗濯する
- 2010-09-05 (Sun)
- 一般
無事帰国.安定したIPはすばらしい.
そしてとりあえず洗濯モード.あーめんどい.
それにしても東京は蒸し暑い…
- Comments: 0
- TrackBack (Close): -
帰る
- 2010-09-04 (Sat)
- 一般
電車でナポリからローマまで移動.Intercity 使って2時間.コンパートメントだったので,荷物を大量に抱えた現地の方々と同席になって荷物があふれるという… 高くてもユーロスターの方が余裕があって良いのではなかろうか? 速いし.
そしてローマのテルミニ駅から空港まではレオナルドエクスプレスで移動.夜10時とかでチケット売り場とかもタバッキも閉まっているっぽい状態で切符の購入が出来なかったが,結局車両に乗って車掌さんから買った.いつでもこの手法で良いのかどうかは分からない.罰金恐い.
んで空港に(弱)直結のヒルトンホテルに泊まった.値段的にもう泊まりたくない.
空港にて.せっかく通路側の席を予約で押さえておいたのに,とても親切なお姉さんがチェックイン機で別の席を撮り直してくれた.一緒に行動していた人間に連続した席を割り当てるという親切なのだろうけど.ありがた迷惑の極み.それはさておき,Wi-Fi が1時間3ユーロで結構安定して使えたのでありがたい.
フランクフルト空港.ジーンズのボタンが金属探知機に引っかかる&電子辞書に対して爆発物の検査を実行される.ローマからの飛行機が若干遅れて時間がない上にゲートは遠いしセキュリティチェックは厳しいしで結構ギリギリな時間だった.フランクフルトでの乗換は要注意かも.
- Comments: 0
- TrackBack (Close): -
最終日
- 2010-09-03 (Fri)
- 一般
昨日のディナー.数匹の猫がテーブルの間をウロチョロと.そしてそいつらを食べ物で釣り寄せようとする C. L. 先生… 全然釣れてなかったけど.そしてディナー終了後に踊りまくる人々の中でもとりわけ激しく踊っていた S. G. 先生… 途中退散だったらしいけど.とりあえず有名な先生の面白い行動が観測できた.
そして今日は雨… 移動が面倒.
それはさておき,multi-core/many-core の発表がやっぱり多い.分散環境でのタスクスケジューリングにデータ転送量を最小化する最適化問題を解くとかいうのは昔からあるのだけど,それをプロセッサのキャッシュ側にメモリ階層を上げてmany-coreの場合にも同じように最適化問題解いて最適なconfigを探そうねとか.歴史は繰り返す?
さて,旅費を抑えるためにこれから一気にローマまで移動予定.問題なく移動できるといいなぁ.
- Comments: 0
- TrackBack (Close): -
二日目:Exa-Flops の先は?
- 2010-09-02 (Thu)
- 一般
10^03 kilo 10^06 mega 10^09 giga 10^12 tera 10^15 peta 10^18 exa 10^21 zetta 10^24 yotta 10^27 xona 10^30 weka 10^33 vunda 10^36 uda 10^39 treda 10^42 sorta 10^45 rinta 10^48 quexa 10^51 pepta 10^54 ocha 10^57 nena 10^60 minga 10^63 luma
何か結構あるらしい.10年でひとつ進むという歴史になっているので,あと150年は大丈夫らしい.
- Comments: 0
- TrackBack (Close): -