git svnとgitを併用する方法のメモ
git svnを以下のような構成で使っていた時に、git svnのリモートトラッキングブランチのpointerがtrunkに代わってしまい、いつのまにかブランチにcommitしたつもりのものがtrunkにcommitされるという事があり、困りました。

gitから.gitにpushしたものを git-svnからpullしたタイミングで発生するようです。
解決策としては、git-svnでgit pullをせずに、
1 % git fetch remote-name 2 % git merge --no-ff remote-nam e/branch-n ame 3 % git svn dcommit
でok. アクシデンシャルなdcommitを防ぐには、--dry-runが便利です。
git-svnを使っていて、git svn dommitするときに、
掲題のようなエラーメッセージが出た場合、リモートリポジトリとローカルリポジトリのトラッキングブランチの同期が取れていない事が原因かもしれません。
例えば、SVNリポジトリ上で削除されているブランチが、ローカルのgitリポジトリに残ってしまっている場合、以下のようにリモートトラッキングブランチを削除する事で問題を解決できる可能性があります。
1 % git branch -D -r <branch name>
SConsでテストを実行する
SConsを使ってscons testでテストを実行するには、
SConstruct
1 import os, sys 2 Import('env') 3 env = env.Clone() 4 5 test = env.Program('test', Glob('*.cpp'), LIBS='gtest') 6 test_alias = Alias('test', [test], test[0].abspath) 7 AlwaysBuil d(test_alias )
See Also
PLY形式からMSH形式への変換
PLY形式のモデルデータをMSH形式に変換する方法のメモ。
MT Package の FORM2FORMコンバータを使います。
このページの下のほう
から mtjade.tar
1 % ./form2form foo.ply foo.msh
以下の行をコメントアウトしておくと、indexedではないmshが生成されます。
1 #define INDEXED
MSH形式の仕様は こんな感じ です。
Apache2+Passengerの調子が悪い
しばらく前から安定性が悪くなってきたのですが、ここに来て頻繁にPassengerのプロセスが暴走するようになってきました。
- ruby 1.8.7 (2009-04-08
patchlevel 160) [i686-linux ] - Passengerのバージョンは2.2.8
- Rails 2.3.5
プログラムやシステム構成はここしばらくほとんど変えておらず、トラフィックも大きな変動はないので、うわさのEC2のサービス劣化の影響でしょうか。
Formulaで数式のサイズを指定する方法
Formulaを使って数式の画像を生成するときに、数式のサイズを指定する場合、以下のようにするとうまくいきます。
1 \mbox{\Huge $\displaystyle 2 I_j=\int_\Omega f_j(\bar{x})\,d\mu(\bar{x}) 3 $}
出力結果は以下の通り。
CUDAのエラーコード
CUresultの値一覧表です。
1 CUDA_SUCCESS = 0, ///< No errors 2 CUDA_ERROR _INVALID_V ALUE = 1, ///< Invalid value 3 CUDA_ERROR _OUT_OF_ME MORY = 2, ///< Out of memory 4 CUDA_ERROR _NOT_INITI ALIZED = 3, ///< Driver not initialize d 5 CUDA_ERROR _DEINITIAL IZED = 4, ///< Driver deinitiali zed 6 7 CUDA_ERROR _NO_DEVICE = 100, ///< No CUDA-capab le device available 8 CUDA_ERROR _INVALID_D EVICE = 101, ///< Invalid device 9 CUDA_ERROR _INVALID_I MAGE = 200, ///< Invalid kernel image 10 CUDA_ERROR _INVALID_C ONTEXT = 201, ///< Invalid context 11 CUDA_ERROR _CONTEXT_A LREADY_CUR RENT = 202, ///< Context already current 12 CUDA_ERROR _MAP_FAILE D = 205, ///< Map failed 13 CUDA_ERROR _UNMAP_FAI LED = 206, ///< Unmap failed 14 CUDA_ERROR _ARRAY_IS_ MAPPED = 207, ///< Array is mapped 15 CUDA_ERROR _ALREADY_M APPED = 208, ///< Already mapped 16 CUDA_ERROR _NO_BINARY _FOR_GPU = 209, ///< No binary for GPU 17 CUDA_ERROR _ALREADY_A CQUIRED = 210, ///< Already acquired 18 CUDA_ERROR _NOT_MAPPE D = 211, ///< Not mapped 19 CUDA_ERROR _INVALID_S OURCE = 300, ///< Invalid source 20 CUDA_ERROR _FILE_NOT_ FOUND = 301, ///< File not found 21 22 CUDA_ERROR _INVALID_H ANDLE = 400, ///< Invalid handle 23 24 CUDA_ERROR _NOT_FOUND = 500, ///< Not found 25 26 CUDA_ERROR _NOT_READY = 600, ///< CUDA not ready 27 28 CUDA_ERROR _LAUNCH_FA ILED = 700, ///< Launch failed 29 CUDA_ERROR _LAUNCH_OU T_OF_RESOU RCES = 701, ///< Launch exceeded resources 30 CUDA_ERROR _LAUNCH_TI MEOUT = 702, ///< Launch exceeded timeout 31 CUDA_ERROR _LAUNCH_IN COMPATIBLE _TEXTURING = 703, ///< Launch with incompatib le texturing 32 33 CUDA_ERROR _UNKNOWN = 999 ///< Unknown error
Linux環境でNVIDIAのCUDA/OpenC
1 NV_COMPUTE_SDK_PATH= "/path/to/N VIDIA_GPU_ Computing_ SDK" 2 SDK_INSTAL L_PATH="/path/to/N VIDIA_GPU_ Computing_ SDK/C"
まだリリースされて間もないせいか、 NVIDIAのOpenCL SDKを使っていると不可解なエラーに遭遇します。 掲題のようなエラーメッセージを出すのもその一例ですが、 以下のようなコード(一部抜粋)でエラーがでます。
1 float4 x = sphere->c; 2 dg->t = x.x;
しかし以下のように記述すると大丈夫です。
1 float x = sphere->c.x; 2 dg->t = x;
OpenCLコンパイラが生成したptxコードの中に'selp'というのが入るような場合に問題が発生するようです。
NVIDIAのOpenCL SDKの場合、*.clファイルをCLコンパイラがコンパイルして、ptxという中間言語に変換します。さらに、ptxをptxparse(PLANGというパッケージの一部らしい)が解析してllvmのbcに変換します。 このケースでは、CLコンパイラが吐き出すコードと、ptxparse側の認識が一致していない感じです。 とりあえず、バグが直るまでコンパイラの気持ちになって回避するしかありません。
- BACK
- NEXT
%5C,d%5Cmu(%5Cbar%7Bx%7D)%0A$%7D.png)