قرارداد آرم - انویدیا و تاثیر آن بر ISA های عمومی

۳ مهر ۱۳۹۹

شرکت انویدیا که با پردازنده های گرافیکی‌اش شناخته می‌شود، پیشنهاد خرید آرم به قیمت چهل میلیارد دلار را داده است. شرکت آرم، یک شرکت فعال در حوزه پردازنده است که عمده درآمد خود را از فروش مجوز ساخت پردازنده با مجموعه دستور العمل های انحصاری اش به دست می آورد.

ISA یا معماری مجموعه دستورالعمل، قراردادی است که تعیین می کند پردازنده چگونه باید دستورالعمل های برنامه را پردازش کند و فرمت دستور العمل ها چیست. یک برنامه را می توان روی دو پردازنده با ISA های یکسان اجرا کرد. پردازنده های امروز، عموما از یکی از ISA های x86 یا ARM استفاده می کنند. این موضوع نه به این خاطر است که این دو مجموعه دستورالعمل کیفیت بسیار بالایی دارند، بلکه به این دلیل است که تغییر مجموعه دستورالعمل، ما را وادار می کند تا تمام نرم افزار ها، درایور ها و ... را دوباره برای ISA جدید تنظیم کنیم که کاری به شدت هزینه بر است. یعنی این دو صرفا به دلایل تاریخی است که استفاده می شوند.

اما این دو ISA انحصاری هستند؛ برای x86 تنها خود شرکت اینتل و شرکت AMD که با اینتل از قدیم قرارداد دارد می توانند پردازنده بسازند. در مورد ARM وضعیت کمی بهتر است. بیش از ۵۰۰ شرکت مجوز ساخت پردازنده های با مجموعه دستورالعمل ARM را دارند. این شرکت ها از طریق پرداخت پول و شریک کردن شرکت ARM در طراحی پردازنده، می توانند از این شرکت مجوز دریافت کنند.

در مقابل ISA های مبتنی بر داده های عمومی وجود دارند. یک ISA چیزی نیست که قابل پنهان کردن باشد، چون طراحان نرم افزار یا کامپایلر ها باید از جزییات آن کاملا مطلع باشند. اما جدای از این، یک ISA عمومی به همه اجازه می دهد تا هر استفاده ای از آن بتوانند بکنند، مثلا پردازنده های خود را بسازند یا آن را تغییر داده و ISA های جدید به وجود بیاورند. ISA های عمومی زیادی وجود دارند. بعضا از ابتدا عمومی بوده اند مانند ریسک پنج (RISC-V) و بعضی ها ابتدا انحصاری بوده و بعد ها به دلایلی عمومی شدند مانند اوپن پاور از شرکت آی بی ام، اسپارک و میپس.

شرکت انویدیا سابقه خوبی در زمینه داده های عمومی ندارد و رویکرد آن، انحصار طلبی است. این شرکت زبان cuda که برای برنامه ریزی پردازنده های گرافیکی اش به کار می رود انحصاری کرده و پشتیبانی خوبی از معادل های مبتنی بر داده های عمومی مانند vulkan یا openGL/openCL ندارد. این شرکت حتی درایور های لینوکسش را به صورت عمومی منتشر نکرده و باعث مشکلات گسترده ای در استفاده از کارت های گرافیکش با سیستم عامل لینوکس شده است.

اگر انویدیا سیاست های انحصارگرایانه اش را برای آرم نیز اعمال کند و مشکلاتی برای دیگر سازندگان به وجود بیاورد، ممکن است دیگران را به استفاده از ISA های عمومی فعال، مانند ریسک پنج یا اوپن پاور تشویق کند. هم چنین محدودیت های اخیر امریکا علیه چین در کنار انتقال آرم از یک شرکت انگلیسی ژاپنی به شرکت امریکایی انویدیا ممکن است شرکت های چینی را به مجموعه دستور العمل های عمومی سوق دهد، همان طور که چینی ها قبلا نیز توجه خوبی به این ISA ها نشان داده اند.

البته انویدیا نیز به این مسائل توجه دارد و قصد ندارد برای حذف رقیب به صورت کوتاه مدت خرید چهل میلیارد دلاری خود را بی ارزش کند. باید صبر کرد و دید که در نهایت، انویدیا چه رفتاری از خودش نشان خواهد داد و این خرید بزرگ به نفع داده های عمومی و جامعه خواهد بود یا خیر.