AIの片隅で(16) block, thread, warp, lane

AIをタイトルにしながら、低レベルな話ばかり書いていますが、それもこれも

Jetson Nano

は、AIネタと決めたからなんであります。先は長いですが、やっていく先にはAIにもつながりましょう。さて、月曜日に cuda-gdb でハマった話を投稿いたしましたが、デバッガが立ち上がったところでおしまいになってました。CUDA用のデバッガらしい話題皆無。というわけで今回は、実際にcuda-gdbを動かして、CUDAのサンプルプログラムの中身をのぞいてみます。 “AIの片隅で(16) block, thread, warp, lane” の続きを読む

トホホな疑問(6) なぜハング、cuda-gdb

このところ、Jetson Nano用のOSイメージに最初から含まれているJetPackの中のツール類をあれこれ当たってみているのですが、ハングしました。デバッグに必須

cuda-gdb

です。これがハングしているのではデバッグもままなりません。いろいろ調べた結果、動くようになったので書き留めておきます。ま、ちゃんと調べずにとりあえず使ってみて、問題起きたらようやく調べるという、泥縄式がまずい、という自覚はあり、しかし、やめられまへん。 “トホホな疑問(6) なぜハング、cuda-gdb” の続きを読む

AIの片隅で(15) nvccとgprof, oprofile

前回はJetson nano上で nvprof を使い、GPU実行部分のプロファイリングをちょっとだけ触ってみました。しかし、本来はCPU部分のプロファイリングもできる筈の nvprofですが、このプラットフォームではCPUのプロファイリングは駄目だと警告がでます。そこで、CPU部分のプロファイリングについては nvcc生成のCUDA使用の実行ファイルを、定番のgprof と oprofile の2つでプロファイリングしてみました。 “AIの片隅で(15) nvccとgprof, oprofile” の続きを読む

AIの片隅で(14) Jetson Nano、nvprof

Jetson Nanoを使っていくために、大事な

/usr/local/cuda (私の環境では実体は /usr/local/cuda-10.0)

の中のコマンドなどについて順に実際に動かして確かめておこうと思い立ちました。一番といえばやはり nvcc でしょうが、サンプルプログラムをコンパイルするのに既に使っているし、かといってその機能を網羅しようとしたりすればどれだけかかるか分かりません。今回は、使う人は使うけれども、使わない人は使わないんじゃないかと想像する、

nvprof

から動かしてみることにいたしました。コマンドラインのcuda用プロファイラですね。

“AIの片隅で(14) Jetson Nano、nvprof” の続きを読む

トホホな疑問(5) aplay -L、返ってこない

Jetson Nanoに、音声ファイルを食わせたいと思ったのであります。音から判定するようなAIも多いしね。既にRaspberry Pi上でテスト済のUSBオーディオインタフェース(大特価ウン百円)をつなげれば即OKと考えたのですが、あれれ

aplay -L

aplay -l

も戻ってきません。無限ループでもしている感じ。でも意外な所に原因がありました。1箇所直したら再生、録音問題なし。 “トホホな疑問(5) aplay -L、返ってこない” の続きを読む

土木でエレキ(18) 雷センサ、チャンス再び

あんまり雷センサにばかり関わっていないで、もっと他にやることあるだろう、とも思うのです。しかし、ちょうどいい塩梅の時間帯に雷様がゴロゴロいわないかと心待ちにしている自分もおります。前回も考えこんだように使い道もちょっと微妙だし、センシングのチャンスも天の思し召し次第。反ってFranklin Lightning Sensor、AMS AS3935 が魅惑のセンサになっていくのであります。

“土木でエレキ(18) 雷センサ、チャンス再び” の続きを読む

AIの片隅で(13) Jetson NanoでLチカ

前回、AI業界の “Hello World!” である MNISTをやってしまったので、遅ればせながらマイコン業界の “Hello World!”である Lチカを Jetson Nanoにもやっていただくことにいたしました。128個のCUDAコアをもつJetson Nanoには恐れ多い仕事ですが、エッジでAI狙いのJetsonですからIOくらい制御していただいても文句は言いますまい。 “AIの片隅で(13) Jetson NanoでLチカ” の続きを読む

AIの片隅で(12) Jetson NanoでChainer

前回は Jetson Nanoを立ち上げて CUDA が使えることを確認いたしました。今日は、CUDAにそれらしいことをやらせたい。やっぱりAIネタですね。それであれば、既にOSイメージに含まれている

NVIDIA JetPack SDK

というライブラリを使うことになります。JetPackには肝心のCUDAも含まれているので勿論使わせていただくのですが、こちらはこちらで、以前 Raspberry Pi にChainerをインストールし、人工知能業界のHello World! である MNIST を動かして、モデル間の速度を比べてみたりしております。そこで、 Chainer+MNISTの組み合わせで Raspberry Piと速度を比べてみました。 “AIの片隅で(12) Jetson NanoでChainer” の続きを読む

AIの片隅で(11) NVIDIA Jetson Nanoセットアップ

8月14日の投稿で、NVIDIA Jetson Nano到着、と書きました。しかし時はお盆。15日は作業を中断、本日再開であります。結論から言えば、特に大きな問題もなく、セットアップを完了し、CUDAが使えるという確認をとるところまで行えました。でも、細かい事を言えば、引っかかるところいろいろありました。 “AIの片隅で(11) NVIDIA Jetson Nanoセットアップ” の続きを読む

Literature Watch Returns(8) Jetson nano特集、トラ技2019-9月号

8月5日の投稿で、Google Corl Dev Board と NVIDIA Jetson Nano が欲しいよ~と書いてしまいました。物欲は止まりませぬ。と言っていたら、先週購入のトラ技9月号は、NVIDIA Jetson Nano特集ではありませんか。これは Jetson Nano、買うしかありません。ポチリました。到着する前にトラ技の特集を読んでおかねば。 “Literature Watch Returns(8) Jetson nano特集、トラ技2019-9月号” の続きを読む

IoT何をいまさら(36) PIRセンサからメッセージ

三角測量式距離センサレーザ使ったTOFセンサ24GHzの無線使ったドップラーセンサなど、「人感」にも使える各種センサを動かしてみました。今回は人感サンサとしては定番中の定番の焦電センサ(PIRセンサ)を使ってみます。しかし今回手元にあるのは、デジタル出力で在、不在を知らせるのみの単純なもの。あんまりなので、PIRセンサ、ラズパイ、IFTTT、Facebook Messengerという経路で、PIRセンサの検出をメッセージとしてスマホに報告するという形にしてみました。 “IoT何をいまさら(36) PIRセンサからメッセージ” の続きを読む

トホホな疑問(4) Raspberry Pi、Google Home Mini 音を出す小ネタ

この間、Raspberry Pi ZeroにUSBオーディオを取り付けて、音声の録音と再生などを行ってみたことは書かせていただきました。Raspberry Piなどの音声関係については疎くて知らずにいたことも多いです。USBオーディオの記事で書かなかったことについてもメモを残しておくことにいたしました。なにせ記録せずに1週間もたつと皆忘れている今日この頃。 “トホホな疑問(4) Raspberry Pi、Google Home Mini 音を出す小ネタ” の続きを読む

IoT 何をいまさら(35) Raspberry Pi、Microphone

前々回、Raspberry Piにカメラモジュールを接続してみましたが、今回は、マイクロフォンを接続したいと思います。音響センサ=マイクでIoTというよりも、どちらかといえばAIネタ考えているのですが、まあお許しください。Raspberry Piでも Pi 1 やPi 3など、オーディオ出力のピンジャックを持っている機種もありますが、今回はピンジャックの無いPi Zero Wターゲットです。いずれにせよ、オーディオ入力は存在しないので、外付けするしかありません。かなりお安い周辺装置を購入したのですが大丈夫でしょうか。 “IoT 何をいまさら(35) Raspberry Pi、Microphone” の続きを読む

IoT何をいまさら(34) M5StackのGroveコネクタ

M5Stackをいじるようになって、直ぐに気になったのが、側面に存在する赤色の4ピンのコネクタでした。電源、グラウンドにI2Cバスの2ピンが出ています。調べてみると

Groveコネクタ(オリジナルはSeeed社、スマートxxみたいなIoTネタの多い会社)

と呼ばれているようです。世の中にはこのコネクタに接続することのできるセンサその他がいろいろ存在していました。勿論、M5Stack用のものも多数ありました。とりあえずちょっと使ってみるべし、ということで「このコネクタに接続できる最も簡単なユニット」を購入してみました。 “IoT何をいまさら(34) M5StackのGroveコネクタ” の続きを読む