کیسی موراتوری: پرفورمنس رو جدی بگیرید
خلاصهٔ کاملتر
حرف اصلی این قسمت پادکست اینه که بهینهسازی رو نباید به آخر کار سپرد. کیسی موراتوری، برنامهنویس بازی، بنیانگذار Molly Rocket و سازندهٔ Handmade Hero، میگه هر مهندس خوبی که توی بهینهسازی دیده اول حساب کرده سختافزار از نظر تئوری چقدر میتونه انجام بده، و بعد تا بستن اون فاصله دست برنداشته.
روش رایج یعنی پروفایل گرفتن، دستکاری نقطههای داغ و دوباره چک کردن آمار، به نظر خودش فقط یه کمینهٔ محلی پیدا میکنه. به همین دلیل با جملهٔ معروف «بهینهسازی زودهنگام ریشهٔ همهٔ بدیهاست» مشکل داره: میگه خیلیها ازش بهعنوان بهانه برای عقب انداختن کار استفاده میکنن، و نتیجهش اینه که بعداً فقط هاتاسپاتها رو میشه درست کرد، نه ایرادهای معماری، و اونجا دیگه چارهای جز بازنویسی نمیمونه.
پیشنهاد عملیش دو تاست. اول، خوندن اسمبلی رو یاد بگیر؛ نوشتنش لازم نیست و حدود ۲۰ تا ۳۰ دستور کافیه که بتونی یه کد اسمبلی پایه رو بخونی. دوم، سه ستون کار CPU رو بفهم: داده چطور رفتوآمد میکنه (واحدهای load/store و کشهای L1 تا L3)، دستورها چطور توی خط لوله جریان پیدا میکنن (branch prediction و i-cache)، و زمانبندی واحدهای اجرا، یعنی توان خام هر نوع عملیات. به گفتهٔ خودش با همین سه تا میتونی از روی معرفی هر CPU حدس بزنی تقریباً چقدر خوب کار میکنه.
بخش دیگهٔ گفتوگو دربارهٔ صنعت بازیه. موراتوری میگه این صنعت «لحظهٔ AI» خودش رو قبلاً تجربه کرده: وقتی موتورهایی مثل Unity و Unreal قابل لایسنس شدن، هر کسی تونست بازی بسازه و منتشر کنه، اما سالی دهها هزار عنوان بازار رو پر کرد و کشف ارگانیک از بین رفت. الان بدون استراتژی بازاریابی، شانس دیده شدن یه بازی تقریباً صفره.
دربارهٔ تست هم نظر خلاف جریان داره: میگه تست باید یه تصمیم هزینهفایده باشه نه پیشفرض، و برای بعضی پروژهها تست نوشتن از اول انتخاب بدیه. خودش هم توی بازی جدیدش از AI استفاده نمیکنه و دلیلش رو ساده میگه: میخواد چیزها رو خودش برنامهنویسی کنه، وگرنه اگه فقط خروجی مهم بود سراغ Unreal Engine میرفت.
نکات کلیدی:
- ریشهٔ DirectX به WinG برمیگرده، کتابخانهای که Chris Hecker بهصورت غیررسمی توی مایکروسافت ساخت
- برای خوندن اسمبلی پایه حدود ۲۰ تا ۳۰ دستور کافیه
- سه ستون فهم CPU: load/store و کش L1 تا L3، branch prediction و i-cache، و زمانبندی واحدهای اجرا
- محصولاتی مثل File Pilot و ویرایشگر ویدیوی Blick دارن با تکیه بر سرعت سهم بازار میگیرن
- قسمت کامل پادکست حدود ۱ ساعت و ۵۳ دقیقهست




