新しいCUDA Toolkit環境で、昔のCUDA 6.5とかを使ったVisual Studioのプロジェクトを開こうとすると、エラーが起きて読み込めない。古い環境をピンポイントで指定している部分がProjectファイルに含まれているためらしい。
そこで、vcxprojファイルを直接エディター(emacsとか)で開いてみると、XMLタグのImportタグに、
CUDA 6.5.props
などと書いてある部分がある。そこを、6.5->9.1と書き換えてやる。それだけでちゃんと読み込めるようになる。また、環境変数
CUDA_PATH_6.5
とかバージョンを決めているところを、
CUDA_PATH
と変えてやるとよいようだ。
ちなみに、2017年12月19日現在の最新のVisual Studio 2017 (15.5.2かな)とCUDA Toolkit 9.1は互換性がないので注意。古い2017なら動くらしいが、どうもCUDAのVSのバージョンチェックでエラーが起きるようだ。残念なことに古いVS 2017は手に入れられないようなので、バージョンアップには注意が必要だ。
2017年12月20日水曜日
2017年12月15日金曜日
HPCの未来
昔、スーパーコンピュータと言われていたトップエンドのコンピュータは、特別にあしらえたベクトルプロセッサを搭載し、べらぼうなスピードで計算を実行できた。
ここで培われた技術がコンシューマレベルのパソコン用CPUに下ろされ、ボトムエンドコンピュータが桁上げされていった。
そしてスパコンがスパコンたる牙城だったCPUとメモリのバス速度も速くなって、もはやカスタムCPUの存在意義は無くなり、並列コンピュータへの道が加速していった。
そして、並列の粒度を小さくして、膨大な数のスレッドを大量に処理するGPUが注目され、今度は、GPUではなく同じような能力を持つチップが開発され、注目を集めた。
光速が変わりようが無いので、CPUを小さくすることで計算速度を上げるしか無いのだが、もう限界に近い。GPUやペジーの様に膨大な数のスレッドを処理するコプロセッサが現在の主流と言えるのかもしれないが、メモリーアクセスがいつもボトルネックになる。
バンクコンフリクトなんぞは、昔からN社のSXシリーズでも問題になっていたが、GPUでも残っている。
シリコンコンピューティングの今後はメモリーとコプロセッサの通信の部分しか残っていないのかもしれない。そうだとすれば、あとはハードウェアのネットワーキング技術に掛かっている。3次元的なネットワーク網とか。もしかしたら、星野先生のPAXに戻るのかもしれない。
量子コンピュータとシリコンコンピュータの間をつなぐものが欲しいなあ。光なんだろうけど。シリコンよりも小さくないと意味が無いので、そんな小さいところを粒子として扱うことが必要だと、ものすごいエネルギー(短波長)の光量子を発生させなければならないのは多分大変なんじゃ無いか。
ここで培われた技術がコンシューマレベルのパソコン用CPUに下ろされ、ボトムエンドコンピュータが桁上げされていった。
そしてスパコンがスパコンたる牙城だったCPUとメモリのバス速度も速くなって、もはやカスタムCPUの存在意義は無くなり、並列コンピュータへの道が加速していった。
そして、並列の粒度を小さくして、膨大な数のスレッドを大量に処理するGPUが注目され、今度は、GPUではなく同じような能力を持つチップが開発され、注目を集めた。
光速が変わりようが無いので、CPUを小さくすることで計算速度を上げるしか無いのだが、もう限界に近い。GPUやペジーの様に膨大な数のスレッドを処理するコプロセッサが現在の主流と言えるのかもしれないが、メモリーアクセスがいつもボトルネックになる。
バンクコンフリクトなんぞは、昔からN社のSXシリーズでも問題になっていたが、GPUでも残っている。
シリコンコンピューティングの今後はメモリーとコプロセッサの通信の部分しか残っていないのかもしれない。そうだとすれば、あとはハードウェアのネットワーキング技術に掛かっている。3次元的なネットワーク網とか。もしかしたら、星野先生のPAXに戻るのかもしれない。
量子コンピュータとシリコンコンピュータの間をつなぐものが欲しいなあ。光なんだろうけど。シリコンよりも小さくないと意味が無いので、そんな小さいところを粒子として扱うことが必要だと、ものすごいエネルギー(短波長)の光量子を発生させなければならないのは多分大変なんじゃ無いか。
登録:
投稿 (Atom)