StableHLO রোডম্যাপ

লেখার সময়, StableHLO কম্পাইলার ইন্টারফেস হিসাবে MHLO/HLOকে সরিয়ে দিতে প্রস্তুত। এটি TensorFlow, JAX এবং PyTorch দ্বারা উত্পাদিত হতে পারে, এটি XLA এবং বেশ কয়েকটি 3p PJRT প্লাগইন দ্বারা ব্যবহার করা যেতে পারে এবং এতে MHLO/HLO দ্বারা প্রদত্ত সমস্ত পাবলিক বৈশিষ্ট্যের পাশাপাশি অতিরিক্ত কার্যকারিতা রয়েছে৷

এই দস্তাবেজটি StableHLO প্রকল্পের পরবর্তী পদক্ষেপগুলি বর্ণনা করে, ইস্যু ট্র্যাকারে প্রতিফলিত চলমান কাজকে শ্রেণীবদ্ধ করে এবং এই কাজটিকে পরিকল্পিত ডেলিভারেবলের মধ্যে সাজানো।

বর্তমান মাইলস্টোন

আমাদের বর্তমান মাইলফলক দুটি প্রধান প্রবণতা অনুসরণ করে:

  1. সমগ্র OpenXLA সম্প্রদায়ের জন্য StableHLO-এর সুবিধা সর্বাধিক করুন।
  2. সকল OpenXLA সদস্যদের জন্য ডেভেলপার অভিজ্ঞতা একত্রিত করুন।
  • MHLO অবচয় : Q4'24-এ আমরা MHLO-এর অভ্যন্তরীণ অবচয় অন্বেষণ শুরু করেছি, ক্যানোনিকালাইজেশন এবং ফোল্ডার প্যাটার্নগুলি সহ StableHLO-তে স্থানান্তরিত করেছি। একবার মাইগ্রেশন প্রক্রিয়া অভ্যন্তরীণভাবে তুচ্ছ প্রমাণিত হলে, আমরা StableHLO-তে বাহ্যিক স্থানান্তরের সময়সীমার সাথে একটি RFC ভাগ করার পরিকল্পনা করি। এটি সম্ভবত Q1'25-এ ঘটবে, এবং আমরা H1'25-এ StableHLO-তে স্থানান্তরিত করার জন্য দলগুলিকে যথেষ্ট সময় এবং সমর্থন দেওয়ার পরিকল্পনা করছি।
  • হার্ডওয়্যার স্বাধীন অপ্টিমাইজেশানগুলিকে StableHLO-তে স্থানান্তর করুন : উপরের প্রবণতা অনুসরণ করে, আমরা হার্ডওয়্যার স্বাধীন গ্রাফ সরলীকরণগুলিকে একীভূত করার জন্য StableHLO-কে সর্বোত্তম স্থান হতে চাই, যাতে StableHLO থেকে একটি নন-XLA কম্পাইলার IR-এ রূপান্তরিত সহ সমস্ত PJRT প্লাগইনগুলি সর্বাধিক সুবিধা দেখতে পারে৷ এই লক্ষ্যের অংশে Google AI এজ , JAX-এনজাইম প্রজেক্ট এবং StableHLO রেপোতে অন্যান্য প্রজেক্টে ব্যবহৃত নিদর্শন একত্রিত করা জড়িত। এই একত্রীকরণের কিছু ইতিমধ্যেই শুরু হয়েছে, কিন্তু ওয়ার্কস্ট্রীমটি মূলত বাছাই হবে এবং Q1'25 এ সম্পূর্ণ হবে৷
  • OpenXLA কম্পোনেন্টাইজেশন : আমরা HLO-এর জন্য openxla/xla-এ ডেডিকেটেড কম্পোনেন্ট তৈরি করা শুরু করেছি যা StableHLO রেপো সেটআপ ( ref ) এর সাথে সাদৃশ্যপূর্ণ, পাশাপাশি PJRT প্লাগইনগুলির পিছনে সমস্ত OpenXLA ব্যাকএন্ড সরানো শুরু করেছি। আমরা এই PJRT প্লাগইনগুলিতে আবিষ্কৃত বিশিষ্ট UX সমস্যাগুলির সমাধান করার জন্য অতিরিক্ত বিনিয়োগ করছি, যার মধ্যে StableHLO প্লাগইনগুলিতে সুনির্দিষ্ট StableHLO সংস্করণ যোগাযোগের মতো বিষয়গুলি রয়েছে, যাতে নতুন বৈশিষ্ট্যগুলি নতুন প্লাগইনগুলি ( রেফ ) দ্বারা অবিলম্বে ব্যবহার করা যেতে পারে৷
  • কম্পোজিটগুলিকে কাজ করুন e2e : Q3'24-এ আমরা HLO-তে কম্পোজিটগুলি যুক্ত করেছি, বিমূর্তকরণের জন্য সম্পূর্ণ কম্পাইলার স্ট্যাক সমর্থন সক্ষম করে৷ Q4'24-এ আমরা XLA ইনলাইনারকে কম্পোজিট সম্পর্কে শিখিয়েছি এবং HLO/StableHLO-তে অজানা কম্পোজিটগুলিকে তাদের পচনশীলতার সাথে ইনলাইন করার জন্য পাস যোগ করেছি। আমরা এখন ফ্রেমওয়ার্ক থেকে কম্পোজিট তৈরি করার জন্য ডেডিকেটেড JAX API যোগ করার বিষয়ে তদন্ত করছি (PyTorch APIগুলি ইতিমধ্যেই বিদ্যমান), সেইসাথে কীভাবে কম্পোজিটগুলিকে সঠিকভাবে ব্যবহার করতে হয় সে সম্পর্কে Colab ডকুমেন্টেশন যোগ করার জন্য, Q4'24-এ সম্পূর্ণ হবে।

অতীত মাইলস্টোন

H1 2024-এ, আমরা StableHLO v1.0 প্রকাশ করেছি যা উচ্চ-অগ্রাধিকারের উন্নতি বাস্তবায়ন করেছে, যার মধ্যে রয়েছে পাবলিক অপসেট স্পেক, রেফারেন্স ইন্টারপ্রেটার, সামঞ্জস্য ইউনিট টেস্টিং, কম্পোজিট অপারেশনের মাধ্যমে এক্সটেনসিবিলিটি, স্পেক' সহ অন-ডিভাইস ডিপ্লোয়মেন্টকে সমর্থন করার জন্য সম্প্রসারিত এবং পিছনের সামঞ্জস্যতা। ed ডাইনামিজম সমর্থন, মূল্যায়নকৃত সুবর্ণ ফলাফল সহ একটি সম্পূর্ণ টেস্টডেটা স্যুট প্রকাশ করেছে এবং আরও অনেক কিছু।