مقالات و اخبار تکنولوژی
آشنایی با هسته CUDA
اگر مشخصات کارت های گرافیک انویدیا را دیده باشید، احتمالا تعداد هسته های CUDA یکی از اولین اعدادی است که توجهتان را جلب می کند. این عدد در مدل های مختلف از ۱۵۳۶ هسته در GTX 1660 Ti تا بیش از ۲۱ هزار هسته در RTX 5090 متغیر است. اما هرچه تعداد هسته های CUDA بیشتر باشد، قرار نیست کارت گرافیک هم قوی تر شود.
دلیلش این است که عملکرد هسته های CUDA به معماری کارت گرافیک هم بستگی دارد. برای مثال، هر هسته CUDA در معماری Ampere قدرت پردازش FP32 بیشتری نسبت به نسل قبل دارد. بنابراین مقایسه دو کارت گرافیک فقط بر اساس تعداد هسته های CUDA، بدون در نظر گرفتن نسل و معماری، می تواند نتیجه اشتباهی به همراه داشته باشد.
در ادامه بررسی می کنیم هسته CUDA چیست، چه وظیفه ای دارد، چگونه با واحدهای SM و Warp کار می کند، چه تفاوتی با Tensor Core و RT Core دارد و چرا هنگام خرید کارت گرافیک نباید فقط به تعداد هسته های CUDA توجه کرد.
هسته CUDA چیست؟
هسته CUDA یک واحد پردازشی کوچک داخل پردازنده گرافیکی (GPU) انویدیا است که وظیفه انجام محاسبات مختلف را بر عهده دارد. این محاسبات پایه بسیاری از پردازش ها مانند اجرای بازی، رندر سه بعدی، پردازش تصویر، هوش مصنوعی و نرم افزارهای مهندسی هستند.
نکته ای که معمولا باعث اشتباه می شود، تفاوت بین CUDA و هسته CUDA است. CUDA که مخفف Compute Unified Device Architecture است، پلتفرم و مدل برنامه نویسی انویدیا محسوب می شود و از سال ۲۰۰۶ به توسعه دهندگان اجازه می دهد از توان پردازشی کارت های گرافیک استفاده کنند. در مقابل، هسته CUDA همان واحد سخت افزاری داخل GPU است که این دستورها را اجرا می کند.
برای مثال، اگر یک کارت گرافیک ۳۵۸۴ هسته CUDA داشته باشد، یعنی هزاران واحد پردازشی کوچک به صورت هم زمان روی بخش های مختلف یک پردازش کار می کنند. هر هسته به تنهایی فقط عملیات ساده ای مانند جمع، ضرب یا سایر محاسبات پایه را انجام می دهد، اما وقتی هزاران هسته به طور هم زمان روی حجم زیادی از داده ها کار می کنند، قدرت واقعی پردازش موازی کارت گرافیک مشخص می شود. به همین دلیل، GPU در کارهایی مانند رندر سه بعدی، پردازش ویدئو، شبیه سازی و اجرای مدل های هوش مصنوعی عملکرد بسیار خوبی دارد.
هسته های CUDA چگونه کار می کنند؟
هسته های CUDA به صورت مستقل داخل پردازنده گرافیکی (GPU) کار نمی کنند، بلکه در واحدهای بزرگ تری به نام Streaming Multiprocessor (SM) قرار می گیرند. هر SM مجموعه ای از هسته های CUDA، حافظه اشتراکی (Shared Memory)، حافظه کش L1 و واحدهای زمان بندی را در خود جای داده و وظیفه مدیریت اجرای پردازش ها را بر عهده دارد.
زمانی که کارت گرافیک یک پردازش را دریافت می کند، آن را به تعداد زیادی Thread تقسیم می کند. این Threadها در گروه های ۳۲ تایی به نام Warp سازمان دهی می شوند. تمام Threadهای یک Warp یک دستور یکسان را به صورت هم زمان روی داده های متفاوت اجرا می کنند. این مدل پردازش با نام SIMT (Single Instruction, Multiple Threads) شناخته می شود و یکی از مهم ترین دلایل سرعت بالای پردازنده های گرافیکی در پردازش های موازی است.
در عمل، عملکرد یک کارت گرافیک فقط به تعداد هسته های CUDA وابسته نیست. تعداد واحدهای SM، نحوه سازمان دهی هسته ها و معماری هر نسل نیز نقش مهمی در توان پردازشی GPU دارند. به همین دلیل، دو کارت گرافیک با تعداد هسته های CUDA نزدیک به هم، لزوما عملکرد یکسانی نخواهند داشت.
برای نمونه، معماری Turing در هر واحد SM دارای ۶۴ هسته FP32 و ۶۴ هسته INT32 مجزا بود، اما انویدیا از معماری Ampere طراحی SM را تغییر داد تا توان پردازش FP32 افزایش پیدا کند. همین تغییر باعث شد کارت های گرافیک Ampere با وجود تعداد هسته های مشابه، در بسیاری از پردازش ها عملکرد بهتری نسبت به نسل قبل داشته باشند.
تاثیر هسته های کودا در حوزه های مختلف کاربری

بعضی پردازش ها مانند رندر سه بعدی و محاسبات موازی، این هسته ها نقش اصلی را دارند؛ اما در برخی کاربردها، واحدهای دیگری مانند Tensor Core، RT Core یا NVENC تاثیر بیشتری روی نتیجه نهایی می گذارند.
گیمینگ
در بازی های سنتی که از رندر رستری استفاده می کنند، هسته های CUDA یکی از مهم ترین عوامل تعیین کننده عملکرد کارت گرافیک هستند. محاسبات مربوط به شیدینگ، پردازش هندسه، نورپردازی و بسیاری از عملیات گرافیکی روی این هسته ها انجام می شود.
به همین دلیل، در کارت هایی با معماری مشابه، افزایش تعداد هسته های CUDA معمولا باعث افزایش قدرت پردازشی و فریم ریت بالاتر می شود. اما در بازی های جدید که از Ray Tracing و DLSS استفاده می کنند، تعداد CUDA Core دیگر تنها معیار مهم نیست. در این شرایط، RT Core برای پردازش نورپردازی و Tensor Core برای فناوری هایی مانند DLSS نقش مهمی پیدا می کنند.
ماینینگ
در سال های گذشته، تعداد هسته های CUDA یکی از عوامل مهم در عملکرد کارت های گرافیک انویدیا برای استخراج ارز دیجیتال بود. قدرت پردازشی بالاتر GPU می توانست نرخ هش بیشتری ایجاد کند.
اما با تغییر شرایط بازار و انتقال اتریوم به مدل Proof of Stake در سال ۲۰۲۲، نقش ماینینگ با کارت گرافیک بسیار محدودتر شد. امروزه سودآوری استخراج بیشتر به عواملی مانند نوع ارز، مصرف برق، قیمت تجهیزات و وجود دستگاه های اختصاصی ASIC وابسته است. بنابراین خرید کارت گرافیک صرفا بر اساس تعداد CUDA Core برای ماینینگ تصمیم درستی نیست.
تریدینگ و تحلیل داده
در معاملات معمولی مانند مشاهده نمودارها، استفاده از TradingView یا اجرای اندیکاتورهای رایج، هسته های CUDA تاثیر قابل توجهی ندارند؛ زیرا بیشتر این نرم افزارها به توان پردازشی GPU وابسته نیستند.
اما در حوزه های تخصصی مانند معاملات الگوریتمی، تحلیل داده های حجیم و مدل های یادگیری ماشین، GPU می تواند نقش مهمی داشته باشد. در این کاربردها، تعداد CUDA Core در کنار مقدار VRAM و معماری GPU می تواند سرعت پردازش مدل ها و محاسبات موازی را افزایش دهد.
استفاده از GPU در تحلیل داده و معاملات الگوریتمی صرفا یک کاربرد فنی است و به معنی توصیه برای سرمایه گذاری یا پیش بینی بازار نیست.
استریم و تولید محتوا
در استریم، برخلاف تصور بسیاری از کاربران، عامل اصلی کیفیت خروجی تعداد هسته های CUDA نیست. این وظیفه بیشتر بر عهده NVENC، یعنی انکودر سخت افزاری ویدئو در کارت های گرافیک انویدیا، قرار دارد.
نسل های جدید NVENC، به خصوص در کارت های RTX جدیدتر با پشتیبانی از فرمت AV1، می توانند کیفیت تصویر بهتری را با مصرف منابع کمتر ارائه دهند. به همین دلیل ممکن است یک کارت RTX با تعداد CUDA Core کمتر اما انکودر ویدئوی جدیدتر، برای استریم انتخاب بهتری از یک کارت قدیمی تر با هسته های بیشتر باشد.
هسته های CUDA در استریم زمانی اهمیت بیشتری پیدا می کنند که کاربر هم زمان از افکت های پردازشی سنگین، رندر زنده، حذف پس زمینه با هوش مصنوعی یا فیلترهای گرافیکی استفاده کند.
تفاوت هسته CUDA با Tensor Core و RT Core
در کارت های گرافیک جدید انویدیا، همه هسته ها وظیفه یکسانی ندارند. CUDA Core، Tensor Core و RT Core هرکدام برای نوع خاصی از پردازش طراحی شده اند. هسته های CUDA وظیفه اصلی پردازش های عمومی GPU را بر عهده دارند، اما Tensor Core و RT Core برای انجام محاسبات تخصصی تر به وجود آمده اند.
به زبان ساده، CUDA Core همان بخش اصلی پردازش موازی کارت گرافیک است که در رندر سنتی، محاسبات گرافیکی و بسیاری از پردازش های عمومی استفاده می شود. اما وقتی پای هوش مصنوعی، یادگیری عمیق یا Ray Tracing به میان می آید، هسته های اختصاصی Tensor و RT وارد عمل می شوند و کارهایی را انجام می دهند که CUDA Core برای آن ها بهینه نشده است.
| ویژگی | CUDA Core | Tensor Core | RT Core |
| کاربرد اصلی | پردازش عمومی و رندر سنتی | هوش مصنوعی و محاسبات ماتریسی | Ray Tracing و محاسبه مسیر نور |
| اولین معرفی | نسل های اولیه GPU انویدیا | معماری Volta (2017) | معماری Turing (2018) |
| استفاده اصلی | بازی، رندر، محاسبات عمومی | DLSS، مدل های AI، یادگیری عمیق | نورپردازی واقع گرایانه و سایه ها |
| نوع پردازش | عملیات عمومی FP32 و INT32 | عملیات ماتریسی با حجم بالا | محاسبات برخورد پرتو نور با اجسام |
| در کارت های GTX | دارد | ندارد | ندارد |
| در کارت های RTX | دارد | دارد | دارد |
سخن پایانی
تعداد هسته های CUDA یکی از مهم ترین مشخصات کارت گرافیک است، اما به تنهایی نمی تواند قدرت واقعی یک GPU را مشخص کند. معماری، تعداد واحدهای SM، مقدار VRAM و وجود هسته های اختصاصی مانند Tensor Core و RT Core هم در عملکرد نهایی تاثیر زیادی دارند.
در نهایت، هنگام خرید کارت گرافیک نباید فقط به عدد CUDA Core توجه کرد. مهم این است که بدانید کارت مورد نظر برای چه کاری استفاده می شود؛ گیمینگ، رندر، هوش مصنوعی یا استریم. ترکیب تعداد هسته ها، معماری و قابلیت های اختصاصی کارت است که ارزش واقعی آن را مشخص می کند.
پرسش های متداول
آیا تعداد هسته CUDA بیشتر همیشه یعنی کارت گرافیک قوی تر است؟
خیر. تعداد هسته CUDA فقط یکی از عوامل تعیین کننده عملکرد کارت گرافیک است. معماری GPU، فرکانس کاری، تعداد واحدهای SM، مقدار VRAM و فناوری های اختصاصی مانند Tensor Core و RT Core هم تاثیر زیادی دارند. به همین دلیل، دو کارت با تعداد CUDA مشابه می توانند عملکرد متفاوتی ارائه دهند.
چند هسته CUDA برای گیمینگ کافی است؟
عدد مشخصی برای همه بازی ها وجود ندارد، چون عملکرد نهایی به معماری کارت، رزولوشن، تنظیمات گرافیکی و فناوری هایی مانند DLSS و Ray Tracing بستگی دارد. برای بازی های 1080p یک کارت میان رده جدید معمولا کافی است، اما برای رزولوشن های بالاتر یا فعال کردن قابلیت های جدید، معماری جدیدتر و قدرت کلی GPU اهمیت بیشتری از تعداد CUDA Core دارد.
تفاوت هسته CUDA در نسخه لپ تاپ و دسکتاپ یک کارت گرافیک چیست؟
هسته های CUDA در هر دو نسخه از یک معماری مشابه استفاده می کنند، اما نسخه لپ تاپ معمولا به دلیل محدودیت توان مصرفی و سیستم خنک کننده، فرکانس پایین تر یا توان پردازشی محدودتری دارد. به همین دلیل، حتی اگر نام دو کارت یکسان باشد، نسخه دسکتاپ معمولا عملکرد بالاتری ارائه می دهد.
چطور بفهمم کارت گرافیک من چند هسته CUDA دارد؟
مدل دقیق کارت گرافیک را می توانید از طریق Device Manager ویندوز یا ابزارهایی مانند GPU-Z پیدا کنید. سپس با مراجعه به مشخصات رسمی انویدیا می توانید تعداد CUDA Core، Tensor Core و RT Core مدل مورد نظر را بررسی کنید.
آیا کارت های گرافیک AMD هم هسته CUDA دارند؟
خیر. CUDA فناوری اختصاصی انویدیا است و در کارت های AMD و Intel وجود ندارد. کارت های AMD از واحدهای پردازشی مخصوص خود استفاده می کنند که از نظر هدف کلی مشابه هستند، اما معماری و نحوه عملکرد آن ها با CUDA Core یکسان نیست.
برای هوش مصنوعی، تعداد هسته CUDA مهم تر است یا مقدار VRAM؟
هر دو اهمیت دارند، اما در بسیاری از پروژه های هوش مصنوعی، VRAM ابتدا محدودیت ایجاد می کند. اگر حافظه کارت برای اجرای مدل کافی نباشد، تعداد بالای CUDA Core هم کمکی نمی کند. پس معمولا ابتدا باید ظرفیت VRAM را بررسی کرد و سپس قدرت پردازشی CUDA و Tensor Core را در نظر گرفت.