نسل بعدی کارت گرافیک‌های انویدیا با معماری Volta در ماه‌های آتی معرفی می‌شود. انویدیا در GTC 2017 بهترین تراشه‌ی گرافیکی نسل بعدی که GV100 است و شاید در محصولاتی مثل GTX 2080 Ti به کار رود را معرفی کرده است. در ادامه با این تراشه‌ی غول‌آسا و بسیار قدرتمند آشنا می‌شویم.

قبل از هر چیز توجه کنید که کارت گرافیک‌های تسلای انویدیا برای محاسبات سنگین و پیچیده طراحی شده‌اند و نه اجرای بازی‌ها. سری بعدی کوآدرو است که برای رندرینگ و امور مهندسی به کار می‌رود و در نهایت به محصولات معمولی می‌رسیم که برای اجرای بازی‌ها طراحی شده‌اند و با وجود قیمت بسیار پایین‌تر، عملکرد عالی در بازی‌ها دارند. اما نکته‌ی مهم این است که تراشه‌ی به کار رفته در محصولات مختلف گاهی یکسان است و صرفاً واحدهای پردازشی غیرفعال شده است.

تراشه‌ی بزرگ‌تر  GV100 با پهنای باند حافظه‌ و قدرت پردازشی بالاتر

تراشه‌ی GV100 جایگزینی برای GP100 است، معماری ولتا به جای معماری پاسکال و تراشه‌ای با مساحت ۸۱۵ میلی‌مترمربع به جای GP100ی که مساحت آن ۶۱۰ میلی‌مترمربع بود. در واقع کمتر کسی انتظار داشت که انویدیا با وجود استفاده از لیتوگرافی ظریف‌تر ۱۲ نانومتری TSMC تایوان، مساحت تراشه را باز هم افزایش دهد! تعداد ترانزیستورهای تراشه‌ی جدید عدد باورنکردنی ۲۱.۱ میلیارد است که به مراتب بیشتر از ۱۵.۳ میلیارد ترانزیستور GP100 است.

تراشه‌ی پرچم‌دار جدید از نظر تعداد هسته‌های CUDA تفاوتی شگرف با پرچم‌‌دار سابق دارد. ۵۳۷۶ هسته به جای ۳۸۴۰ هسته‌ی سابق. حتی اگر عملکرد هر هسته مثل قبل باشد هم انتظار داریم که کارت گرافیک رده‌اول ولتا بسیار قوی‌تر از  Titan Xp باشد. به این ترتیب قدرت پردازش ۱۰.۶ ترافلاپسی کارت گرافیک Tesla P100 می‌تواند به قدرتی در حد ۱۵ ترافلاپس برای Tesla V100‌ تبدیل شود، البته اگر سرعت هسته‌ها دقیقاً بیان شده بود می‌توانستیم عدد دقیق را محاسبه کنیم.

ولتا هم مثل پاسکال در محاسبات اعشاری ۱۶ بیتی قدرت دو برابری دارد و به این ترتیب در اموری مثل یادگیری ماشینی و هوش مصنوعی بسیار سریع است. در محاسبات اعشاری ۶۴ بیتی نیز قدرت پردازشی نصف حالت ۳۲ بیتی است چرا که ۲۶۸۸ هسته‌ی CUDA برای محاسبات اعشاری ۶۴ بیتی موجود است.

حافظه این بار نیز HBM2 است اما سرعت آن افزایش پیدا کرده و پهنای باند حافظه از ۷۲۰ گیگابایت بر ثانیه به ۹۰۰ گیگابایت بر ثانیه افزایش پیدا کرده و مقدار حافظه مثل قبل ۱۶ گیگابایت است چرا که این روزها تولید HBM2 با بیش از ۴ لایه‌ی روی هم متداول نشده است. انویدیا مدعی است که عملکرد حافظه با وجود بهینه‌سازی‌های انجام شده حدود ۵۰ درصد بهتر از نسل قبلی است و نه ۲۵ درصدی که روی کاغذ به آن می‌رسیم. کش L2 برای هر گروه خروجی رندر از ۵۱۲ کیلوبایت به ۷۶۸ کیلوبایت رسیده که منطبق بر تخمین انویدیاست.

هسته‌ای جدید برای پردازش بهینه: Tensor Core

همان‌طور که اشاره شد لیتوگرافی از ۱۶ نانومتر به ۱۲ نانومتر تغییر کرده و تعداد تزانزیستورها بیشتر شده است اما با بررسی ارقام به نظر می‌رسد که افزایش مساحت تراشه غیرمنطقی است مگر آنکه هسته‌هایی جدید و یا کش بسیار بزرگ‌تری در معماری Volta وجود داشته باشد. این حدس کاملاً صحیح است چرا که انویدیا برای اضافه کردن هسته‌هایی خاص مجبور شده که مساحت تراشه را بیشتر کند.

انویدیا هسته‌های جدیدی برای محاسبات خاص در نظر گرفته که Tensor Core نام دارند. این هسته‌ها برای یادگیری عمیق و هوش مصنوعی به کار می‌روند و در معماریشان واحدهای محاسبه و منطق ویژه‌ی اعمال ماتریسی ۴ در ۴ پیاده‌سازی شده است. به عنوان مثال ضرب A و B و جمع با ماتریس C که می‌تواند مقادیر ۱۶ بیتی یا ۳۲ بیتی را دربربگیرد، توسط تنسور کور با سرعتی بالاتر و بهینه‌تر انجام می‌شود. این امور ماتریسی در یادگیری عمیق بسیار کاربردی است و انجام آن توسط یک واحد پردازشی ویژه، کاربری تسلاها در صنایع خودروی خودران، پردازش تصویر، تشخیص گفتار و ... را دوچندان می‌کند.

نسل دوم NVLink به جای PCIe 3.0

انویدیا در نسل جدید کارت گرافیک‌های رده‌اول انویدیا از نسخه‌ی دوم NVLink استفاده کرده است. این واسط ارتباطی استفاده پهنای باند دو طرفه‌ی ۲۵ گیگابایت بر ثانیه دارد که ۲۵ بیشتر از نسل اول آن است. به عبارت دیگر یک مسیر NVLink‌ به تنهایی معادل ۲۵ مسیر PCIe 3.0 است!

برای هر تراشه‌ی گرافیکی ۶ مسیر NVLink استفاده شده و این یعنی پهنای باند واسط ارتباطی به ۱۵۰ گیگابایت بر ثانیه می‌رسد که در سرورهای محاسبه و پردازش سنگین ضروری است.

مقایسه‌ی سریع‌ترین پردازنده‌های گرافیکی انویدیا: GV100 در برابر GP100 و نسل‌های قبلی

در دو جدول زیر مقایسه‌ای بین تراشه‌ی جدید و کارت گرافیک تسلا V100 با تراشه‌ی GP100 و کارت گرافیک Tesla P100 صورت گرفته است:

NVIDIA GPU Specification Comparison
  GV100 GP100 GK110
CUDA Cores 5376 3840 2880
Tensor Cores 672 N/A N/A
SMs 84 60 15
CUDA Cores/SM 64 64 192
Tensor Cores/SM 8 N/A N/A
Texture Units 336 240 240
Memory HBM2 HBM2 GDDR5
Memory Bus Width 4096-bit 4096-bit 384-bit
Shared Memory 128KB, Configurable 24KB L1, 64KB Shared 48KB
L2 Cache 6MB 4MB 1.5MB
Half Precision 2:1 (Vec2) 2:1 (Vec2) 1:1
Double Precision 1:2 1:2 1:3
Die Size 815mm2 610mm2 552mm2
Transistor Count 21.1B 15.3B 7.1B
TDP 300W 300W 235W
Manufacturing Process TSMC 12nm FFN TSMC 16nm FinFET TSMC 28nm
Architecture Volta Pascal Kepler
NVIDIA Tesla Family Specification Comparison
  Tesla V100 Tesla P100 Tesla K40 Tesla M40
Stream Processors 5120 3584 2880 3072
Core Clock ? 1328MHz 745MHz 948MHz
Boost Clock(s) 1455MHz 1480MHz 810MHz, 875MHz 1114MHz
Memory Clock 1.75Gbps HBM2 1.4Gbps HBM2 6Gbps GDDR5 6Gbps GDDR5
Memory Bus Width 4096-bit 4096-bit 384-bit 384-bit
Memory Bandwidth 900GB/sec 720GB/sec 288GB/sec 288GB/sec
VRAM 16GB 16GB 12GB 12GB
Half Precision 30 TFLOPS 21.2 TFLOPS 4.29 TFLOPS 6.8 TFLOPS
Single Precision 15 TFLOPS 10.6 TFLOPS 4.29 TFLOPS 6.8 TFLOPS
Double Precision 8.5 TFLOPS
(1/2 rate)
5.3 TFLOPS
(1/2 rate)
1.43 TFLOPS
(1/3 rate)
213 GFLOPS
(1/32 rate)
GPU GV100
(815mm2)
GP100
(610mm2)
GK110B GM200
Transistor Count 21B 15.3B 7.1B 8B
TDP 300W 300W 235W 250W
Cooling N/A N/A Active/Passive Passive
Manufacturing Process TSMC 12nm FFN TSMC 16nm FinFET TSMC 28nm TSMC 28nm
Architecture Volta Pascal Kepler Maxwell 2