TOPS i TFLOPS w Kontekście Użycia GPU do Wnioskowania i Szkolenia

TOPS i TFLOPS w Kontekście Użycia GPU do Wnioskowania i Szkolenia

W obliczeniach wysokowydajnych, zwłaszcza w kontekście sztucznej inteligencji (AI) i uczenia maszynowego (ML), wskaźniki wydajności takie jak TOPS (Tera Operations Per Second) i Teraflops (Tera Floating Point Operations Per Second) odgrywają kluczową rolę. W tym artykule omówimy, co oznaczają te miary, jak są używane w kontekście GPU do wnioskowania i szkolenia, a także porównamy dwie potężne karty graficzne: NVIDIA RTX 3090 i RTX 4090. Dodatkowo, poruszymy temat wydajności w TOPS w innych urządzeniach, takich jak procesory i FPGA oraz ile TOPS jest wymagane do wygodnego wnioskowania z modelami językowymi.

TOPS i TFLOPS

TOPS mierzy ogólną liczbę operacji wykonywanych na sekundę, niezależnie od rodzaju operacji. Teraflops natomiast mierzy liczbę operacji zmiennoprzecinkowych na sekundę. W kontekście AI i ML, różne poziomy precyzji obliczeń mają znaczenie:

  • FP32 (32-bit float): Wysoka precyzja, używana w naukowych i inżynieryjnych obliczeniach.
  • FP16 (16-bit float): Mniejsza precyzja, ale wyższa wydajność, często używana w głębokim uczeniu.
  • INT8 (8-bit integer): Bardzo wysoka wydajność, niższa precyzja, idealna do wnioskowania w AI.

Wydajność GPU: RTX 3090 vs RTX 4090

Karty graficzne NVIDIA RTX 3090 i RTX 4090 są doskonałymi przykładami wysokowydajnych GPU, które różnią się znacząco pod względem wydajności w TOPS i Teraflops.

RTX 3090
  • Architektura: Ampere
  • FP16 (Tensor TFLOPS): 119 TFLOPS (czyli 119 TOPS)
  • INT8 (Tensor TOPS): 238 TOPS
RTX 4090
  • Architektura: Ada Lovelace
  • FP16 (Tensor TFLOPS): 650 TFLOPS (czyli 650 TOPS)
  • INT8 (Tensor TOPS): 1300 TOPS

Wnioskowanie vs Szkolenie

W kontekście AI, wnioskowanie i szkolenie to dwa różne etapy pracy z modelami:

  1. Wnioskowanie (Inference):
    • Proces zastosowania wytrenowanego modelu do nowych danych.
    • Kluczowa jest tutaj wysoka wydajność w TOPS, zwłaszcza dla operacji INT8 i FP16, które są mniej wymagające pod względem precyzji, ale wymagają wysokiej przepustowości.
  2. Szkolenie (Training):
    • Proces dostosowywania wag modelu na podstawie danych treningowych.
    • Wymaga większej precyzji (FP32, FP16), co przekłada się na wysokie wartości Teraflops.

Wydajność TOPS w Procesorach i Innych Urządzeniach

Chociaż GPU są dominującym wyborem w kontekście AI i ML ze względu na ich równoległą architekturę, procesory (CPU) i inne specjalistyczne układy (np. FPGA – Field-Programmable Gate Arrays) również odgrywają ważną rolę.

Przykłady

  1. Intel Stratix 10 NX FPGA:
    • INT8 TOPS: Do 143 TOPS
    • INT4 TOPS: Do 286 TOPS
    • FP16 TFLOPS: Do 143 TFLOPS
    • Architektura: AI Tensor Blocks, które umożliwiają elastyczne i wydajne przetwarzanie operacji AI dzięki możliwości konfigurowania zasobów FPGA zgodnie z wymaganiami aplikacji​​.
  2. TPU (Tensor Processing Unit) v4:
    • INT8 TOPS: Do 275 TOPS
    • Używane głównie przez Google w kontekście ich usług AI.
  3. CPU (Central Processing Unit):
    • Nowoczesne procesory, takie jak Intel Xeon lub AMD EPYC, są mniej wydajne w TOPS w porównaniu do GPU i FPGA, ale nadal ważne w zastosowaniach wymagających dużej precyzji i mocy obliczeniowej.

Wydajność TOPS w Wnioskowaniu z Modelami Językowymi

Wydajność wymagana do wnioskowania z dużymi modelami językowymi, takimi jak LLaMA i Mistral, może się znacznie różnić w zależności od wielkości modelu i skomplikowania zadania.

Szacowanie Wymagań TOPS:

Wydajność wnioskowania, mierzona w tokenach na sekundę, może być przeliczona na wymagania w TOPS. Załóżmy, że minimalna wydajność do wygodnej pracy to 5-10 tokenów na sekundę.

  1. LLaMA 7B:
    • Przy wnioskowaniu, LLaMA 7B osiąga około 90 tokenów na sekundę przy użyciu GPU RTX 3090, który oferuje około 238 TOPS w INT8​ (NVIDIA Developer)​.
    • Dla osiągnięcia 10 tokenów na sekundę: 238 TOPS / 90 tokenów na sekundę = ~2.64 TOPS na token na sekundę.**
    • Zatem do osiągnięcia 10 tokenów na sekundę potrzeba około 26.4 TOPS.
  2. Mistral 7B:
    • Mistral 7B w benchmarkach osiąga podobną wydajność co LLaMA 7B, co sugeruje podobne wymagania w TOPS.
    • Dla osiągnięcia 10 tokenów na sekundę potrzeba również około 26.4 TOPS.**

**Należy pamiętać, że te wartości są przybliżone i mogą się różnić w zależności od innych czynników, takich jak ustawienia hiperparametrów i specyficzne optymalizacje modelu.

Źródła

  • Dokumentacja NVIDIA Ampere GA102 GPU Architecture
  • Specyfikacje kart graficznych NVIDIA RTX 3090 i RTX 4090
  • Dokumentacja Intel Stratix 10 NX FPGA
  • Dane techniczne TPU v4
  • Analiza benchmarków Mistral 7B i LLaMA 2 7B​ 

Dodaj komentarz

12 + dwanaście =