-mpmd-convert-sdy-constants

sdy.constant ops কে stablehlo.constant তে রূপান্তরিত করে।

যেকোনো sdy.constant op, যা ভাঁজযোগ্য নয়, তাকে stablehlo.constant op-এ রূপান্তরিত করে। যেহেতু আমরা mpmd-convert-sdy-shardings-to-mpmd-types এ ধ্রুবক থেকে shardings কে সরিয়ে দিচ্ছি, তাই ধ্রুবক ভাঁজ প্রতিরোধ করার কোনও কারণ নেই।

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

op attrs থেকে !mpmd.mesh_tensor প্রকারে shardings সরান।

MPMD অপসের অ্যাট্রিবিউট (যেমন, টুকরো, স্থানান্তর) থেকে তাদের ফলাফলের MeshTensorType এ শার্ডিং স্থানান্তর করে। ধরে নিচ্ছি যে আমরা এই পাসের আগে SDY প্রোপাগেশন প্রয়োগ করেছি, SPMD শার্ডিংগুলি অপের অ্যাট্রিবিউটের সাথে সংযুক্ত থাকে। এই পাস শার্ডিংকে MeshTensorType s-এ স্থানান্তর করে কারণ পরবর্তী পাসগুলিতে টাইপটিতে একটি শার্ডিং থাকা প্রয়োজন।

এই পাসটি এমন যেকোনো অপশন থেকে শারডিং সরিয়ে দেয় যেগুলোতে MeshTensorType নেই, অর্থাৎ, mpmd.fragment অপশনের ভিতরে থাকা অপশন।

-mpmd-enforce-user-shardings

ইনপুট এবং আউটপুটের জন্য ব্যবহারকারীর নির্দিষ্ট শার্ডিং প্রয়োগ করে।

ফাংশন আর্গুমেন্ট গ্রহণকারী বা ফাংশন ফলাফল উৎপন্নকারী খণ্ডগুলির ইনপুট এবং আউটপুট শারডিংগুলিকে যথাক্রমে ব্যবহারকারী দ্বারা নির্দিষ্ট করা, অর্থাৎ, ফাংশনের ইনপুট এবং আউটপুট শারডিংগুলিকে কার্যকর করে।

এই পাসের পরে, ফাংশন আর্গুমেন্টের ফ্র্যাগমেন্ট এবং ট্রান্সফার ব্যবহারকারী এবং ফাংশন ফলাফলের প্রযোজকদের ব্যবহারকারীর দ্বারা নির্দিষ্ট করা শারডিংগুলির মতো একই শারডিং থাকা উচিত। যদি ব্যবহারকারী কোনও ইনপুট বা আউটপুটের জন্য শারডিং নির্দিষ্ট না করে থাকেন, তাহলে এই পাসটি প্র্যাপ্যাকশন নির্ধারিত শারডিংটি ধরে রাখে।

পূর্বশর্ত:

  • ব্যবহারকারীর শারডিংগুলি ফাংশনের আর্গুমেন্ট এবং ফলাফলের উপর অ্যাট্রিবিউট হিসাবে সেট করা হয়।
  • ফ্র্যাগমেন্ট শারডিংগুলি in_shardings এবং out_shardings অ্যাট্রিবিউটের উপর সেট করা আছে।

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

একটি আন্তঃ-জাল স্থানান্তরের চারপাশে SPMD রিশারডিংকে একটি খণ্ডের ভিতরে স্থানান্তর করে।

নিশ্চিত করে যে সমস্ত ইন্টার-মেশ ট্রান্সফার (SPMD) অ্যারেকে পুনরায় ভাগ করে না (তাদের ইন এবং আউট শার্ডিং একই), প্রযোজক/ভোক্তা টুকরার ধরণ আপডেট করে অথবা নন-ফ্র্যাগমেন্ট প্রযোজক/ভোক্তাদের জন্য অনুমানকৃত টুকরো তৈরি করে।

MPMD রানটাইমের রিশারডিং সমর্থিত সীমাবদ্ধতা থাকায় এটি প্রয়োজন।

এই পাসটি শুধুমাত্র বিশ্বব্যাপী দৃশ্যে এবং একটি সমজাতীয় টপোলজি সহ MPMD ফাংশনগুলিতে প্রয়োগ করা হয়।

পূর্বশর্ত: সমস্ত শার্ডিং op অ্যাট্রিবিউট হিসেবে নির্দিষ্ট করা হয়েছে, টাইপ হিসেবে নয়।

-mpmd-simplify-program

টুকরো থেকে অপ্রয়োজনীয় arg/ফলাফল সরিয়ে দেয়।

একটি ফ্র্যাগমেন্ট বা লুপ, এর অপারেন্ড এবং ফলাফল, এবং তাদের সংশ্লিষ্ট ব্লক আর্গুমেন্ট এবং রিটার্ন মানগুলিকে সরলীকৃত করে।