واحد پردازش عصبی (NPU) مخفف عبارت Neural Processing Unit و نوعی پردازنده تخصصی است که برای شتابدهی به الگوریتمهای یادگیری ماشین طراحی شده است. این واحدهای پردازشی به طور گستردهای در گوشیهای هوشمند، تبلتها و سایر دستگاههایی که وظایف مربوط به هوش مصنوعی مانند تشخیص تصویر، تشخیص صدا و ترجمه زبان را انجام میدهند، مورد استفاده قرار میگیرند.
NPUها با پردازندههای مرکزی (CPU) و واحدهای پردازش گرافیکی (GPU) که برای اهداف عمومی طراحی شدهاند، متفاوت هستند. NPUها به طور خاص برای انجام محاسبات ماتریسی و برداری استفاده میشوند که برای الگوریتمهای یادگیری ماشین رایج هستند. این رویکرد به آنها اجازه میدهد تا وظایف مربوط به هوش مصنوعی را با کارایی بیشتر و مصرف انرژی بهینهتر از CPUها یا GPUها انجام دهند.
NPU چگونه کار میکند؟
NPUها با دریافت دادهها مانند تصاویر، متن یا صدا از حافظه یا سایر دستگاهها، کار خود را آغاز میکنند. سپس دادهها را برای پردازش توسط الگوریتمهای یادگیری ماشین آماده میکنند. این مرحله شامل مواردی مانند مقیاسبندی دادهها، تبدیل فرمت و یکپارچهسازی دادهها میشود.
در مرحله بعد، NPU الگوریتمهای یادگیری ماشین را روی دادهها اجرا میکند. این مرحله شامل محاسبات پیچیده ماتریسی، فعالسازیهای عصبی و استخراج ویژگیها میشود.
در نهایت، NPU نتایج را به صورت طبقهبندی تصویر، تشخیص صدا یا ترجمه زبان ارائه میدهد.
مزایای واحد پردازش عصبی (NPU)
NPUها مزایای متعددی را برای دستگاههای دارای هوش مصنوعی ارائه میدهند که به طور خلاصه در اینجا آمده است:
افزایش عملکرد
NPUها برای انجام محاسبات ماتریسی و برداری که در الگوریتمهای یادگیری ماشین رایج هستند، بهینهسازی شدهاند. این معماری اختصاصی به آنها اجازه میدهد تا وظایف مربوط به هوش مصنوعی را به طور قابل توجهی سریعتر از CPUها یا GPUها انجام دهند.
به عنوان مثال، NPU میتواند وظایف پردازش تصویر مانند تشخیص چهره یا اشیاء را تا چندین برابر سریعتر از CPU انجام دهد. این امر منجر به تجربهای روانتر و پاسخگویی سریعتر برای برنامههای هوش مصنوعی میشود.
مصرف انرژی کمتر
علاوه بر افزایش سرعت، NPUها به طور خاص برای کارایی انرژی نیز طراحی شدهاند. برخلاف CPUها و GPUها که برای انجام طیف گستردهای از وظایف و کاربردهای عمومی طراحی شدهاند، NPUها فقط روی محاسبات مورد نیاز برای الگوریتمهای یادگیری ماشین تمرکز دارند. این امر به آنها اجازه میدهد تا با مصرف برق کمتر، عملکرد بهتری ارائه دهند.
مصرف انرژی کمتر NPU به طور خاص برای دستگاههای قابل حمل مانند گوشیهای هوشمند و تبلتها که عمر باتری محدودی دارند، بسیار مفید است. NPUها میتوانند به افزایش طول عمر باتری در حین استفاده از برنامههای هوش مصنوعی کمک کنند.
کاهش تأخیر در پردازش هوش مصنوعی
یکی از مزایای کلیدی NPUها، کاهش قابل توجه تأخیر در وظایف مربوط به هوش مصنوعی است. تأخیر به زمان بین ارسال درخواست به یک سیستم هوش مصنوعی و دریافت پاسخ اشاره دارد.
کاهش تأخیر برای برنامههایی که به زمان پاسخگویی سریع نیاز دارند، مانند رانندگی خودکار یا واقعیت مجازی، بسیار مهم است. NPUها با پردازش سریعتر دادهها و الگوریتمها، تأخیر را به طور قابل توجهی کاهش میدهند و تجربهای روانتر و همهجانبهتر را برای کاربران فراهم میکنند.
هوش مصنوعی در دسترستر
کاهش هزینه و افزایش کارایی NPUها، هوش مصنوعی را برای طیف گستردهتری از دستگاهها و کاربران در دسترستر میکند.
با ادغام NPUها در دستگاههای بیشتری، شاهد نوآوریها و برنامههای کاربردی هوش مصنوعی جدید و هیجانانگیزی خواهیم بود که قبلاً امکانپذیر نبوده است.
ساختار واحد پردازش عصبی (NPU)
NPUها از تعدادی واحد پردازشی مجزا تشکیل شدهاند که هر کدام وظایف خاص خود را انجام میدهند. اجزای اصلی NPU عبارتند از:
هستههای ماتریس: این هستهها برای انجام محاسبات ماتریسی و برداری که در الگوریتمهای یادگیری ماشین رایج هستند، بهینهسازی شدهاند.
واحدهای حافظه پنهان: این واحدها دادهها و دستورالعملها را به سرعت در دسترس هستههای ماتریس قرار میدهند تا از اتلاف زمان جلوگیری شود.
کنترلر حافظه: این کنترلر دسترسی به حافظه سیستم را مدیریت میکند و اطمینان میدهد که هستههای ماتریس به دادههای مورد نیاز خود دسترسی دارند.
رابطها: این رابطها به NPU اجازه میدهند تا با سایر اجزای سیستم مانند CPU، GPU و حافظه ارتباط برقرار کند.
اجزای کلیدی واحد پردازش عصبی (NPU)
در اینجا به برخی از اجزای کلیدی NPU و عملکرد آنها میپردازیم:
هستههای ماتریس
هستههای ماتریس قلب NPU هستند. آنها از واحدهای پردازش (ALU) و ضربکنندههای ماتریسی (MAC) تشکیل شدهاند که برای انجام محاسبات پیچیده مورد نیاز الگوریتمهای یادگیری ماشین بهینه شدهاند.
هستههای ماتریس میتوانند عملیات ماتریسی مانند ضرب ماتریس، جمع ماتریس و فعالسازی عصبی را به طور کارآمد انجام دهند. این عملیات برای وظایف مختلف هوش مصنوعی مانند تشخیص تصویر، تشخیص گفتار و ترجمه زبان ضروری است.
واحدهای حافظه پنهان
واحدهای حافظه پنهان دادهها و دستورالعملها را به سرعت در دسترس هستههای ماتریس قرار میدهند تا از اتلاف زمان جلوگیری شود.
حافظه پنهان نوعی حافظه پرسرعت است که در نزدیکی هستههای ماتریس قرار دارد. این امر به هستهها اجازه میدهد تا به دادهها و دستورالعملهای مورد نیاز خود بدون نیاز به دسترسی به حافظه سیستم آهستهتر، دسترسی داشته باشند.
کنترلر حافظه
کنترلر حافظه دسترسی به حافظه سیستم را مدیریت میکند و اطمینان میدهد که هستههای ماتریس به دادههای مورد نیاز خود دسترسی دارند.
کنترلر حافظه وظایف مختلفی مانند ترجمه آدرس، زمانبندی درخواست حافظه و مدیریت ترافیک حافظه را انجام میدهد.
رابطها
رابطها به NPU اجازه میدهند تا با سایر اجزای سیستم مانند CPU، GPU و حافظه ارتباط برقرار کند.
رابطها از پروتکلهای مختلف ارتباطی مانند PCI Express و AXI استفاده میکنند تا دادهها و دستورالعملها را به طور کارآمد منتقل کنند.
شباهتها و تفاوتهای NPU با CPU و GPU
شباهتها
- پردازشگر: هر سه نوع NPU، CPU و GPU پردازندههایی هستند که میتوانند محاسبات را انجام دهند.
- نقش در دستگاههای الکترونیکی: هر سه نوع در دستگاههای مختلف مانند گوشیهای هوشمند، تبلتها، لپتاپها و سرورها استفاده میشوند.
تفاوتها
- معماری:
- CPU: معماری عمومی دارد و برای انجام طیف گستردهای از وظایف طراحی شده است. به عنوان مثال، میتواند برنامهها را اجرا کند، به مرور وب کمک و اسناد را ویرایش کند.
- GPU: معماری موازی دارد و برای پردازش گرافیکی و وظایف محاسباتی سنگین بهینهسازی شده است. این ساختار به آنها قدرت میدهد تا وظایف بصری مانند ویرایش ویدیو، بازیهای سهبعدی و طراحی گرافیک را به طور روان انجام دهند.
- NPU: معماری تخصصی دارد و برای شتابدهی به الگوریتمهای یادگیری ماشین، موتور محرک هوش مصنوعی، طراحی شده است. NPUها میتوانند وظایف مربوط به هوش مصنوعی مانند تشخیص چهره، تشخیص گفتار و ترجمه زبان را به طور قابل توجهی سریعتر از CPUها یا GPUهای سنتی انجام دهند.
- نقاط قوت:
- CPU: در انجام وظایف کلی مانند اجرای برنامهها، وبگردی و کار با اسناد خوب است.
- GPU: در پردازش گرافیکی و وظایف محاسباتی سنگین مانند ویرایش ویدیو و بازیهای سهبعدی عالی است.
- NPU: در انجام الگوریتمهای یادگیری ماشین مانند تشخیص تصویر، تشخیص گفتار و ترجمه زبان بسیار سریع و کارآمد است.
- مصرف انرژی:
- CPU: پرمصرفترین نوع پردازنده است.
- GPU: مصرف انرژی نسبتاً بالایی دارد.
- NPU: به طور خاص برای بهرهوری بیشتر انرژی طراحی شده است و مصرف برق بسیار کمی دارد. این امر NPUها را برای دستگاههای قابل حمل مانند گوشیهای هوشمند و تبلتها که عمر باتری محدودی دارند، ایدهآل میکند.
- کاربرد:
- CPU: در طیف گستردهای از دستگاهها از جمله کامپیوترهای رومیزی، لپتاپها، گوشیهای هوشمند و لوازم خانگی استفاده میشود.
- GPU: عمدتاً در کارتهای گرافیک، کامپیوترهای بازی و سرورها استفاده میشود.
- NPU: در گوشیهای هوشمند، تبلتها، لپتاپها، سرورها و سایر دستگاههایی که از هوش مصنوعی استفاده میکنند، استفاده میشود.
برخی از سازندگان و بازیگران اصلی NPU
هواوی: هواوی یکی از پیشگامان در توسعه NPUها است و واحد Kirin NPU را در تراشههای Kirin خود به کار میبرد. NPUهای هواوی به دلیل عملکرد و کارایی انرژی بالا شناخته شدهاند و در گوشیهای هوشمند و تبلتهای این شرکت استفاده میشوند.
سامسونگ: سامسونگ NPU خود به نام Exynos NPU را برای تراشههای Exynos خود توسعه داده است. NPUهای سامسونگ نیز به دلیل عملکرد و کارایی انرژی بالا شناخته شدهاند و در گوشیهای هوشمند و تبلتهای این شرکت استفاده میشوند.
اپل: اپل NPU خود به نام Neural Engine را در تراشههای A-series خود به کار میبرد. Neural Engine اپل به دلیل عملکرد و کارایی انرژی بالا شناخته شده است و در گوشیهای هوشمند و تبلتهای این شرکت استفاده میشود.
شرکتهای تخصصی NPU
آناپیک: آناپیک یک شرکت مستقل است که NPUهای خود را برای طیف گستردهای از دستگاهها از جمله گوشیهای هوشمند، تبلتها، لپتاپها و سرورها توسعه میدهد. NPUهای آناپیک به دلیل عملکرد و کارایی انرژی بالا شناخته شدهاند.
آمبریکس: آمبریکس یک شرکت مستقل دیگر است که NPUهای خود را برای کاربردهای هوش مصنوعی سنگین مانند یادگیری عمیق و پردازش زبان طبیعی توسعه میدهد. NPUهای آمبریکس به دلیل عملکرد و مقیاسپذیری بالا شناخته شدهاند.
گرافن: گرافن یک شرکت نوپا است که NPUهای خود را بر اساس معماری نوآورانه GraphCore IP توسعه میدهد. NPUهای گرافن به دلیل قابلیت برنامهریزی و انعطافپذیری بالا شناخته شدهاند.
تراشهسازها
انویدیا: انویدیا بیشتر به خاطر GPUهای خود شناخته میشود. این شرکت NPU خود به نام Tensor Core را برای کاربردهای هوش مصنوعی توسعه داده است. Tensor Cores در کارتهای گرافیک و سرورهای انویدیا استفاده میشود و به دلیل عملکرد و مقیاسپذیری بالا شناخته شدهاند.
اینتل: اینتل NPU خود به نام Movidius Myriad X را برای کاربردهای هوش مصنوعی در لبه دستگاه توسعه داده است. Myriad X به دلیل مصرف برق کم و عملکرد بالا در دستگاههای کوچک مانند دوربینها و پهپادها شناخته شده است.
هوش مصنوعی (AI) دنیای ما را متحول میکند و NPUها (واحدهای پردازش عصبی) نقش کلیدی در این تحول ایفا میکنند. NPUها پردازندههای تخصصی هستند که برای شتابدهی به الگوریتمهای یادگیری ماشین، موتور محرک هوش مصنوعی، طراحی شدهاند.
با پیشرفت هوش مصنوعی و کاربردهای آن در زمینههای مختلف، تقاضا برای NPUها به طور قابل توجهی افزایش خواهد یافت. از گوشیهای هوشمند و تبلتها گرفته تا خودروهای خودران و رباتها، NPUها در طیف گستردهای از دستگاهها ادغام خواهند شد.