از بس که خراب تو شدم، آبادم.
این هسته اون هسته نیست
اگر با کارت گرافیک GeForce کار کرده باشید احتمالا عبارت CUDA به چشمتون خورده . اما مفهوم اون چیه؟
هسته های CUDA چی هستن؟
ِکودا مخفف Compute Unified Device Architecture هست. این هستههای پردازندههای گرافیکی انویدیا معادل با هستههای CPU هستند که برای انجام محاسبات همزمان طراحی شدهاند، که وقتی یک بازی گرافیکی یا برنامه پردازشی سنگین مانند برنامه های پردازش تصویر را انجام میدهید بسیار مهم است.
یک CUDA Core بسیار شبیه به یک CPU Core است.هرچند یک هسته کودا به اندازه یه هسته cpu توسعه نیافته است اما به تعداد بالا قابل پیاده سازی هستند.برای انجام یک بازی با CPU استاندارد از حداکثر 16 هسته میتوانید استفاده کنید، در حالی که هستههای CUDA به راحتی میتوانند به صدها هسته مورد استفاده قرار گیرند.
هسته های CUDA میتوانند به هزاران عدد برسند که هدف انها انجام محاسبات موازی کارآمد و سریع است که به این معنی است که دادههای بیشتری را میتوان به صورت موازی پردازش کرد.
هستههای CUDA فقط در پردازندههای گرافیکی Nvidia از سری G8X به بعد، از جمله GeForce، Quadro و Telsa یافت میشوند. با اکثر سیستم عامل ها سازگار است.
قابل ذکر است که AMD نیز فناوری خاص خود را دارد، یعنی پردازنده های جریانی (Stream Processor). در حالی که از نظر معماری و طراحی متفاوت هستند اما هر دو CUDA و Stream Processor به یک چیز دست می یابند، و هیچ مزیت بزرگی برای هر دو فناوری در مورد عملکرد یا کیفیت گرافیک وجود ندارد.
اهمیت CUDA
می دانیم که CPU مغز رایانه است، کل رایانه را کنترل می کند و طبق دستورالعمل های نرم افزاری که روی رایانه اجرا می شود به اجزای رایانه می گوید که چه کاری انجام دهند.
به همین صورت GPU در رایانه شخصی برای ایجاد تصاویر روی صفحه، از منوی شروع به کار گرفته تا صحنه نهایی در یک بازی استفاده می شود. پردازش گرافیکی به محاسبات پیچیده زیادی نیاز دارد، به همین دلیل است که بسیاری از هستههای CUDA در پردازندههای گرافیکی تعبیه میشوند، زیرا به اجرای روان همه چیز کمک میکنند.
بعلاوه، هستههای CUDA میتوانند در اندازههای بسیار کوچکتری نسبت به هستههای CPU عرضه شوند، زیرا آنها بهطور خاص برای این منظور بهینهسازی شدهاند، که اجازه میدهد حتی تعداد بیشتری را در رایانه شخصی قرار دهید.
به چه تعداد هسته CUDA نیاز دارید؟
پیش بینی نوع عملکردی که از یک قطعه سخت افزاری به دست می آورید دشوار است حتی اگر مشخصات دقیق آن را بدانید، به همین دلیل است که توصیه تعداد مجموعه ای از هسته های CUDA دشوار است. سایر اجزای رایانه نیز بر عملکرد تأثیر می گذارند، مانند ظرفیت VRAM و نوع CPU رایانه شما.
با این وجود benchmark هایی وجود دارند که میتوانند راهنمایی های لازم را برای شما انجام دهند و با توجه به نیاز پردازشی و بودجه مالی بهترین پیشنهادات را برای شما فراهم آورند.
مطلبی دیگر از این انتشارات
پای پای
مطلبی دیگر از این انتشارات
اندر خم join زدن با پایتون
مطلبی دیگر از این انتشارات
کاربرد Assert در پایتون