گزارش جدیدی از جامعه توسعهدهندگان نشان میدهد که یک پژوهشگر مستقل موفق شده محدودیت نرمافزاری Neural Engine در تراشه M4 اپل را دور بزند و از این واحد پردازشی برای آموزش مدلهای هوش مصنوعی استفاده کند؛ قابلیتی که اپل بهصورت رسمی در اختیار کاربران و توسعهدهندگان قرار نمیدهد. این دستاورد از آن جهت اهمیت دارد که موتور عصبی تراشههای اپل بهطور معمول تنها برای اجرای مدلهای از پیش آموزشدیده طراحی شده و امکان آموزش مستقیم مدلهای جدید از طریق ابزارهای رسمی اپل وجود ندارد.
🔷 یک توسعهدهنده مستقل موفق شده محدودیتهای Neural Engine تراشه M4 را دور بزند.
🔷 این پروژه بدون استفاده از CoreML ،Metal یا پردازنده گرافیکی انجام شده است.
🔷 ارتباط مستقیم با سختافزار از طریق یک زبان اختصاصی MIL برقرار شده است.
🔷 تمامی دادهها در حافظه RAM نگهداری میشوند تا بیشترین سرعت ممکن حاصل شود.
🔷 عملکرد پردازشی اعلامشده به حدود 15.8 ترافلاپس برای پردازشهای هوش مصنوعی میرسد.
🔷 هنوز مشخص نیست این روش روی تراشههای نسل بعدی مانند M5 نیز قابل اجرا باشد.
موتور عصبی یا Neural Engine در تراشههای Apple Silicon از جمله M4 برای پردازش وظایف مرتبط با هوش مصنوعی طراحی شده است. با این حال، اپل دسترسی این بخش را عمدتاً به اجرای مدلهای از پیش آموزشدیده محدود کرده است.
در نتیجه توسعهدهندگان میتوانند مدلهای آماده را اجرا کنند، اما آموزش مدلهای جدید یا دسترسی مستقیم به توان کامل این سختافزار از طریق ابزارهای رسمی اپل امکانپذیر نیست.
فردی با نام کاربری 0x0SojalSec در شبکه اجتماعی X اعلام کرده که موفق شده روشی برای استفاده گستردهتر از توان Neural Engine توسعه دهد و کدهای مربوط به این پروژه را نیز در GitHub منتشر کرده است.
نکته قابل توجه این است که این دستاورد بدون استفاده از فناوریهای رسمی اپل مانند CoreML ،Metal یا حتی پردازنده گرافیکی (GPU) حاصل شده است.
به جای ابزارهای رایج، توسعهدهنده از یک Model Intermediate Language (MIL) اختصاصی استفاده کرده که از ابتدا طراحی شده و امکان برقراری ارتباط مستقیمتر با سختافزار را فراهم میکند.
طبق توضیحات منتشرشده، یکی از مهمترین عوامل دستیابی به این عملکرد، حذف کامل عملیات نوشتن روی حافظه NAND بوده است.
به گفته توسعهدهنده، تمامی دادهها و پردازشها در حافظه RAM نگهداری میشوند که سرعت بسیار بالاتری نسبت به ذخیرهسازی روی حافظه فلش دارد. این موضوع باعث شده فرآیند آموزش مدلها روانتر و سریعتر اجرا شود.
از آنجا که سختافزار اپل بهطور کامل در اختیار توسعهدهندگان قرار ندارد، این پروژه از راهکارهای غیرمعمولی برای ادامه فرآیند آموزش استفاده میکند.
برای مثال زمانی که فرآیند آموزش متوقف میشود یا نیاز به بازنشانی دارد، سیستم از دستور ()exec استفاده میکند تا برنامه مجدداً راهاندازی شده و آموزش مدل بدون کرش یا توقف کامل ادامه پیدا کند. این روش باعث میشود وضعیت فعلی برنامه بازسازی شده و فرآیند یادگیری مدل ادامه یابد.
بر اساس ادعای منتشرکننده پروژه، حذف محدودیتهای نرمافزاری باعث شده تراشه M4 در آیپد و مک به عملکردی در حدود 15.8 TFLOPS برای پردازشهای هوش مصنوعی دست پیدا کند.
این میزان توان پردازشی میتواند برای آموزش برخی مدلهای هوش مصنوعی کافی باشد و در برخی سناریوها نیاز به استفاده از سیستمهای گرانقیمت یا کارتهای گرافیک حرفهای انویدیا را کاهش دهد.
موفقیت این پروژه روی تراشه M4 باعث شده گمانهزنیهایی درباره پتانسیل تراشههای نسل بعدی اپل، از جمله M5، مطرح شود.
با این حال هنوز مشخص نیست زبان میانی اختصاصی توسعهیافته یا مکانیزم مبتنی بر ()exec روی نسلهای آینده Apple Silicon نیز به همین شکل عمل کند. همچنین تاکنون هیچ تأیید رسمی از سوی اپل درباره این پروژه منتشر نشده است.
اگر ادعاهای مطرحشده صحت داشته باشند، این پروژه نشان میدهد موتور عصبی تراشه M4 ظرفیتهای بالقوهای فراتر از محدودیتهای فعلی اپل دارد. استفاده از یک زبان اختصاصی، اجرای کامل پردازشها در RAM و حذف وابستگی به CoreML، Metal و GPU از مهمترین ویژگیهای این دستاورد محسوب میشوند.
البته باید توجه داشت که این پروژه یک تلاش مستقل است و عملکرد آن هنوز بهصورت رسمی توسط اپل تأیید نشده است. با این حال، نتایج اولیه میتواند توجه بسیاری از توسعهدهندگان و پژوهشگران حوزه هوش مصنوعی را به خود جلب کند.
نظر شما درباره این پروژه چیست؟ آیا اپل باید دسترسی بیشتری به Neural Engine برای آموزش مدلهای هوش مصنوعی فراهم کند؟