AIの片隅で(18) Chainer、開発の終わり

12月5日づけで、ちょっとショックなプレスリリースが出てました。日本を代表するAI(人口知能の方、最近投稿に頻発しておりますAugumentation Indexではありませぬ)ベンチャー企業であるPreferred Networksさんの以下のプレスリリースであります。

Preferred Networks、深層学習の研究開発基盤をPyTorchに移行

“AIの片隅で(18) Chainer、開発の終わり” の続きを読む

トホホな疑問(19) Jetson Nano、GPIO入力つづき

前回、Jetson Nano(正確に言えば Jetson Nano Developer Kit Carrier Board)にPIRセンサ(人感センサ)を接続しようとしたら、ラズパイのときより抵抗値の小さなプルアップにしないと動かない件を書かせていただきました。今回はその理由を調べたので記録しておきます。結局、モジュールとしてのJetson Nanoではなく、それを搭載しているCarrier Boardの回路が理由でしたんですが。 “トホホな疑問(19) Jetson Nano、GPIO入力つづき” の続きを読む

鳥なき里のマイコン屋(71) Kendryte K210、RISC-V搭載AIチップ

Joseph Halfmoon

中国の方でRISC-Vがかなり人気になっているらしいことは伝わってきておりました。それが実感できる、何か「ガツン」とくる実例ないかいな、と思っていたのです。昨日投稿でとりあげさせていただいたK210、なかなか面白いチップであった上に、直ぐに購入できる上にお手頃価格でした。待っている新製品でたら購入の予定。その前にちょっと調べてみました。製造元は Canaan Creative社(北京)で、その会社のAI向けブランド名?がKendreteであるようです。

(K210を使い始めた件はこちら

“鳥なき里のマイコン屋(71) Kendryte K210、RISC-V搭載AIチップ” の続きを読む

Literature Watch Returns(9) 「世界のAIマイコン」特集、トラ技2019-11月号

店頭にならんで直ぐに購入させていただいたのですが、しばらく「寝かせて」しまいましたスミマセン、トラ技2019年11月号であります。特集「世界のAIマイコン」、しかし、その上の青文字を見逃してはいけません、64bit/400MHz RISC-Vです。世界のと言いつつ、その実態はK210(RISC-Vコア)の特集といって良いでしょう(そのくせRISC-Vそのものは前面に出てこない)。愛用のJetson NanoもRaspberry Piなども登場はしますがぶっちゃけ比較相手。しかし、このチップ、物欲をそそります。読めばボードが欲しくなる、そしてお手頃価格!そういえば前回も特集読んでJetson Nanoポチりました。どうしたものでしょ。

“Literature Watch Returns(9) 「世界のAIマイコン」特集、トラ技2019-11月号” の続きを読む

AIの片隅で(17) n,c,h,w,k,p,q,u,v,r,s なんのこっちゃ?

前回、cuDNNのサンプルプログラムを動かしていて、Jetson nanoでは残念ながら動かないところがある話を書きました。しかし、それ以上に分からなかったのが、サンプルプログラムの引数です。こんな感じ。

-c2048 -h7 -w7 -k512 -r1 -s1 -pad_h0 -pad_w0 -u1 -v1

まあね、これがコンボリューション・レイヤの計算のための引数であると分かっているので、cはchannel、hはheightなどと想像も多少はつくのです。しかし、何だか分からない引数もあり。多分、AIプロの人はこういう記号を見ただけで分かりあえるのかもしれません。しかし、私などは、まず記号の使い方からちゃんと調べて頭に入れて置かないとダメだな、と思い至りました。 “AIの片隅で(17) n,c,h,w,k,p,q,u,v,r,s なんのこっちゃ?” の続きを読む

トホホな疑問(10) cuDNN, サンプル動かないのもある

Jetson Nano楽しく使っております。JETPACK SDKという名のもとにインストールされているライブラリなどを順次確かめてみてもおります。今回は、DNN用のcuDNNというライブラリのサンプルプログラムを動かしてみていたときの疑問です。まあ、インストールイメージに含まれていたソースと言えども、必ずしも全てがJetson Nanoでは動かない、というだけのことなんでありますが。動かす前に気が付かないでいると、動かした後で何で?となるのです。 “トホホな疑問(10) cuDNN, サンプル動かないのもある” の続きを読む

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” の続きを読む

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月号” の続きを読む