সরাসরি মূল বিষয়ে যান

AMX, Advanced Matrix Extensions

আর্কিটেকচার রেফারেন্সFeex

AMX, AMX (Advanced Matrix Extensions) নামেও পরিচিত

Intel AMX x86-এ টাইল-ভিত্তিক ম্যাট্রিক্স গণনা সুবিধা যোগ করে। AMX-TILE এবং গাণিতিক এক্সটেনশনগুলিতে পৃথক ক্ষমতা বিট রয়েছে এবং OS-কে অবশ্যই উল্লেখযোগ্য টাইল অবস্থা পরিচালনা করতে হবে।

আপনার যা জানা প্রয়োজন

Intel AMX x86-এ টাইল-ভিত্তিক ম্যাট্রিক্স গণনা সুবিধা যোগ করে। AMX-TILE এবং গাণিতিক এক্সটেনশনগুলিতে পৃথক ক্ষমতা বিট রয়েছে এবং OS-কে অবশ্যই উল্লেখযোগ্য টাইল অবস্থা পরিচালনা করতে হবে।

এটি যেভাবে কাজ করে

AMX সাধারণ YMM/ZMM ভেক্টরের পরিবর্তে কনফিগার করা দ্বিমাত্রিক টাইল রেজিস্টার ব্যবহার করে। টাইল কনফিগারেশন সক্রিয় আকারগুলি বর্ণনা করে, যখন AMX-INT8 বা AMX-BF16 এর মতো গাণিতিক এক্সটেনশনগুলি নির্দিষ্ট ম্যাট্রিক্স ক্রিয়াকলাপ এবং সংখ্যাসূচক ফর্ম্যাটগুলিকে সংজ্ঞায়িত করে। সফটওয়্যার ডেটা প্যাক করে এবং গণনা করা প্যালেট সীমার অধীনে বৈধ আকার বেছে নেয়।

যেখানে এটি কার্যকর

একটি ম্যাট্রিক্স লাইব্রেরি একটি সমর্থিত কার্নেলকে টাইল লোড, ডট-প্রোডাক্ট অপারেশন এবং টাইল স্টোরে নামিয়ে আনতে পারে। প্যাকিং খরচ, ম্যাট্রিক্স মাত্রা এবং ক্যাশে লোকালিটি ছোট বা অনিয়মিত কাজের চাপে আধিপত্য বিস্তার করতে পারে। টাইল হার্ডওয়্যার প্রতিটি নিউরাল-নেটওয়ার্ক অপারেটরকে ত্বরণের জন্য যোগ্য করে তোলে না।

সাপোর্ট এবং সক্ষমতা কীভাবে পরীক্ষা করবেন

CPUID লিফ 7-এ AMX-TILE এবং প্রতিটি প্রয়োজনীয় পাটিগণিত এক্সটেনশন পরীক্ষা করুন, টাইল সীমা গণনা করুন এবং OS-সক্ষম অবস্থা নিশ্চিত করুন। Linux-এ, ডায়নামিক টাইল ডেটা ব্যবহারকারী অ্যাপ্লিকেশনগুলিকে অবশ্যই নথিভুক্ত ARCH_REQ_XCOMP_PERM প্রবাহ অনুসরণ করতে হবে; শুধুমাত্র সমর্থন এবং XCR0 বিটই যথেষ্ট নয়।

হার্ডওয়্যার প্রাপ্যতা শুধুমাত্র প্রথম পদক্ষেপ। ড্রাইভার, রানটাইম, এক্সিকিউশন প্রোভাইডার, সমর্থিত অপারেটর এবং সংখ্যাসূচক বিন্যাস অবশ্যই অ্যাপ্লিকেশনের সাথে মিলতে হবে। একটি AI লেবেলের অর্থ প্রতিটি মডেল ত্বরান্বিত হয় এমনটি ধরে নেওয়ার পরিবর্তে প্রকৃত ব্যাকএন্ড নির্বাচন এবং ফলব্যাক পরিদর্শন করুন।

এই বৈশিষ্ট্যটি যা নিশ্চিত করে না

AMX মানে AVX-512, একটি সাধারণ NPU বা প্রতিটি AMX গাণিতিক বিন্যাস নয়। একটি CPU বিট একা প্রক্রিয়ার অনুমতি বা পর্যাপ্ত সংকেত-স্ট্যাক অবস্থা প্রতিষ্ঠা করে না। অসমর্থিত টাইল আকার বা অনুপস্থিত OS অনুমতি এমনকি একটি AMX-সক্ষম মেশিনেও ত্রুটি সৃষ্টি করতে পারে।

বাস্তবে সামঞ্জস্য এবং কর্মক্ষমতা

সংকলন, স্থানান্তর এবং অসমর্থিত অপারেটর সহ উল্লিখিত শর্তাবলীর অধীনে সম্পূর্ণ কাজের চাপ তুলনা করুন। প্রতি সেকেন্ডে পিক অপারেশনগুলি নির্ভুলতা এবং গণনার অনুমানের উপর নির্ভর করে। এগুলি পরিমাপ করা বিলম্ব, থ্রুপুট, শক্তি বা মডেলের নির্ভুলতার বিকল্প নয়।

একটি ব্যবহারিক যাচাইকরণ চেকলিস্ট

  1. সংশ্লিষ্ট সুনির্দিষ্ট প্রসেসর বা প্ল্যাটফর্ম মডেল এবং অ্যাপ্লিকেশন, OS ও রানটাইম সংস্করণগুলি রেকর্ড করুন। প্রকৃত ত্রুটি বা প্রয়োজনীয়তার সঠিক শব্দচয়ন সংরক্ষণ করুন।
  2. সেই নির্দিষ্ট মডেলের জন্য প্রস্তুতকারকের রেফারেন্স পরীক্ষা করুন, তারপর প্রোগ্রামটি যে পরিবেশে চলে সেখানে কার্যকর সক্ষমতা এবং সক্রিয় অবস্থা পর্যবেক্ষণ করুন।
  3. নির্বাচিত বাইনারি বা ব্যাকএন্ডের প্রতিটি প্রয়োজনীয়তা তুলনা করুন। একই নামের কোনো বৈশিষ্ট্য, উপনাম বা বিস্তৃত প্রযুক্তির লেবেলই যথেষ্ট নয়।
  4. অ্যাপ্লিকেশনটি কাঙ্ক্ষিত বাস্তবায়ন নির্বাচন করেছে কিনা তা নিশ্চিত করুন। প্রয়োজনীয়তা পূরণ না হলে এর নথিভুক্ত ডায়াগনস্টিকস এবং একটি সমর্থিত ফলব্যাক ব্যবহার করুন।
  5. একবারে একটি সমর্থিত পরিবর্তন করুন এবং একই কাজের চাপ পুনরাবৃত্তি করুন। মূল কনফিগারেশন এবং পুনরুদ্ধারের পথ উপলব্ধ রাখুন।

যদি বৈশিষ্ট্যটি তালিকাভুক্ত থাকে কিন্তু সফটওয়্যার এটি ব্যবহার করতে না পারে

নির্দিষ্ট ব্যর্থ উপাদানটি দিয়ে শুরু করুন। একটি হার্ডওয়্যার ডাটাবেস সংরক্ষিত সক্ষমতা বর্ণনা করে; অপারেটিং সিস্টেম বা হাইপারভাইজর একটি ভিন্ন কার্যকর পরিবেশ প্রকাশ করতে পারে। একটি অবৈধ-নির্দেশনা (illegal-instruction) ত্রুটির ক্ষেত্রেও প্রকৃত ত্রুটিপূর্ণ নির্দেশনা এবং বাইনারি বিল্ড তদন্ত করা প্রয়োজন, কারণ ডেটা ক্ষতি বা সম্পর্কহীন কোনো অসমর্থিত নির্দেশনাও একই রকম লক্ষণ তৈরি করতে পারে।

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

এই ব্যাখ্যার উৎস এবং পরিধি

Intel 64 and IA-32 Architectures Software Developer's Manual · Linux কার্নেল: ইউজার স্পেসে XSTATE বৈশিষ্ট্যের ব্যবহার

এই রেফারেন্সগুলি আর্কিটেকচারাল আচরণ এবং সফটওয়্যার প্রয়োজনীয়তা স্থাপন করে। এগুলি একটি লিঙ্কযুক্ত হার্ডওয়্যার মডেল পৃষ্ঠার প্রতিটি বৈশিষ্ট্যের মান স্বাধীনভাবে যাচাই করে না। মডেল সাপোর্টের জন্য, সেই পৃষ্ঠার প্রস্তুতকারকের প্রমাণ ব্যবহার করুন এবং কার্যকর সিস্টেম কনফিগারেশন পরীক্ষা করুন। এই নিবন্ধটি কোনো বেঞ্চমার্ক, সার্টিফিকেশন বা স্বাধীন পর্যালোচনার তারিখ সরবরাহ করে না।

উৎস এবং যাচাইকরণ

সম্পাদকীয় মালিকানা: Feex। কোনো স্বাধীন পর্যালোচনার তারিখ রেকর্ড করা নেই। আমরা কীভাবে গবেষণা করি.

  • Intel 64 and IA-32 Architectures Software Developer's Manual · ভলিউম 1 এবং 2 নামযুক্ত নির্দেশিকা পরিবার এবং CPUID বর্ণনা করে; ভলিউম 3 স্টেট, পেজিং, VMX এবং সুরক্ষা নিয়ন্ত্রণ বর্ণনা করে। আর্কিটেকচার ডকুমেন্টেশন কোনো নির্দিষ্ট মডেলের জন্য সাপোর্ট নিশ্চিত করে না।
  • Linux কার্নেল: ইউজার স্পেসে XSTATE বৈশিষ্ট্যের ব্যবহার · OS-সক্ষম ভেক্টর স্টেট, গতিশীলভাবে সক্ষম টাইল স্টেট, সিগন্যাল-স্ট্যাক প্রয়োজনীয়তা এবং AMX অনুমতি প্রবাহ। Linux-নির্দিষ্ট আচরণ অন্য OS সম্পর্কে কোনো প্রতিশ্রুতি নয়।

এই নিবন্ধটি কি দরকারী ছিল?

একটি হ্যাঁ বা না-ই যথেষ্ট। আপনি চাইলে একটি কারণ বেছে নিন, বা একটি ছোট মন্তব্য যোগ করুন।

এই নিবন্ধটি কি দরকারী ছিল?