タグ

2012年5月4日のブックマーク (3件)

  • zshでサブコマンドとファイル名を手抜き補完する - Glide Note

    hoge[tab]でサブコマンドが補完され、 サブコマンドの後はファイル、ディレクトリが補完されるように。 サブコマンドとファイル名を補完する 下記を.zshrcに記載してexec $SHELL やっていることは compdefで_hogecmdという補完用functionを定義し、hogeコマンドを実行したときに呼び出されるように。 function内のcmdsで補完したいサブコマンドを列挙 CURRENT == 2でhogeのあとに補完されるのはサブコマンドだけと指定 _describeで補完候補で表示されるときにsubcommandというグループになるようにしている サブコマンドのあとは_filesでファイルとディレクトリが補完されるように 参考になるサイト zshの補完関数の書き方がまとまっているところがほとんど無いので下記が非常参考になります。 zsh補完関数を自作すると便利 -

    tarao
    tarao 2012/05/04
  • CPU とキャッシュのはなし - graphics.hatenablog.com

    別にグラフィックスに限ったことじゃないし、そもそも論文とか全然関係ないけど。GPU 周りでもたまに話題になるし、自分でもたまにわけわからんくなるから整理しとく。 メインメモリは遅い CPU からメインメモリにデータを読みに行く場合、これはとにかく遅い。例えばレジスタにあるデータを読みに行く場合と比べると、だいたい数倍から数100倍の遅さ。ヤバいからなんとかしよう。もっと早くアクセスできる場所にデータおいとこう。 キャッシュライン CPU がメインメモリからデータを読み出すとき、必ず小さなメモリチャンクをキャッシュ上にロードする。ロード単位はプロセッサによるけど、だいたい 8 ~ 512 バイト。このロード単位をキャッシュラインと呼ぶ。 アクセス対象のデータが既にキャッシュに載ってる場合は、メインメモリじゃなくてキャッシュを読みに行く。ない場合はメインメモリにアクセスするけど、そのデータはも

    CPU とキャッシュのはなし - graphics.hatenablog.com
  • JavaScriptの顔認識ライブラリをチューニングしたら実用レベルになったという話 (Kanasansoft Web Lab.)

    ただ、WebRTCで顔認識させようとすると遅くてしかたがなかった。 最初は速いこともあるが、10回ぐらい認識をさせるとすぐに遅くなる。 とりあえず、デモ。 そこで、チューニングをしてみることにした。 まず、JavaScriptの定番の高速化を試してみた。 例えば、正の数で使える「Math.floor(x)」を「(x | 0)」に、整数で使える「x * Math.pow(2, y)」を「x << y」にする等。 これで、10~30%高速化できた。 次に、遅くなっている部分を調べたら、Web Workersで分散するための仕組みが遅くなる原因だとわかった。 これは、Web Workersを使わない場合にも影響が出ていた。 じゃあ、Web Workersを使えば速くなるのかといえばその逆で、20倍遅くなっていた。 詳しくは調べてないけど、多分Workerスレッドに処理データを渡す時にJSON化が