4th Gen Xeon Scalable”Sapphire Rapids”প্রসেসরের সাথে প্রবর্তিত হল বিভিন্ন নতুন এক্সিলারেটর যা নির্বাচিত SKU তে বা ইন্টেল অন ডিমান্ড অফারে উপলব্ধ। যদিও সেখানে প্রাথমিক চ্যালেঞ্জগুলির মধ্যে একটি হল প্রারম্ভিক অ্যাক্সিলারেটর সফ্টওয়্যার সমর্থন সীমাবদ্ধতা এবং অনেক আপস্ট্রিম ওপেন সোর্স (বা এমনকি বিস্তৃত) সফ্টওয়্যার এখনও এই নতুন এক্সিলারেটরগুলি ব্যবহার করতে সক্ষম হয়নি। সেই ফ্রন্টের উন্নতিগুলির মধ্যে একটি হল ইন্টেল ইঞ্জিনিয়াররা কার্নেলের জন্য একটি IAA ক্রিপ্টো কম্প্রেশন ড্রাইভারে কাজ করে যাতে ইন-মেমরি অ্যানালিটিক্স অ্যাক্সিলারেটর ক্রিপ্টো API ব্যবহার করে কার্নেল বৈশিষ্ট্যগুলিতে স্বচ্ছভাবে অ্যাক্সেসযোগ্য হতে পারে।

গত বেশ কয়েক মাস ধরে দেখা গেছে যে লিনাক্স কার্নেলের জন্য IAA ক্রিপ্টো কম্প্রেশন ড্রাইভার আধা ডজন রিভিশনের মধ্য দিয়ে গেছে যতক্ষণ না এটি মেইনলাইনের দিকে কাজ করে। এই নতুন ড্রাইভারটি কার্নেল ক্রিপ্টো API-এর মাধ্যমে Intel IAA অ্যাক্সিলারেটর উপলব্ধ করে এবং এর ফলে সেই API, যেমন Zswap এবং zRAM-কে লক্ষ্য করে কার্নেল কোড ব্যবহার করা যেতে পারে। ড্রাইভার হার্ডওয়্যার দ্বারা বাস্তবায়িত DEFLATE অ্যালগরিদমের সিঙ্ক এবং অ্যাসিঙ্ক উভয় সংস্করণ সরবরাহ করে।

যদিও এই ড্রাইভার আইএএ এক্সিলারেটরের জন্য কার্নেল ব্যবহার-কেস খুলবে, ড্রাইভার প্যাচ নোটগুলি স্যাফায়ার র‌্যাপিডস অ্যাক্সিলারেটর সেট আপ করার বিষয়ে প্রাথমিক মাথাব্যথা স্বীকার করে, যেমন একটি সক্ষম লিনাক্স সফ্টওয়্যার স্ট্যাক বুট করার সময় এটি এখনও অ-অফ-দ্য-বক্স হবে না:

“IAA হার্ডওয়্যারটি মোটামুটি জটিল এবং সাধারণত সেট করার জন্য হার্ডওয়্যার সম্পর্কে যথেষ্ট বিস্তারিত বোঝার সাথে একজন জ্ঞানী প্রশাসকের প্রয়োজন হয়। এটি ব্যবহার করার আগে এটি আপ করুন। ডকুমেন্টেশনে উল্লিখিত হিসাবে, এটি সাধারণত IAA ওয়ার্কসারি, ইঞ্জিন ইত্যাদি গণনা এবং কনফিগার করার জন্য accel-config নামক একটি বিশেষ টুল ব্যবহার করতে হয়, যদিও এটি শুধুমাত্র sysfs ফাইল ব্যবহার করে করা যেতে পারে।

ড্রাইভারের ক্রিয়াকলাপ এই প্রয়োজনীয়তাকে প্রতিফলিত করে এবং হার্ডওয়্যারটি কনফিগার করা হয়ে গেলে এবং IAA ক্রিপ্টো ড্রাইভারের সাথে আবদ্ধ হয়ে গেলে শুধুমাত্র ক্রিপ্টো স্তরের মাধ্যমে হার্ডওয়্যারটিকে অ্যাক্সেস করার অনুমতি দেয়৷ একটি IDXD সাব-ড্রাইভার হিসাবে, IAA ক্রিপ্টো ড্রাইভার মূলত এর মালিকানা নেয় হার্ডওয়্যার যতক্ষণ না এটি প্রশাসক দ্বারা স্পষ্টভাবে ছেড়ে দেওয়া হয়। এটি স্বয়ংক্রিয়ভাবে ঘটে যখন প্রশাসক প্রথম IAA ওয়ার্ককিউ সক্ষম করে বা শেষটি নিষ্ক্রিয় করে; iaa_crypto (sync এবং async) অ্যালগরিদমগুলি নিবন্ধিত হয় যখন প্রথম ওয়ার্কসারি সক্রিয় থাকে, এবং শেষটি নিষ্ক্রিয় হলে নিবন্ধনমুক্ত করা হয়৷

অপারেশনের স্বাভাবিক ক্রম সাধারণত হবে:

accel-config বা sysfs ব্যবহার করে হার্ডওয়্যার কনফিগার করুন

iaa ক্রিপ্টো ড্রাইভার কনফিগার করুন (নীচে দেখুন)

সাবসিস্টেম কনফিগার করুন যেমন iaa_crypto অ্যালগো ব্যবহার করতে zswap/zram

ওয়ার্কলোড চালান”

কিন্তু যখন সবকিছু সেটআপ করা হয় এবং এই প্রস্তাবিত ড্রাইভারের সাথে চলতে থাকে, তখন IAA এর সাথে পারফরম্যান্সের ফলাফল বেশ নাটকীয় হয় বিশুদ্ধ সফ্টওয়্যারের তুলনায় ব্যবহার:
এই মাসের শুরুতে একটি v6 প্যাচ সিরিজ< এই কার্নেল ড্রাইভারটিকে পর্যালোচনার জন্য পাঠানো হয়েছিল৷ যদিও সময় দেওয়া হয়েছে এবং এখনও cryptodev.git শাখা দ্বারা বাছাই করা হয়নি, তবে এই ড্রাইভারটি আসন্ন Linux v6.5 চক্রের জন্য সময়মতো প্রস্তুত হবে না৷ আরেকটি বাধা লিনাক্স ক্রিপ্টো সাবসিস্টেম রক্ষণাবেক্ষণকারী হার্বার্ট জু গত সপ্তাহে সম্ভাব্য উত্থাপিত:
তাই আপনি বলেছেন যে ক্যানড জেনেরিক ডিফ্লেট অ্যালগরিদমের সাথে সামঞ্জস্যপূর্ণ নয়। এর মানে কি জেনেরিক ডিফ্লেট অ্যালগরিদম দ্বারা সংকুচিত কিছু ডিকম্প্রেস করার কোন উপায় নেই এবং এর বিপরীতে এর সংকুচিত আউটপুট জেনেরিক ডিফ্লেট দ্বারা ডিকম্প্রেস করা যাবে না ?

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

Categories: IT Info