Windowsみたいにアンインストーラーがシステムにあれば良いんだけど。最近では、
%> make uninstall
で丸ごと消せるオープンソースもあるというのに。
macOSでは、Android Studioを消去するには、以下の様にすると良いようだ。
rm -rf /Applications/Android\ Studio.app
rm -rf ~/Library/Preferences/AndroidStudio*
rm -rf ~/Library/Preferences/com.google.android.*
rm -rf ~/Library/Preferences/com.android.*
rm -rf ~/Library/Application\ Support/AndroidStudio*
rm -rf ~/Library/Logs/AndroidStudio*
rm -rf ~/Library/Caches/AndroidStudio*
rm -rf ~/.AndroidStudio*
rm -rf ~/Library/Android*
rm -rf ~/.gradle
rm -rf ~/.android
あと、自分で作成したプロジェクトファイルも消すならそれも。
2018年3月13日火曜日
2018年3月1日木曜日
中国からの通販
8,9年前に買っていたマイコンを使ってやろうと、いろいろツールを弄くっていて、それと同時にブレッドボードで回路にしていぢっている。
絶縁ビニールが導体にまかれ、両端が直角になってブレッドボードにさして使う針金のジャンパーワイアをもっているけど、LCDやらセンサーやら繋ごうとするとメスーメスやらメスーオスやらのワイヤが欲しくなった。で、いつもは秋月さんで物色するんだけど、今回はアマゾンさんで探してみると、この手の部品が恐ろしい値段で並んでる。ジャンパーワイアが40本で100円しない。送料も込み。よく見ると郵送に大分時間がかかるようだ。最大2週間。あらかたこの手のは中国から送られてくるようだ。試しに別々の所から、別々のワイアを購入してみた。
結果、5個所からで、届くのに10日から2週間が3つ。残りの2つは届かなかった。ただどれもメールでの応対は非常に反応が良く、1,2時間で返事が来る。届かなかったのは、ちゃんとリファンドしてくれたし、再送もしてくれた。
想像するにメールのやり取りは日本人なんじゃないだろか。日本語だし。でもちょっと間違いもあるんだよな。
結論、バックレられる事は無かったけど、手に入らないこともあると。ちょっと困るよな。でも、値段がおかしいから仕方が無いかねぇ。
絶縁ビニールが導体にまかれ、両端が直角になってブレッドボードにさして使う針金のジャンパーワイアをもっているけど、LCDやらセンサーやら繋ごうとするとメスーメスやらメスーオスやらのワイヤが欲しくなった。で、いつもは秋月さんで物色するんだけど、今回はアマゾンさんで探してみると、この手の部品が恐ろしい値段で並んでる。ジャンパーワイアが40本で100円しない。送料も込み。よく見ると郵送に大分時間がかかるようだ。最大2週間。あらかたこの手のは中国から送られてくるようだ。試しに別々の所から、別々のワイアを購入してみた。
結果、5個所からで、届くのに10日から2週間が3つ。残りの2つは届かなかった。ただどれもメールでの応対は非常に反応が良く、1,2時間で返事が来る。届かなかったのは、ちゃんとリファンドしてくれたし、再送もしてくれた。
想像するにメールのやり取りは日本人なんじゃないだろか。日本語だし。でもちょっと間違いもあるんだよな。
結論、バックレられる事は無かったけど、手に入らないこともあると。ちょっと困るよな。でも、値段がおかしいから仕方が無いかねぇ。
2018年2月12日月曜日
オゾン層と紫外線
一時期、気候や気象の研究者の一部があおりまくったせいで、多くの人たちが間違えた認識をしてしまっているのが、温室効果とか紫外線の増加とかの話。未だに気象予報士も間違えて認識している人が多い。冬が寒いと温暖化のせいで、夏が暑いと温暖化のせいでとか。
先日サングラスが壊れてしまって、新調しようかなと思った時にふと、紫外線で起きるのは白内障だっけかなと調べた。すると、オゾン層の破壊で紫外線がーという下りをある大きな病院のサイトに描かれてあった。一時期この話はよくメディアで取り上げられていたからさもありなん。
しかしながら、この話は後があって、世界中の人たちが物理学者の警鐘に大慌てで対応し、原因であるフロンを使わないようにして努力した結果、フロン濃度は多少減少し、オゾンも増加傾向に転じているのである。
一方、紫外線の強度は気象庁によると、年度毎に大きく変動はあるけれども、増大傾向にある。こうなると、紫外線の強さの原因はオゾン層だけではなく、同等の影響を及ぼすものがあることが予想される。エアロゾルとか雲とかいろいろ考えられるわけだ。定性的には誰でも分かるが、これを定量的に評価してやらなければならない。気象、もしくは気候やさんの出番だ。
温暖化にしても100年で数度平均気温が上がるというレベルで年換算なら100分の数度だと言われているのに、今年は暑い、温暖化のせいで、なんていってるヤツが未だにテレビの中にいるのは本当にどうかと思うよ。
先日サングラスが壊れてしまって、新調しようかなと思った時にふと、紫外線で起きるのは白内障だっけかなと調べた。すると、オゾン層の破壊で紫外線がーという下りをある大きな病院のサイトに描かれてあった。一時期この話はよくメディアで取り上げられていたからさもありなん。
しかしながら、この話は後があって、世界中の人たちが物理学者の警鐘に大慌てで対応し、原因であるフロンを使わないようにして努力した結果、フロン濃度は多少減少し、オゾンも増加傾向に転じているのである。
一方、紫外線の強度は気象庁によると、年度毎に大きく変動はあるけれども、増大傾向にある。こうなると、紫外線の強さの原因はオゾン層だけではなく、同等の影響を及ぼすものがあることが予想される。エアロゾルとか雲とかいろいろ考えられるわけだ。定性的には誰でも分かるが、これを定量的に評価してやらなければならない。気象、もしくは気候やさんの出番だ。
温暖化にしても100年で数度平均気温が上がるというレベルで年換算なら100分の数度だと言われているのに、今年は暑い、温暖化のせいで、なんていってるヤツが未だにテレビの中にいるのは本当にどうかと思うよ。
2018年2月5日月曜日
CUDAで開発:XCode/CMake/CUDA
CUDAは主にUbuntu上で8.0ベースで開発している。でもメインはiMac/Marverickなので、時々XCode・CUDA7.5でやっている。下手なKernel関数を走らせるとシステムダウンするので怖い。
XCodeのデバッグ環境は使いやすいので、使いたいのだが、Kernel関数に別ファイルで定義されているクラスを使ったところ、
ptxas fatal : Unresolved extern function '_ZN15WorldControllerC1Ev'
とでてしまった。ぐぐってみるとこれは相対形式で.cuをコンパイルするためには、-dcオプションを使わないといけないらしい。そこで、ccmakeをつかって、その中の
CUDA_NVCC_FLAGS
に、-dcをいれてみた。すると今度は、
more than one compilation phase specified
と、またエラーになってしまった。そこで再び調査したところ、CMakeLists.txtに、
SET(CUDA_SEPARABLE_COMPILATION ON)
を追加してみたところ、うまくいった。
手書きでオプション全部つけてやればうまくいくのだが、cmakeの便利さは手放せない。でも時々こういったデフォルト以外の事をしようとすると、やもするとなかなか独力では解決しない。ほんとにグーグルさんは力になってくれるので感謝。いや、貴重な情報を描いてくれた人へこそ感謝、だな。
この後、リンク時にエラーが出た。
Unable to open output file '/Volumes/.../EXE_intermediate_link.o': 'Error opening output file
これは、Releaseとか、Debugとかの名前のフォルダーが存在しないため起きる。CMakeが提供するスクリプトではフォルダを自動的に作成してくれないらしい。しょうが無いので自分でフォルダを作成してオーケー。
XCodeのデバッグ環境は使いやすいので、使いたいのだが、Kernel関数に別ファイルで定義されているクラスを使ったところ、
ptxas fatal : Unresolved extern function '_ZN15WorldControllerC1Ev'
とでてしまった。ぐぐってみるとこれは相対形式で.cuをコンパイルするためには、-dcオプションを使わないといけないらしい。そこで、ccmakeをつかって、その中の
CUDA_NVCC_FLAGS
に、-dcをいれてみた。すると今度は、
more than one compilation phase specified
と、またエラーになってしまった。そこで再び調査したところ、CMakeLists.txtに、
SET(CUDA_SEPARABLE_COMPILATION ON)
を追加してみたところ、うまくいった。
手書きでオプション全部つけてやればうまくいくのだが、cmakeの便利さは手放せない。でも時々こういったデフォルト以外の事をしようとすると、やもするとなかなか独力では解決しない。ほんとにグーグルさんは力になってくれるので感謝。いや、貴重な情報を描いてくれた人へこそ感謝、だな。
この後、リンク時にエラーが出た。
Unable to open output file '/Volumes/.../EXE_intermediate_link.o': 'Error opening output file
これは、Releaseとか、Debugとかの名前のフォルダーが存在しないため起きる。CMakeが提供するスクリプトではフォルダを自動的に作成してくれないらしい。しょうが無いので自分でフォルダを作成してオーケー。
2018年1月8日月曜日
Microchipの開発環境:PIC18F2550をどうにかしたい
今、手元にPIC18F2550がある。そして、microchip社の現行開発ツールではもうサポートはされていないようだ。MPLAB8のがまだWindowsXPに乗っかっているが、使いたくは無い。
現在の開発環境は、Mplab X IDEという、javaベースのツールに移行が進み、フレームワークである、MLAも古い開発環境、MPLAB8はサポートしていない。サポートしていたバージョンはLegacy MLAと言われて、2013-6-15が最終サポート。これ以降は古いIDEだけでなくChipもサポートされていないようだ。悲しい。
また, Legacy MLAはコンパイラにC18コンパイラを使っているようで、それも今はWindowsバージョンだけにしか提供されていない。どうしてmacOSバージョンは無いのよ。
最新のMPLAB X 4.xでもPIC18F2550のLEDちかちかはできるので、どうにかは出来るのだろうけど、フルスクラッチで書くのはちょっとなあ。どうしたらいいのかなあ。
現在の開発環境は、Mplab X IDEという、javaベースのツールに移行が進み、フレームワークである、MLAも古い開発環境、MPLAB8はサポートしていない。サポートしていたバージョンはLegacy MLAと言われて、2013-6-15が最終サポート。これ以降は古いIDEだけでなくChipもサポートされていないようだ。悲しい。
また, Legacy MLAはコンパイラにC18コンパイラを使っているようで、それも今はWindowsバージョンだけにしか提供されていない。どうしてmacOSバージョンは無いのよ。
最新のMPLAB X 4.xでもPIC18F2550のLEDちかちかはできるので、どうにかは出来るのだろうけど、フルスクラッチで書くのはちょっとなあ。どうしたらいいのかなあ。
2017年12月20日水曜日
古いCUDA Project (Visual Studio 2013とか) を動かしたい
新しい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は手に入れられないようなので、バージョンアップには注意が必要だ。
そこで、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月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)