

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Das ARM64 DLAMI
<a name="tutorial-arm64"></a>

AWS ARM64 GPUs DLAMIs sind so konzipiert, dass sie eine hohe Leistung und Kosteneffizienz für Deep-Learning-Workloads bieten. Insbesondere der G5G-Instanztyp verfügt über den ARM64-basierten [AWS Graviton2-Prozessor](https://aws.amazon.com/ec2/graviton/), der von Grund auf neu entwickelt AWS und dafür optimiert wurde, wie Kunden ihre Workloads in der Cloud ausführen. AWS ARM64 DLAMIs Die GPU ist mit Docker, NVIDIA Docker, NVIDIA Driver, CUDA, cuDNN, NCCL sowie beliebten Frameworks für maschinelles Lernen wie und vorkonfiguriert. TensorFlow PyTorch

Mit dem Instance-Typ G5G können Sie die Preis- und Leistungsvorteile von Graviton2 nutzen, um GPU-beschleunigte Deep-Learning-Modelle zu deutlich geringeren Kosten im Vergleich zu x86-basierten Instances mit GPU-Beschleunigung bereitzustellen.

## Wählen Sie ein ARM64 DLAMI
<a name="tutorial-arm64-select-dlami"></a>

Starten Sie eine [G5g-Instance](https://aws.amazon.com/ec2/instance-types/g5g/) mit dem ARM64 DLAMI Ihrer Wahl. 

 step-by-stepAnweisungen zum Starten eines DLAMI finden Sie unter [Starten und Konfigurieren eines](https://docs.aws.amazon.com/dlami/latest/devguide/launch-config.html) DLAMI. 

Eine Liste der neuesten ARM64 DLAMIs Versionen finden Sie in den [Versionshinweisen für DLAMI](https://docs.aws.amazon.com/dlami/latest/devguide/appendix-ami-release-notes.html).

## Erste Schritte
<a name="tutorial-arm64-get-started"></a>

Die folgenden Themen zeigen Ihnen, wie Sie mit der Verwendung des ARM64 DLAMI beginnen können. 

**Topics**
+ [

## Wählen Sie ein ARM64 DLAMI
](#tutorial-arm64-select-dlami)
+ [

## Erste Schritte
](#tutorial-arm64-get-started)
+ [

# Verwenden der ARM64 GPU PyTorch DLAMI
](tutorial-arm64-pytorch.md)

# Verwenden der ARM64 GPU PyTorch DLAMI
<a name="tutorial-arm64-pytorch"></a>

Der AWS Deep Learning AMIs ist sofort einsatzbereit mit dem Arm64-Prozessor und ist optimiert für. GPUs PyTorch Die ARM64 GPU PyTorch DLAMI umfasst eine Python-Umgebung, die mit [PyTorch[TorchVision](https://pytorch.org/vision/stable/index.html)](https://aws.amazon.com/pytorch), und [TorchServe](https://pytorch.org/serve/)für Deep-Learning-Training und Inferenz-Anwendungsfälle vorkonfiguriert ist.

**Topics**
+ [

## PyTorch Python-Umgebung überprüfen
](#tutorial-arm64-pytorch-environment)
+ [

## Trainingsbeispiel ausführen mit PyTorch
](#tutorial-arm64-pytorch-training)
+ [

## Führen Sie ein Inferenzbeispiel aus mit PyTorch
](#tutorial-arm64-pytorch-inference)

## PyTorch Python-Umgebung überprüfen
<a name="tutorial-arm64-pytorch-environment"></a>

Connect zu Ihrer G5g-Instance her und aktivieren Sie die Conda-Basisumgebung mit dem folgenden Befehl:

```
source activate base
```

Ihre Eingabeaufforderung sollte darauf hinweisen, dass Sie in der Conda-Basisumgebung arbeiten, die PyTorch TorchVision, und andere Bibliotheken enthält.

```
(base) $
```

Überprüfen Sie die Standard-Werkzeugpfade der PyTorch Umgebung:

```
(base) $ which python
(base) $ which pip
(base) $ which conda
(base) $ which mamba
>>> import torch, torchvision
>>> torch.__version__
>>> torchvision.__version__
>>> v = torch.autograd.Variable(torch.randn(10, 3, 224, 224))
>>> v = torch.autograd.Variable(torch.randn(10, 3, 224, 224)).cuda()
>>> assert isinstance(v, torch.Tensor)
```

## Trainingsbeispiel ausführen mit PyTorch
<a name="tutorial-arm64-pytorch-training"></a>

Führen Sie einen Beispiel-MNIST-Trainingsjob aus:

```
git clone https://github.com/pytorch/examples.git
cd examples/mnist
python main.py
```

Ihre Ausgabe sollte wie folgt aussehen:

```
...
Train Epoch: 14 [56320/60000 (94%)]    Loss: 0.021424
Train Epoch: 14 [56960/60000 (95%)]    Loss: 0.023695
Train Epoch: 14 [57600/60000 (96%)]    Loss: 0.001973
Train Epoch: 14 [58240/60000 (97%)]    Loss: 0.007121
Train Epoch: 14 [58880/60000 (98%)]    Loss: 0.003717
Train Epoch: 14 [59520/60000 (99%)]    Loss: 0.001729
Test set: Average loss: 0.0275, Accuracy: 9916/10000 (99%)
```

## Führen Sie ein Inferenzbeispiel aus mit PyTorch
<a name="tutorial-arm64-pytorch-inference"></a>

Verwenden Sie die folgenden Befehle, um ein vortrainiertes densenet161-Modell herunterzuladen und die Inferenz auszuführen mit: TorchServe

```
# Set up TorchServe
cd $HOME
git clone https://github.com/pytorch/serve.git
mkdir -p serve/model_store
cd serve

# Download a pre-trained densenet161 model
wget https://download.pytorch.org/models/densenet161-8d451a50.pth >/dev/null

# Save the model using torch-model-archiver
torch-model-archiver --model-name densenet161 \
    --version 1.0 \
    --model-file examples/image_classifier/densenet_161/model.py \
    --serialized-file densenet161-8d451a50.pth \
    --handler image_classifier \
    --extra-files examples/image_classifier/index_to_name.json  \
    --export-path model_store 

# Start the model server
torchserve --start --no-config-snapshots \
    --model-store model_store \
    --models densenet161=densenet161.mar &> torchserve.log

# Wait for the model server to start
sleep 30

# Run a prediction request
curl http://127.0.0.1:8080/predictions/densenet161 -T examples/image_classifier/kitten.jpg
```

Ihre Ausgabe sollte wie folgt aussehen:

```
{
  "tiger_cat": 0.4693363308906555,
  "tabby": 0.4633873701095581,
  "Egyptian_cat": 0.06456123292446136,
  "lynx": 0.0012828150065615773,
  "plastic_bag": 0.00023322898778133094
}
```

Verwenden Sie die folgenden Befehle, um die Registrierung des densenet161-Modells aufzuheben und den Server anzuhalten:

```
curl -X DELETE http://localhost:8081/models/densenet161/1.0
torchserve --stop
```

Ihre Ausgabe sollte wie folgt aussehen:

```
{
  "status": "Model \"densenet161\" unregistered"
}
TorchServe has stopped.
```