از [GeForce] تا هوش مصنوعی [AI]: چرا تصمیم [NVIDIA] درباره [CUDA] آینده شرکت را تغییر داد؟

مقدمه: آیا میتوان از سود امروز گذشت تا دنیای رایانش فردا را ساخت؟
شرکتی برای قابلیتی هزینه فراوان میکند که مشتریانش در آن لحظه درخواستش نکردهاند. افزودن این قابلیت هزینه تولید را بالا میبرد، اما مشتریان حاضر نیستند بهای بیشتری بپردازند. بااینحال شرکت عقب نمینشیند. هدفش فقط فروش محصولی تازه نیست؛ میخواهد سکوی رایانشی [Computing Platform] بسازد که دیگران در آینده بتوانند ساختههای خود را بر آن بنا کنند.
این منطق تصمیم [NVIDIA] برای افزودن [CUDA] به پردازندههای گرافیکی [GPU] خانواده [GeForce] بود. همانطور که جنسن هوانگ [Jensen Huang] توضیح داده است، این تصمیم موفقیت فوری نیاورد. در عوض هزینه، فشار بر سود و انتظاری طولانی ایجاد کرد. اما بعدها یکی از پایههای رشد یادگیری عمیق [Deep Learning] شد.
1. از شتابدهنده یک کار محدود تا سکوی رایانشی [Computing Platform] گستردهتر
در آغاز، [NVIDIA] شرکتی بود که یک کار مشخص را سریعتر میکرد. این تخصص به آن قدرت میداد. همزمان، تکیه بر بازاری محدود میتوانست توان تحقیق و توسعه [Research and Development] آن را هم محدود کند.
اینجا تناقضی وجود داشت. تخصص بیشازحد در یک کار ممکن بود انجام کارهای رایانشی گستردهتر را دشوار کند. تلاش برای انجام همه کارها هم میتوانست مزیت تخصصی نخستین را از بین ببرد. رویکرد هوانگ حرکت تدریجی میان این دو وضعیت بود.
او سایهزن پیکسلی برنامهپذیر [Programmable Pixel Shader] را نخستین گام معرفی میکند. سپس محاسبه ممیز شناور 32 بیتی سازگار با استاندارد [IEEE-compatible FP32] وارد سایهزنها [Shaders] شد. این موضوع پژوهشگران را به این پرسش رساند که آیا پردازنده طراحیشده برای گرافیک میتواند محاسبات دیگری نیز انجام دهد.
سپس [Cg] بر پایه زبان برنامهنویسی [C] آمد. آن مسیر سرانجام به [CUDA] رسید. پس این راهحل جادویی در یک روز پدید نیامد؛ سفری پیوسته بود که یک توانایی فنی را به توانایی بعدی متصل میکرد.
2. مهمتر از ساختن [CUDA] این بود که آن را به کجا رساندند
ساختن فناوری عالی بهتنهایی باعث نمیشود مردم خودبهخود از آن استفاده کنند. توسعهدهندگان [Developers] باید برایش برنامه بنویسند و شمار زیادی از مردم نیز باید بتوانند آن برنامهها را به کار بگیرند.
قدرت یک سکوی رایانشی [Computing Platform] فقط در زیبایی طراحی نیست؛ به این هم بستگی دارد که از پیش در اختیار چند نفر است. هوانگ این را اهمیت پایگاه نصبشده [Installed Base] مینامد.
او معماری [x86] را مثال میزند که با وجود انتقادها به پشتوانه استفاده گسترده دوام آورد. همچنین میگوید برخی معماریهای مجموعهدستور کاهشیافته [RISC Architectures] با طراحی زیبا به موفقیت موردانتظار نرسیدند. معنایش شکست همه طراحیهای [RISC] نیست. نکته این است که زیبایی فنی بهتنهایی موفقیت یک سکو را تضمین نمیکند.
آن زمان [GeForce] از قبل سالانه میلیونها واحد فروش داشت. بنابراین [NVIDIA] مسیری آماده برای رساندن توان رایانشی جدید به مردم در اختیار داشت.
3. [CUDA] در هر پردازنده [GeForce]: زیربنایی پیش از درخواست کاربران
میشد [CUDA] را فقط در چند دستگاه پژوهشی گرانقیمت نگه داشت. اما در آن صورت شمار کسانی که به آن دسترسی داشتند بسیار کمتر میشد.
در عوض، شرکت تصمیم گرفت این قابلیت را از راه [GeForce] وارد رایانههای شخصی [PC] فراگیر کند. محصولی که برای بازی خریده شده بود، فرصتی برای پژوهش هم داشت. دانشجو، آزمایشگاه دانشگاه یا پژوهشگری که رایانه خود را سرهم میکرد میتوانست با تجهیزات موجودش محاسبات تازه را بیازماید.
نباید از این برداشت کرد که [CUDA] روی هر رایانهای اجرا میشد. منظور این است که پایگاه نصبشده [Installed Base] محصولات [GeForce] نقطه شروعی شد تا افراد بیشتری به این قابلیت دسترسی پیدا کنند.
هوانگ میگوید تلاشها به تأمین تجهیزات محدود نبود؛ تدریس در دانشگاهها، نوشتن کتاب و برگزاری کلاس هم انجام شد. ساخت سکو با فروش محصول تمام نمیشود؛ دانش و جامعهای که بتواند از آن استفاده کند نیز باید شکل بگیرد.
4. بهای فوری: افزایش هزینه و فشار بر سود
بار اقتصادی این تصمیم کوچک نبود. هوانگ به یاد میآورد که افزودن [CUDA] هزینه پردازنده را حدود 50 درصد بالا برد، درحالیکه شرکت با حاشیه سود ناخالص [Gross Margin] حدود 35 درصد کار میکرد.
بازیکنان برای قابلیت محاسباتیای که استفاده نمیکردند پول بیشتری نمیدادند. پس شرکت باید هزینه را خود تحمل میکرد. هوانگ آن را آنقدر بزرگ توصیف میکند که کل مبلغ سود ناخالص [Gross Profit Dollars] شرکت را میبلعید.
نمیتوان این دو درصد را مستقیما از هم کم کرد و وضعیت مالی شرکت را نتیجه گرفت. مبنای یکی هزینه تولید است و دیگری حاشیه سودی است که از درآمد محاسبه میشود. تأکید او بر یک حساب ساده نیست، بلکه بر دشواری فداکردن درآمد امروز برای سکوی فرداست.
او همچنین تقریبی به یاد میآورد که ارزش بازار [Market Capitalisation] شرکت حدود شش تا هشت میلیارد دلار آمریکا بود و سپس تا حدود یکونیم میلیارد دلار پایین آمد. اینها برآوردهای مبتنی بر خاطره او هستند. نمیتوان نتیجه گرفت که [CUDA] تنها علت کل این تغییر بوده است.
بااینحال، گفته او که رسیدن به نتیجه موردانتظار حدود یک دهه طول کشید مهم است. این تصمیم برای درآمد فصل بعد گرفته نشده بود.
5. چرا این تصمیم به زیربنای یادگیری عمیق [Deep Learning] تبدیل شد؟
یکی از موانع دشوار پژوهش تازه، هزینه و دشواری دسترسی به تجهیزات است. اگر بتوان آزمایش جدید را با ابزاری آغاز کرد که بسیاری از پیش دارند، بخشی از این مانع کمتر میشود.
[CUDA] که از راه [GeForce] گسترش یافت، پایهای فراهم کرد تا پژوهشگران در محیط برنامهنویسی [Programming Environment] مشترک آزمایش کنند. دانش، برنامهها و تجربهای که آنجا شکل گرفت به تلاشهای بعدی هم کمک کرد.
هنگامی که یادگیری عمیق [Deep Learning] رشد کرد، ابزارهای مناسب برای محاسبات موازی [Parallel Computing] گسترده آن و افرادی که استفاده از آنها را میدانستند از پیش وجود داشتند. این مزیتی مهم بود.
تمام تاریخ یادگیری عمیق [Deep Learning] وابسته به یک شرکت یا یک ابزار نیست. اما این تصمیم در فراگیرشدن سکوی رایانشی [Computing Platform] لازم جایگاه مهمی دارد. به همین دلیل هوانگ بر این تصویر تأکید میکند که [NVIDIA] خانهای است که [GeForce] ساخت.
6. اعتمادی که پیش از تصمیم فنی ساخته شد
ممکن است آینده در ذهن یک رهبر روشن باشد. اما اگر هیئتمدیره، مدیران، کارکنان، مشتریان و شرکا آن را نپذیرند، این روشنی بهتنهایی کافی نیست.
هوانگ روش خود را توضیح گامبهگام دلایل میداند. هر بار اطلاعات تازه، پیشرفت پژوهشی یا دستاورد مهندسی پدید میآید، برای اطرافیان توضیح میدهد که چه ارتباطی با جهت آینده دارد.
روز اعلام تصمیم بزرگ نباید برای همه شوکی ناگهانی باشد. به باور او باید زمینه آن از قبل چنان آماده شده باشد که مردم بپرسند چرا اینقدر طول کشید.
پشت تصمیم [CUDA] هم چنین باور و صبر بلندمدتی بود. افزون بر انتخاب مسیر فنی، باید شرکتی را که هزینهاش را تحمل میکرد برای این سفر آماده کرد.
7. نه فقط محصول، بلکه سکویی که شرکا بر آن بسازند
این نگاه [NVIDIA] که خود را شرکت پلتفرمی [Platform Company] میبیند نیز مهم است. محور این رویکرد، ایجاد فضا در هر لایه برای مشارکت و ساخت مشترک شرکتهای دیگر است.
این به معنای متنباز [Open Source] بودن همه برنامههایش نیست. فرصتدادن به شرکا برای ساخت مشترک با عمومیکردن کد منبع [Source Code] تفاوت دارد.
سکوی خوب تنها با شرکت سازنده رشد نمیکند. کاربردهایی که پژوهشگران، توسعهدهندگان [Developers]، شرکتها و مؤسسات آموزشی روی آن میسازند نیز آن را رشد میدهند. تصمیم [CUDA] درِ این رشد را باز کرد.
8. درس امروز: سریعترکردن یک پردازنده کافی نیست
در بارهای کاری محاسباتی توزیعشده [Distributed Workloads] بزرگ، سریعترکردن یک بخش، کل سامانه را به همان نسبت سریع نمیکند. قانون امدال [Amdahl's Law] این موضوع را توضیح میدهد.
فرض کنیم فقط نیمی از زمان یک کار را میتوان بهبود داد. هرقدر آن نیمه را سریع کنیم، نیمه تغییرنکرده باقی میماند. حتی اگر بخش بهبودیافته هیچ زمانی نگیرد، سرعت کل کار حداکثر دو برابر خواهد شد.
به همین دلیل پردازنده گرافیکی [GPU]، پردازنده مرکزی [CPU]، شبکه [Networking]، حافظه [Memory]، برق [Power] و خنکسازی [Cooling] باید هماهنگ طراحی شوند. هوانگ آن را طراحی مشترک بسیار نزدیک [Extreme Co-design] توصیف میکند.
اینجا پیوستگی با تصمیم اولیه [CUDA] دیده میشود. توان یک ابزار جداگانه کافی نیست؛ تمام محیطی که از آن استفاده میکند نیز باید همراهش رشد کند.
نتیجهگیری: تصمیمی که کاربرد آینده را ساخت
اهمیت معرفی [CUDA] فقط آمدن یک قابلیت برنامهنویسی تازه نبود. معنای عمیقترش پیوند این قابلیت با [GeForce]، که از قبل فروش گسترده داشت، و رساندن زودهنگام آن به دست کسانی بود که در آینده از آن استفاده میکردند.
اگر فقط هزینه همان روز دیده میشد، ممکن بود تصمیم اشتباه به نظر برسد. اما [NVIDIA] میدانست ارزش سکوی رایانشی [Computing Platform] در کاربردهایی هم هست که دیگران روی آن خواهند ساخت.
فناوری، دسترسی گسترده، آموزش، جامعه توسعهدهندگان [Developer Community] و صبر شرکت کنار هم فرصتی تازه ایجاد کردند. آن فرصت بعدها با رشد هوش مصنوعی [AI] پیوند خورد. درس تصمیم [CUDA] این است: دگرگونی بزرگ فردا به زیربنایی نیاز دارد که افراد زیادی بتوانند از همین امروز روی آن بسازند.
Powered By K7
