2013/10/27
2013/10/25
研究室にいるめんどくさい人
私よりこの分野に6年ぐらい長くいるのに
- この分野の専門知識がない (数学できない: テンソルすら理解してない)
- コード読めない, 書けない. というかbatch shellすら書けない. 商用のGUIに頼りっぱなし.
- 論文投稿しても過去3回ぐらいrejectされているのに方法を再考しない
- 一番嫌なのは, コード, shell書いてとかお願いしてくる. 結構ガチな量
2013/10/17
Windows Surface
毎度毎度パソコンネタだが
windowsのsurfaceに次はしようかと思っている.
2014年の4月に消費税が上がるそうなのでぜひその前に色々生活用品を揃えておきたい. もちろん新しいマシンを買うタイミングもそこを狙っている.
先週の日曜日にジョーシンまで行ってきた. ちなみに上新電機には生まれて初めて行った.
地元が北関東なのでヤマダvsコジマvsK'sの激戦区. 関西系のお店はなかった.
でも取り扱っていないと言われた.
翌々調べてみたら, surfaceはセキュリティが硬いらしくlinuxがインストールできないらしい.
Nexusあたりにするかな ?
2013/10/12
カナダ料理 プーティン
2013/10/09
博士(仮)の職探し
どこがの大学のpostdocにでもなれないかと探しております.
日本のは今月の頭に結構締め切りが多くて, 逃しました.
イギリスとかアメリカがやっぱり英語圏なので楽なんだろう. あんまり北の方は寒いので嫌です.
某北欧の大学とイギリスの3校あたり+日本の某研究機関を狙っているが受かるんだろうか? 大した研究やってこなかったし.
2013/10/05
2013/10/04
2013/10/03
論文投稿
とあるオープンアクセスのジャーナルに投稿したら。
なぜかReviwerではなくeditorと戦うはめになった。
向こうのバージョン管理が甘いせいで、最終版をuploadしていないのに編集者がなぜか持っているのだけれど ? ドラフト載せられたらどうしよう、黒歴史+完全に仕事探しに響いてくるのだが。 この出版社に投げるのはもうやめよう。生活週間を改める
2013/10/02
discontinous galerkin 不連続ガラーキン法
2013/10/01
高速な二次元ループの回し方
1. 普通に二次元配列回すなら
for( j=0; j<M; j++ ){for( i=0; i<N; i++ ){
arr[i][j] = i+j*n;
}
}
2. 一次元配列を使う, 連続でメモリにアクセスできるので早い
for( j=0; j<M; j++ ){for( i=0; i<N; i++ ){
arr[i+j*n] = i+j*n;
}
}
3. 内側のループを展開, 計算コストの高い掛け算を減らしたので, 更に早いはずだ
for( j=0, offset=0; j<M; j++, offset+=N ){arr[j+offset] = j+offset;
}
こうするともうちょっと早くなった記憶があるが, 確認はしていない.
for( j=0, offset=0; j<M; j++, offset+=N ){
*(arr+j+offset) = j+offset;
}
私は三番目のでほとんどの場合書いている. SIMD命令を使えば更に早くなるがコンパイラーに頼る人なので, 省略.
この書き方の問題は2つだ, 共同開発の場合読めない人が結構多い, 同僚に変態コーダーと呼ばれる.
変態なので, 3次元のループだって一次元にしてどんどん回しちゃいます.
for( j=0; j<L; k++ ){
for( j=0; j<M; j++ ){
for( i=0; i<N; i++ ){
arr[i][j][k] = i+j*n+k*n*m;
}
}
}
こう書き換える
L = M*N;
for( i=0, offset_j=0, offset_k=0; j<M; j++, offset_j+=N, offset_k+=L ){
arr[i+offset_j+offset_k] = j+offset_j+offset_k;
}
登録:
投稿 (Atom)