Home > Archives > 2009年06月

2009年06月

CMOVLとかあったのね

コンパイルされたアセンブリ見てたら CMOVL とかいう命令が使われてた.conditional move if less の意味らしい.つーかこんな命令今まで気にしてなかったけど存在してたのね.

http://www.asmpedia.org/とかx86の命令が色々書いてあって便利そう.

さてどうしてか

同じように書いたコードが倍の速度差になる.テンプレート関数を手で展開したのと,元のままにしたものとで,なぜか手で展開したほうのが倍遅い….答えが同じなので同じ計算をしているはずなのだが,何か最適化の聞き具合が違うのだろうか? なぞだ.

手振れ補正がうるさい

もう少しで誕生日だからポチってしまえと入手したα900だが,手振れ補正が元気に働くせいか露出時間が長くなるとキュ~というかジーというか心臓に悪い音を発してくれる.三脚とかにくっつけっぱなしだと音がしない.手で持って0.5秒以上とかのシャッタースピードでうるさく鳴くのがよく分かる.

で,自分のだけがおかしいのか全部そうなのか確認するためにヨドバシに出かけて長時間露光してみたが,ヨドバシの個体は鳴かない.

そんで,SONYのサポセンに電話したら,「音は人によって感じ方が違うのでなんとも.気になるなら持ち込め.」と言われた.

なので,秋葉原のソニーサービスステーションに持ち込んだら,「仕様です.個体差です.」とのこと.ついでなので調整して音消せるかと聞いてみたけど駄目らしい.

結論:手振れ補正がうるさいのは仕様. (仕様だったら文章にして説明書に書いておいて欲しい.手振れ補正が○○くらいの音を出すが故障ではありませんとか.)

誕生日なので勢いで破を見に行ってきた

公開日が今日なのも何かの縁だろうと炎天下の中を池袋まで見に行ってきた.

記憶に残ったもの:365歩のマーチ,翼をください,今日の日はさようなら,ポカポカ,どう見ても時計,たこさんウィンナー,ビースト,ストロー,アーッ,Q

感想:ちゃんと終わるのか?コレ.

大筋はTV版と同じだけど大分外乱が大きくなってきているようで.誰がどういった存在なのか全くよく分からん.とりあえず次が来るまで2年は待つ.

ちなみに,午後一でシネマサンシャイン池袋に行ったのだけど席は満席っぽかった.オンラインでチケット取っといたのは正解らしい.新宿ミラノでもオンライン予約できると楽なんだがなぁ.

ようやく64bitでも頭よく最適化してくれるようになった

const だからコピーしまくっても最適化時にひとつになるだろう、とか思って手を抜いた実装になっていた部分をコピーが無くなる様に改善した.そしたら無駄なことしない最適化されたコードを吐いてくれるようになった.

……あれ? 手で最適化しただけの様に思えてきた…… ま,いっか.

const 万歳

色々付けまくったらコンパイラががんばって最適化してくれるようになった! でもなぜか32bitバイナリへのコンパイル時にしか頭良くない.同じコンパイラなのに(?)64bitへのコンパイルだと頭悪い子になってしまう… もう少し明示的に無駄を省くしかないか.

C++で忘れがちなこと

__LINE__ で行番号が取れる.これ使えば行ごとに一意な静的定数を作れる.便利かもしれない.

typeid と demangle による型情報の出力.Expression Templates で頑張っている時には必須.操作対象が型なので型を出力できないと色々困る.

#include <iostream>
#include <typeinfo>
#include <cxxabi.h>
 
template<typename T>
void showtype() {
  int status;
  std::cout << abi::__cxa_demangle(typeid(T).name(),0,0,&status) << std::endl;
}
template<typename T>
void showtypeof(const T&) {
  showtype<T>();
}

std::inner_product は色々計算できる.

emacs の tramp で multi-hop に sshx を

デフォルトだと multi のときに sshx が使えない.このせいで接続がうまくいかなかったので tramp-multi-connection-function-alist に sshx を追加するように .emacs に以下を追記.

(require 'tramp)
(add-to-list
 'tramp-multi-connection-function-alist
 '("sshx" tramp-multi-connect-rlogin "ssh -t -t %h -l %u /bin/sh%n"))

これでようやく

/multi:sshx:user1@host1:sshx:user2@host1:~/path/to/file

が通るようになった&ファイル編集が出きるようになった.

ちなみに,新しいtrampだとmultiがサポートされておらず,tramp-default-proxies-alist に (HOST USER PROXY) というエントリを追加する.こいつは,USER@HOST にあるファイルにアクセスするには PROXY を踏み台にしろということを意味する.なので,上の例だと

(add-to-list 'tramp-default-proxies-alist
             '("host1" "user2" "/sshx:user1@host1:"))

とすりゃいい.多分.

ほっともっとのおにぎりサンド北海道コロッケ(180円)

今日発売とかいうので食べてみた.

感想:コロッケを普通に2個食べるほうが幸せ.

やっぱコロッケを炭水化物で包むってのは負けなんじゃないかと.コロッケもメインは炭水化物だし.

Expression Templatesを説明するには

「パーサはC++自身のパーサで,semantic value が式の抽象構文木で,そいつが template の型変数にエンコードされていて,抽象構文木を構築する sematic action を型上の演算で実現したんだよ」と言えばいいのかな.あとは解析した式の外側で構文木に従った計算を展開すると.

佐川は嫌いだ(毎度のごとく)

前の日の15時に広島から送ったのが,次の日の夕方に東京に届かないなんて… 夜には届いたけど.経験上,佐川で送られてくると,クロネコヤマトやゆうパックと比べて時間帯が二つくらい遅れるみたい.嫌いだ.

とりあえず誕生日も近いことだし

という理由付けをしてポチッた.

いい手が思い浮かばない

C++で静的な定数を順番に生成する方法が思いつかない.#define を使ったマクロの能力がいまひとつなんだよなぁ.繰り返しプリプロセッサ掛けるなら実現可能なのだけど.なかなか難しい.

最近のVMware Playerは

VM画面の下端とか右端に行くとカーソルがVM外に戻るのね.こいつのせいでVMに戻るのにしばしば失敗する.クリックして戻るときにマウスを若干下に動かしてしまうようで,VMにカーソルが戻った→下端にカーソルがいる状態→若干下に動いてカーソルはずれた,というのを繰り返す.VMware Toolsとか入れるとシームレスになるのだろうか?

やる気が出ないので

別のことをしよう.一週間くらい.

海外からの督促状とか

二年前の国際会議の参加費払ってねぇだろゴラァさっさと払えこのヤロウ,という書留が来たのが先月.で,オンライン支払いのレシートが乗ってるメールを添付して,払ったはずだが間違いじゃないのかと問い合わせた.結果,数日後に「システムが狂ってたみたい,御免ね」というメールが来た.何をどうシステムがバグってくれたんだ?

熱ぃ

面倒なのでたまにはおにぎりでも作るかとか思い立ったのだが… 炊き立てご飯でおにぎりを作るのは難しい.熱すぎてうまく握れなかった.根性が足りないのか工夫が足りないのか?

とりあえず中身なしで塩かけただけが美味い.

停電とか

夜中に大学で停電があったらしいので様子を見に行ったら本当に真っ暗だった.普段なら点いている建物周りの電灯も全滅.電気の点いてない学校の怖さを久々に味わえた.

つーか家にプリンタ無いから印刷しに研究室に行ったのに印刷できんかったのが痛い… 

最近日を浴び出ないような

明るいと思考が発散するので夜のほうが頭が回りやすいのだが… 明日は日を浴びに散歩に出よう.不健康すぎる.

鈍器

予想通りホライゾンの二巻(上)は900ページちょっとだった.カバーぴちぴち.重い.普通の3倍.

考えれば考えるほど

普段何気なく使われている言葉の意味(定義)がわからなくなってくる.如何様にも解釈できるコメントって意味無いよね?

自転車横断帯があるなら自転車はそれを通らなければならない

特に交差点に自転車横断帯がある場合には車道を直進せずに自転車横断帯に行かないと駄目らしい.

以下,道路交通法からの引用.

(自転車の横断の方法) 第六十三条の六  自転車は、道路を横断しようとするときは、自転車横断帯がある場所の付近においては、その自転車横断帯によつて道路を横断しなければならない。
(交差点における自転車の通行方法) 第六十三条の七  自転車は、前条に規定するもののほか、交差点を通行しようとする場合において、当該交差点又はその付近に自転車横断帯があるときは、第十七条第四項並びに第三十四条第一項及び第三項の規定にかかわらず、当該自転車横断帯を進行しなければならない。 2  普通自転車は、交差点又はその手前の直近において、当該交差点への進入の禁止を表示する道路標示があるときは、当該道路標示を越えて当該交差点に入つてはならない。

眠れないときの対処法

寝ない

ゼリーにストローはやめれ

セブンイレブンでナタデココとブドウの入ったゼリーを買った.そしたらストローついてきた.スプーンはもちろん無い.

100%ゼリーのみであればストローでも文句は無いのだが… ナタデココをストローで吸うのはちと無理ではなかろうか? せめて「ストローはお付けしますか?」と聞いて欲しかった.

バラバラなものはバラバラ

ふむ,どうやったらこの自明な理を捻じ曲げられるのだろうか?

予定は未定

だるくてやる気無し.来週こそは…

足つったw

寝ている最中に足つった.笑っていられるい痛さではないのだけど.うーん,体硬くてつま先持ちながらひざを伸ばすのが一苦労.

そーいえば

発熱しているものは建物に入るなとか言う張り紙があったよーな.おとなしくしていよう.

負け

向こうのコメントの意図が読めていない気がする(こちらサイド全員が).場を読まずに何が言いたいんだと問い詰めたほうが時間の有効利用な気がする….

セクションタイトルが長すぎて…

section headng とページ番号が重なってしまう.とりあえず短くするかheading用に短いのを割り当てるかせんと.でもTOCは長いままが良いからどーのこーのと.sectionの定義をしなおさないと駄目かな.

Home > Archives > 2009年06月

Search
Feeds

Page Top