اگر برنامهنویس C++ هستید و برای رسیدن به حداکثر سرعت GPU، ساعتها وقت صرف مدیریت دستی رشتهها (Threads) میکنید، خبر خوب این است که این دوران به پایان رسیده است. حالا دیگر نیازی نیست برای رسیدن به پیکِ عملکرد، تکتک وظایف هر رشته را به صورت دستی کدنویسی کنید.
تا پیش از این، توسعهدهندگان از مدل SIMT (Single Instruction, Multiple Threads) استفاده میکردند؛ یعنی هر رشته باید دقیقاً میدانست چه کاری انجام دهد. این کار شبیه مدیریت ارتشی از هزاران کارگر است که هر کدام باید دقیقاً بدانند چه پیچ را بچرخانند. همانطور که در تحلیلهای پیشین ما دربارهی بهینهسازی سختافزاری مدلهای زبانی اشاره کردیم، پیچیدگی این مدیریت همیشه مانع سرعت پیشرفت بوده است.
طبق اعلام انویدیا (NVIDIA) در ۲۶ مه ۲۰۲۶، ابزار CUDA Tile C++ وارد میدان شده است. این سیستم دادهها را به جای تکتک عناصر، به صورت آرایههای چندبعدی یا «کاشی» (Tiles) میبیند. این رویکرد — مثل این است که به جای دستور دادن به تکتک کارگران، کل پروژه را به بلوکهای آماده تقسیم کنید و به هر تیم بسپارید. بر اساس مستندات developer.nvidia.com، این لایه جدید به طور خودکار هستههای تنسور و شتابدهندههای حافظه مشترک را هدف قرار میدهد.
اجزای فنی کلیدی این بهروزرسانی عبارتاند از:
- tensor_span: اشارهگری به آرایههای چندبعدی، شبیه به std::mdspan در C++23.
- partition_view: پوششی که آرایهها را به تکههای با اندازه ثابت و بدون همپوشانی تقسیم میکند.
- ct::mma: تابعی تخصصی برای انجام ضرب ماتریسی و تجمع (Matrix Multiplication and Accumulation).
برای اجرای این هستهها، شما به یک GPU با قابلیت محاسباتی ۸.۰ (معماری Ampere) یا جدیدتر و درایور NVIDIA R580 به بعد نیاز دارید.

این تغییر یعنی توسعهدهندگان دیگر درگیر لولهکشی سختافزاری نمیشوند. انویدیا با انتزاع جزئیات سختافزاری، بدهی فنی (Technical Debt) مربوط به انتقال کدها به معماریهای جدید را کاهش میدهد. شما میتوانید یک بار کد را بنویسید و اجازه دهید کامپایلر آن را برای جدیدترین سختافزارها بهینه کند.
گام بعدی شما
- هنگام کامپایل با nvcc، از پرچمهای
-std=c++20و--enable-tileاستفاده کنید. - برای بررسی آمار کاشیها و اندازه بلوکهای انتخابشده توسط کامپایلر، از NVIDIA Nsight Compute استفاده کنید.
- کدهای قدیمی SIMT خود را با ساختار جدید Tile-based بازنویسی کنید تا بهرهوری حافظه را افزایش دهید.
اما این تغییر در نرمافزار، تنها بخشی از استراتژی انویدیا برای تسلط بر بازار است؛ برای درک سختافزاری این تحول، تحلیل ما دربارهی تراشههای Blackwell را بخوانید.



گفتگو