Skip to content

Commit

Permalink
docs(outline,develop,tutorial): add outline page (#18)
Browse files Browse the repository at this point in the history
* docs: add outline page

* docs: style fix

* docs: update tutorial

* docs(tutorial,installation,workspace): update docs
  • Loading branch information
taikitanaka3 authored Jun 12, 2024
1 parent bf504e9 commit 3980329
Show file tree
Hide file tree
Showing 10 changed files with 306 additions and 472 deletions.
Binary file added docs/development/images/AWSIM&Autoware.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
205 changes: 50 additions & 155 deletions docs/development/installation.ja.md
Original file line number Diff line number Diff line change
@@ -1,76 +1,19 @@
# 環境構築

## ワークスペースのダウンロード

任意のディレクトリにて下記コマンドを実行し、ワークスペースをダウンロードします。
### aptパッケージ等のインストール
まずは諸々最初に必要なパッケージをインストールします。

```bash
git clone https://github.com/AutomotiveAIChallenge/aichallenge-2024.git
```

## NVIDIAドライバのインストール

```bash
# リポジトリの追加
sudo add-apt-repository ppa:graphics-drivers/ppa

# パッケージリストの更新
sudo apt update

# インストール
sudo apt -y upgrade
sudo apt install -y git python3-pip ca-certificates curl gnupg libvulkan1
sudo ubuntu-drivers autoinstall

# 再起動
reboot

# 再起動の後、インストールできていることを確認
nvidia-smi
```

![nvidia-smi](./images/installation/nvidia-smi.png)

## Vulkunのインストール

```bash
# パッケージリストの更新
sudo apt update

# libvulkan1をインストール
sudo apt install libvulkan1
```

## AWSIMのダウンロード・起動確認

!!! info

AWSIM は現在準備中です。

1. [Google Drive](https://drive.google.com/drive/) から最新の `AWSIM_GPU.zip` をダウンロードし、`aichallenge-2024/aichallenge/simulator` に展開します。

2. パーミッションを図のように変更します。

![パーミッション変更の様子](./images/installation/permmision.png)

3. ファイルをダブルクリックで起動します。

4. 下記のような画面が表示されることを確認します。

![awsim](./images/installation/awsim.png)

## Docker環境のインストール

下記のインストールを行います。

- [Docker](https://docs.docker.com/engine/install/ubuntu/)
- [rocker](https://github.com/osrf/rocker)(Dockerコンテナ内でRviz、rqtなどのGUIを使用するために用います。)
- [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html)(GPU非搭載の方はスキップ)

### Dockerのインストール
[公式ドキュメント](https://docs.docker.com/engine/install/ubuntu/)通りに以下のコマンドでインストールします。

```bash
# Dockerインストールの下準備
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
Expand All @@ -79,120 +22,72 @@ echo \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 最新のDockerをインストール
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# インストールできているかをテスト
sudo docker run hello-world

# 以下の様なメッセージが出ればインストール完了です。
#
# Hello from Docker!
# This message shows that your installation appears to be working correctly.
#
# To generate this message, Docker took the following steps:
# 1. The Docker client contacted the Docker daemon.
# 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
# (amd64)
# 3. The Docker daemon created a new container from that image which runs the
# executable that produces the output you are currently reading.
# 4. The Docker daemon streamed that output to the Docker client, which sent it
# to your terminal.
#
# To try something more ambitious, you can run an Ubuntu container with:
# $ docker run -it ubuntu bash
#
# Share images, automate workflows, and more with a free Docker ID:
# https://hub.docker.com/
#
# For more examples and ideas, visit:
# https://docs.docker.com/get-started/

# User Groupに自分のアカウントを追加し、sudo権限が無くてもDockerを利用可能にします。
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo usermod -aG docker $USER
```

# Groupsにdockerが追加されていることを確認
groups $USER
以下のコマンドで正常にインストールされているか確認してください。
```
sudo docker run hello-world
```

# 以下の様なメッセージが出れば設定完了です。
# USERNAME : USERNAME adm cdrom sudo ... docker
`Hello from Docker!`と表示されれば正常にインストール出来ています。

# ここまで確認できたらLoginし直してください。
reboot
```
ここまで出来たら一度再起動します。

### rockerのインストール
rockerはDockerコンテナのGUIアプリを簡単に起動できるようにするツールです。

[公式README](https://github.com/osrf/rocker?tab=readme-ov-file#debians-recommended)ではaptからのインストールが推奨されていますが、手順と環境をシンプルにするためにここではpipからインストールします。

```bash
# 依存関係が最も少ないため以下コマンドでのインストールを推奨しています。
pip install rocker
# rocker実行ファイルへのPATHを通します。
echo export PATH='$HOME/.local/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

# 以下コマンドはROS依存があるため非推奨としています。
# sudo sh -c 'echo "deb http://packages.ros.org/ros2/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros2.list'
# curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
# sudo apt update
# sudo apt-get install python3-rocker
```

### (GPU非搭載の方はスキップ) NVIDIA Container Toolkit

```bash
# インストールの下準備
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

# インストール
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

#インストールできているかをテスト
sudo docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi

#最後のコマンドで以下のように出力されれば成功です。
#(下記はNVIDIAウェブサイトからの引用です)
#
# +-----------------------------------------------------------------------------+
# | NVIDIA-SMI 450.51.06 Driver Version: 450.51.06 CUDA Version: 11.0 |
# |-------------------------------+----------------------+----------------------+
# | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
# | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
# | | | MIG M. |
# |===============================+======================+======================|
# | 0 Tesla T4 On | 00000000:00:1E.0 Off | 0 |
# | N/A 34C P8 9W / 70W | 0MiB / 15109MiB | 0% Default |
# | | | N/A |
# +-------------------------------+----------------------+----------------------+
# +-----------------------------------------------------------------------------+
# | Processes: |
# | GPU GI CI PID Type Process name GPU Memory |
# | ID ID Usage |
# |=============================================================================|
# | No running processes found |
# +-----------------------------------------------------------------------------+
デフォルト設定ではrockerの実行ファイルへのパスが通っていないので、以下のコマンドで`.bashrc`に追加しておきます。
```
echo export PATH='$HOME/.local/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
```

## Dockerイメージの準備
## autoware環境のDockerイメージのpull
AIチャレンジで使用するautoware環境のDockerイメージを取得します。

Dockerイメージは10GB程度のサイズがあり、ダウンロードには時間が掛かります
Dockerイメージは10GB程度のサイズがあり、ダウンロードには時間が掛かるため有線LANでのダウンロードを推奨します

```bash
# Dockerイメージのダウンロード
docker pull ghcr.io/automotiveaichallenge/autoware-universe:humble-latest
```

# Dockerイメージの確認
以下のコマンドでダウンロードできているか確認します。
```bash
docker images
```

# Dockerイメージがダウンロードできていれば以下のような出力が得られます。
#
Dockerイメージがダウンロードできていれば以下のような出力が得られます。
```
# REPOSITORY TAG IMAGE ID CREATED SIZE
# ghcr.io/automotiveaichallenge/autoware-universe humble-latest 30c59f3fb415 13 days ago 8.84GB
```


## AIチャレンジの大会用リポジトリの準備と実行

### 大会用リポジトリのダウンロード
リポジトリをクローンします。ここではホームディレクトリにクローンしますが、お好きなディレクトリに入れていただいても構いません。

```bash
cd ~
git clone https://github.com/AutomotiveAIChallenge/aichallenge-2024.git
```

### AWSIMのダウンロード
## AWSIMのダウンロード・起動確認
1. [Google Drive(あとでリンク変える)](https://drive.google.com/drive/) から最新の `AWSIM_GPU.zip` をダウンロードし、`aichallenge-2024/aichallenge/simulator` に展開します。

2. パーミッションを図のように変更します。

![パーミッション変更の様子](./development/images/installation/permmision.png)

実行ファイルが`aichallenge-2024/aichallenge/simulator/AWSIM/AWSIM.x86_64`に存在していることを確認してください。
33 changes: 0 additions & 33 deletions docs/development/requirements.ja.md
Original file line number Diff line number Diff line change
@@ -1,33 +0,0 @@
# 要求性能

## 推奨環境

本大会で使用していただくPCの動作環境として以下を推奨しております。

- OS: Ubuntu 22.04
- CPU: Intel Corei7 (8 cores) or higher
- GPU: NVIDIA Geforce RTX 3080 (VRAM 12 GB) or higher
- Memory: 32 GB or more
- Storage: SSD 30 GB or higher

上記のスペックを満たすPCをご用意できない方は、AutowareとAWSIMを別のPCで動かすことも可能です。下記の「PC2台で参加する方向け」のスペックをご参照ください。

## 2台のPCを使用する方向け

### Autoware PC

- OS: Ubuntu 22.04
- CPU: Intel Corei7 (8 cores) or higher
- GPU: NVIDIA Geforce GTX 1080 or higher
- Memory: 16 GB or higher
- Storage: SSD 10 GB or higher
- 詳細は [Autoware Documentation](https://autowarefoundation.github.io/autoware-documentation/main/installation/) を参照してください

### AWSIM PC

- OS: Ubuntu 22.04 or Windows 10/11
- CPU: Intel Corei7 (6 cores and 12 threads) or higher
- GPU: NVIDIA Geforce RTX 2080 Ti or higher
- 詳細は [AWSIM document](https://tier4.github.io/AWSIM/) を参照してください

Autoware動作PCとAWSIM動作PCは、同じネットワーク内に配置してください。配置できていれば、基本的には追加設定をすることなく、PC間のトピック通信は可能です。万が一、トピック通信ができなかった場合はファイアーウォールの解除、もしくはルールの見直しをお願いします。また、Autoware Documentation の [Troubleshooting](https://autowarefoundation.github.io/autoware-documentation/main/support/troubleshooting/performance-troubleshooting/)も参考になるかもしれません。
Empty file.
Loading

0 comments on commit 3980329

Please sign in to comment.