ROSCon JP 2024 プレゼンテーション

7K Views

September 25, 24

スライド概要

profile-image

TIER IV(ティアフォー)は、「自動運転の民主化」をビジョンとし、Autowareを活用したソフトウェアプラットフォームと統合開発環境を提供しています。 #Autoware #opensource #AutonomousDriving #deeptech

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

TIER IV ROSCon JP 2024 09 / 25 / 2024 自動運転AIチャレンジの紹介と マルチコンテナ開発・運用の 知見公開 近藤 豊 <[email protected]> 田中 大貴 浅部 佑 高木 勇武

2.

TIER IV 近藤 豊 aka @youtalk 仕事 個人活動 • • • • • • 2024/04~ TIER IVエンジニア 2021/11~ Preferred Robotics EM & PjM 2018/05~ Preferred Networksエンジニア 2013/04~ カワダロボティクス主任 2013/03 博士(工学) • • • • • 改訂新版「ROS 2ではじめよう 次世代ロボットプログラミング」 ROSConプログラム委員 ROSCon JP実行委員 ROS Japan Users Group元主宰 NVIDIA Jetson Influencer 多摩美TCL5期修了 2

3.

TIER IV 自動運転ソフトウェア Autoware 01 3

4.

TIER IV Autoware • AutowareはLinuxとROS 2をベースとした世界初の自動運転OSS • グローバル規模の業界団体The Autoware Foundationが開発主導 https://github.com/autowarefoundation/autoware 30+ 20+ 500+ VEHICLES COUNTRI ES COMPANIES 2024年9月現在 4

5.

TIER IV 石川県小松市で自動運転バスを通年運行中

6.

TIER IV マイクロオートノミー アーキテクチャ 6

7.

TIER IV Autowareの特殊性 10万行以上 400以上 総ソースコード行数 総パッケージ数 AMD64 / ARM64 CUDA有無 CPUアーキテクチャ GPU構成 Apache 2 ソフトウェアライセンス 7

8.

TIER IV Autowareの マルチコンテナ開発・運用 02 8

9.

TIER IV シングルステージビルドからマルチステージビルドへ https://github.com/autowarefoundation/autoware /blob/main/docker/README.md 9

10.

TIER IV シングルステージビルドからマルチステージビルドへ rosdep installの 依存パッケージリスト生成 rosdep-depend https://github.com/autowarefoundation/autoware /blob/main/docker/README.md 10

11.

TIER IV シングルステージビルドからマルチステージビルドへ ビルドステージの分割 https://github.com/autowarefoundation/autoware /blob/main/docker/README.md 11

12.

TIER IV シングルステージビルドからマルチステージビルドへ ビルドステージの再分割 https://github.com/autowarefoundation/autoware /blob/main/docker/README.md 12

13.

TIER IV シングルステージビルドからマルチステージビルドへ センシング/認識処理用 開発コンテナ センシング/認識処理用 実行コンテナ https://github.com/autowarefoundation/autoware /blob/main/docker/README.md 13

14.

TIER IV シングルステージビルドからマルチステージビルドへ 開発コンテナ 実行コンテナ https://github.com/autowarefoundation/autoware 14 /blob/main/docker/README.md

15.

TIER IV 開発コンテナと実行コンテナ 詳しくはティアフォー展示ブースへGO! 開発コンテナによるデバッグ 実行コンテナによる実車テスト 15

16.

TIER IV https://autowarefoundation.github.io/ autoware-ci-metrics/ GitHub Actionsでのコンテナビルド時間 2時間半 40分 5分 16

17.

TIER IV https://autowarefoundation.github.io/ autoware-ci-metrics/ Autowareコンテナイメージサイズ 9.3GB CUDAドライバーあり 4.9GB CUDAドライバーなし 4.2GB 2.1GB 17

18.

TIER IV GitHub Actionsを使った コンテナビルドTips 03 18

19.

TIER IV GitHub Actions上でのDocker Build Cacheの有効化 • https://docs.docker.com/build/cache/ backends/registry/ • コンテナビルドのビルドキャッシュ をレジストリにキャッシュ • cache-fromはmainブランチとPRブラ ンチの両方を指定可能 • cache-toはmode=maxを指定して全 ステージキャッシュ https://docs.docker.com/build/cache/ より転載 19

20.

TIER IV GitHub Actions CacheへのCcache保存 • https://github.com/reprodu cible-containers/buildkitcache-dance • GitHub Runnerでイメージ 内のファイルをキャッシュ 抽出・復元 • Autowareビルドのように RUNコマンド単体で長時 間実行が必要な場合に有用 https://github.com/autowarefoundation/autoware/blob/ main/.github/actions/docker-build-and-push/action.yaml 20

21.

TIER IV rosdepのキャッシュ保持力向上 • 独立したステージでrosdep installする依存パッケージリストをあらかじめ生成 • colcon buildステージで依存パッケージリストのみコピーしてインストール • さらにcacheマウントでAPTのダウンロード済みパッケージを再利用 依存パッケージリスト 生成ステージ colcon buildステージ https://github.com/autowarefoundation/autoware/blob/main/docker/Dockerfile 21

22.

TIER IV ソースコードのbindマウントとbuildディレクトリ削除 • ソースコードは各ステージに必要な分だけbindマウント • インストール先を/opt/autowareに変更し、実行コンテナにコピー • 中間生成物(/autoware/build)はその場で削除 https://github.com/autowarefoundation/ autoware/blob/main/docker/Dockerfile 開発コンテナの ビルドステージ 実行コンテナの ビルドステージ 22

23.

TIER IV 最小サイズの実行コンテナ化 • exec_dependの依存パッ ケージのみインストール • ヘッダーファイルや不要 な開発用ファイルを根こ そぎ削除 • 開発コンテナのビルドス テージから最終成果物の みコピー 23

24.

TIER IV 開発コンテナを使ったAutowareパッケージ開発 • Dockerコマンドを使った方法 $ git clone [email protected]:autowarefoundation/autoware.git $ cd autoware $ vcs import src < autoware.repos $ docker run -it --rm \ –v $PWD/src/universe/autoware.universe/XXX:/autoware/src \ ghcr.io/autowarefoundation/autoware:universe-devel-cuda $ colcon build --mixin debug compile-commands $ source install/setup.bash $ ros2 run --prefix "gdb -ex run --args" autoware_YYY ZZZ • VSCode/devcontainerを使った方法:TBA 24

25.

TIER IV TODO OSSからプロダクトへ Pilot.Auto Cargo Cargo feat. Pilot.Auto feat. Pilot.Auto Autoware Debug tools Demo feat. Bus feat. Race Car feat. Race Car Pilot.Auto Bus 25

26.

TIER IV 自動運転AIチャレンジ2024 04 26

27.

TIER IV 自動運転AIチャレンジ2024 今年度は約半年にわたる期間にて実施 技術のコンペティションとエンターテインメント性の双方を重視した大会を開催 • • • 決勝会場:シティサーキット東京ベイ(運営:株式会社トムス) ハードウェア:EVレーシングカート 参加方式:チャレンジクラスとアドバンストクラス https://youtu.be/GsuCUoNrMDM より転載 27

28.

TIER IV 予選(チャレンジクラスのみ) デジタルツイン指向のコースを用いたシミュレーションで実施 https://www.youtube.com/watch?v=K-N-2nLXXF8 より転載 28

29.

TIER IV 準決勝・決勝 大人向け屋外EVレーシングカートを自動運転対応に特別改造した実車両で実施 https://youtu.be/COZDHMm4E_8 より転載 29

30.

TIER IV ROSCon JP 2024 09 / 25 / 2024 自動運転AIチャレンジの紹介と マルチコンテナ開発・運用の 知見公開 近藤 豊 <[email protected]> 田中 大貴 浅部 佑 高木 勇武

31.

TIER IV We Are Hiring! • 自動運転の民主化はあなたの手で • 特に自動運転ソフトウェア、Web、クラウド、 シミュレーションエンジニア求む https://herp.careers/v1/tier4 2024年9月現在 31

32.

TIER IV 改訂新版ROS 2ではじめよう 次世代ロボットプログラミング • • • • • • • 9/19発売 初版から5年ぶりの全面改訂新版 5年サポートのROS 2 Jazzy完全対応 ROS 1紹介、ROS 2移行の章を削除 ROS 2ツール/パッケージ章の完全書き換え ROS 2エコシステム章の追加 実践ROS 2プログラミング章の追加 32