-mpmd-convert-sdy-constants

sdy.constant ops را به stablehlo.constant تبدیل می کند.

هر عملیات sdy.constant را که قابل تاشو نیست به یک عملیات stablehlo.constant تبدیل می کند. دلیلی برای جلوگیری از تا شدن ثابت وجود ندارد زیرا ما در حال حذف کردن خرده‌ها از ثابت‌ها در mpmd-convert-sdy-shardings-to-mpmd-types هستیم.

-mpmd-convert-sdy-shardings-to-mpmd-types

تقسیم بندی ها را از op attrs به انواع !mpmd.mesh_tensor منتقل می کند.

تقسیم‌بندی‌ها را از ویژگی‌های عملیات MPMD (مثلاً قطعات، انتقال) به MeshTensorType نتایج آنها منتقل می‌کند. با فرض اینکه انتشار SDY را قبل از این پاس اعمال کنیم، خرده‌بندی‌های SPMD به ویژگی‌های عملیات متصل می‌شوند. این پاس، اشتراک‌گذاری را به MeshTensorType s منتقل می‌کند، زیرا پاس‌های بعدی نیاز دارند که نوع حاوی یک تقسیم‌بندی باشد.

این پاس همچنین هرگونه تقسیم‌بندی را از عملیات‌هایی که MeshTensorType ندارند، یعنی عملیات‌های داخل ops mpmd.fragment حذف می‌کند.

-mpmd-enforce-user-shardings

شاردینگ های مشخص شده توسط کاربر را برای ورودی ها و خروجی ها اعمال می کند.

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

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

پیش شرط:

  • اشتراک گذاری های کاربر بر روی آرگومان های تابع و نتایج به عنوان ویژگی تنظیم می شوند.
  • تکه تکه ها بر روی ویژگی های in_shardings و out_shardings تنظیم می شوند.

-mpmd-extract-reshards-from-inter-mesh-transfers

تغییر رنگ SPMD را حول یک انتقال بین مش به داخل یک قطعه حرکت می دهد.

با به‌روزرسانی انواع قطعات تولیدکننده/مصرف‌کننده یا با ایجاد قطعات استنتاج شده برای تولیدکنندگان/مصرف‌کنندگان غیرقطعه، اطمینان حاصل می‌کند که همه انتقال‌های بین مش (SPMD) آرایه را مجدداً تغییر نمی‌دهند (تکه‌های درون و بیرون آنها یکسان است).

این مورد نیاز است زیرا زمان‌های اجرا MPMD دارای محدودیت‌هایی هستند که از ریشاردینگ پشتیبانی می‌شوند.

این پاس فقط برای توابع MPMD در نمای کلی و با توپولوژی همگن اعمال می شود.

پیش شرط: همه خرده‌کاری‌ها به‌عنوان ویژگی‌های op مشخص می‌شوند و نه در انواع.