This page was translated by the Cloud Translation API.
Switch to English

টাইল লেআউট

চিত্র 1

চিত্র 1 দেখায় যে কীভাবে অ্যারে F32 [3,5] 2x2 টাইলিং সহ মেমরিতে রাখা হয়। এই লেআউটের সাথে একটি আকার F32 [3,5] {1,0: (2,2) as হিসাবে লেখা হয়েছে, যেখানে 1,0 মাত্রার শারীরিক ক্রম (লেআউটে মাইনর_ টো_মজোর ক্ষেত্র) এর সাথে সম্পর্কিত যখন (2,2) পরে কোলন 2x2 টাইল দ্বারা শারীরিক মাত্রা টাইলিং নির্দেশ করে indicates

স্বতঃস্ফূর্তভাবে আকারগুলি laidাকতে টাইলস বিছিয়ে দেওয়া হয় এবং তারপরে প্রতিটি টাইলের মধ্যেই উপাদানগুলি টাইলিং ছাড়াই বিছিয়ে দেওয়া হয়, যেমন উপরের উদাহরণে, যেখানে উদাহরণের ডান অংশটি মেশিনে লেআউট দেখায়, এতে সাদা প্যাডিং উপাদান যুক্ত হয় মূল অ্যারে বাউন্ডস না হলেও সম্পূর্ণ 2x2 টাইলস পেতে।

প্যাডিংয়ের অতিরিক্ত উপাদানগুলির কোনও নির্দিষ্ট মান থাকতে হবে না।

একটি আকার এবং একটি টাইল প্রদত্ত টাইলিংয়ের জন্য লিনিয়ার সূচক সূত্র

টাইলিং ছাড়াই অ্যারের সীমানা বিশিষ্ট একটি অ্যারেতে এল = (ই এন , ই এন -1 , ..., ই 1 ) (ডি এন , ডি এন -1 , ..., ডি 1 ) (ডি 1 ) সর্বাধিক গৌণ মাত্রা) অবস্থান থেকে বড় থেকে নাবালিক ক্রম দ্বারা নির্ধারিত হয়:

লিনিয়ার_আইডেক্স (ই, ডি)
= লিনিয়ার_আইডেক্স ((ই এন , ই এন -1 , ..., ই 1 )), (ডি এন , ডি এন -1 , ..., ডি 1 ))
= ই এন ডি এন -1 ... ডি 1 + ই এন -1 ডি এন -2 ... ডি 1 + ... + ই 1

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

আকারের টাইলিং (t n , t n-1 , ..., t 1 ) ব্যবহার করা হয়, সূচকের সাথে অ্যারেতে থাকা একটি উপাদান (e n , e n-1 , ..., e 1 ) এতে ম্যাপ করা হয় চূড়ান্ত বিন্যাসে অবস্থান:

রৈখিক_আন্দেক্স_সহ_ইয়েল (ই, ডি, টি)
= লিনিয়ার_ইন্ডেক্স ((/e / t⌋, e mod t), (/d / t⌉, t)) (পাটিগণিত মৌলিক, (a, b) সংক্ষিপ্তকরণ)
= লিনিয়ার_আইনডেক্স ((ne n / t n ⌋, ..., ⌊e 1 / t 1 ⌋, ই এন মোড টি এন , ..., ই 1 মোড টি 1 )), ( nএন / টি এন ⌉, ..., এডি 1 / টি 1 ⌉, টি এন , টি এন -1 , ..., টি 1 ))
= Linear_index ((⌊e এন / T এন ⌋, ..., ⌊e 1 / T 1 ⌋), (⌈d এন / T এন ⌉, ..., ⌈d 1 / T 1 ⌉)) ∙ টি এন t n-1 ... t 1 + লিনিয়ার_আইডেক্স ((ই এন মোড টি এন , ..., ই 1 মোড টি 1 ), (টি এন , টি এন -1 , ..., টি 1 ))

লেআউটটির দুটি অংশ রয়েছে বলে ভাবা যেতে পারে: (ne n / t n ⌋, ..., 1e 1 / t 1 ⌋), যা আকারের টাইলগুলির অ্যারেতে একটি টাইল সূচির সাথে মিলে যায় (⌈d n / t n ⌉, ..., 1d 1 / t 1 ⌉), এবং (ই এন মোড টি এন , ..., ই 1 মোড টি 1 ), যা ইন-টাইল সূচির সাথে সামঞ্জস্য করে। সিল ফাংশন id i / t i in তে উপস্থিত হয় কারণ টাইলস যদি বড় অ্যারের সীমানাকে অতিক্রম করে তবে প্যাডিং চিত্র 1 হিসাবে সন্নিবেশ করা হয় টাইলগুলির মধ্যে টাইলস এবং উপাদান উভয়ই টাইলিং ছাড়াই পুনরাবৃত্তভাবে বিছানো হয়।

চিত্র 1-এ উদাহরণস্বরূপ, উপাদান (2,3) এর মধ্যে টাইল সূচক (1,1), এবং টাইল সূচক (0,1), (1, 1, 0, 1) এর সম্মিলিত সমন্বিত ভেক্টরের জন্য রয়েছে। টাইল সূচকগুলির সীমানা রয়েছে (2, 3) এবং টাইলটি নিজেই (2, 2) সম্মিলিত ভেক্টরের (2, 3, 2, 2) এর জন্য। লজিকাল আকারে সূচক (2, 3) সহ উপাদানের জন্য টালিযুক্ত রৈখিক সূচক হয়

লিনিয়ার_ইন্ডেক্স_ওইথাইল ((২,৩), (৩,৫), (২,২)
= লিনিয়ার_আইডেক্স ((1,1,0,1), (2,3,2,2))
= লিনিয়ার_আইডেক্স ((1,1), (2,3)) ∙ 2 ∙ 2 + লিনিয়ার_আইডেক্স ((0,1), (2,2%)
= (1 ∙ 3 + 1) ∙ 2 ∙ 2 + (0 ∙ 2 + 1)
= 17।

প্যাড-পুনরায় আকার-স্থানান্তর হিসাবে টাইলিং

টাইলিং-ভিত্তিক লেআউটটি নিম্নরূপে পরিচালনা করে:
মাত্রার একটি অ্যারে বিবেচনা করুন (ডি এন , ডি এন -1 , ..., ডি 1 ) (ডি 1 সর্বাধিক গৌণ মাত্রা)। যখন এটি আকারের টাইলিং (টি এন , টি এন -1 , ..., টি 1 ) (টি 1 সর্বাধিক গৌণ মাত্রা হয়) দিয়ে ছড়িয়ে দেওয়া হয়, তখন সেই টাইলিংটি প্যাড-পুনর্নির্মাণ-ট্রান্সপোজের ক্ষেত্রে নিম্নলিখিত ক্ষেত্রে বর্ণিত হতে পারে উপায়।

  1. অ্যারেটি প্যাড করা হয়েছে (nd n / t n ⌉ ∙ t n , ..., 1d 1 / t 1 ⌉ ∙ t 1 )।
  2. প্রতিটি মাত্রা আমি বিভক্ত (id i / t i ⌉, t i ), অর্থাৎ অ্যারেটিকে পুনরায় আকার দেওয়া হয়েছে
    ( Nএন / টি এন ⌉, টি এন , ..., এডি 1 / টি 1 ⌉, টি 1 )
    নিজে থেকে এই পুনর্নির্মাণে কোনও শারীরিক বিন্যাসের পরিবর্তন নেই, সুতরাং এই পুনর্নির্মাণটি একটি বিটকাস্ট। যদি কেউ সুস্পষ্টভাবে একটি টাইলিংয়ের কথা চিন্তা না করে তবে এই পুনর্নির্মাণটি প্যাডযুক্ত আকারের মতো একই সংখ্যক উপাদানগুলির সাথে কোনও আকারকে প্রকাশ করতে পারে - উদাহরণস্বরূপ এখানে কোনও টাইলকে কীভাবে প্রকাশ করা যায় তার উদাহরণ এখানে।
  3. একটি ট্রান্সপোজ তাদের অপেক্ষাকৃত শৃঙ্খলা বজায় রেখে টি এন , ..., টি 1 সর্বাধিক গৌণ মাত্রায় সরিয়ে নিয়ে যায়, যাতে সর্বাধিক থেকে নাবালিকের দিকে মাত্রার ক্রম হয়
    ( Nএন / টি এন ⌉, ..., এডি 1 / টি 1 ⌉, টি এন , ..., টি 1 )

চূড়ান্ত আকারের উপসর্গ রয়েছে
(Nd n / t n ⌉, ..., 1d 1 / t 1 ⌉), যা প্রতিটি মাত্রায় টাইলগুলির সংখ্যা বর্ণনা করে। অ্যারের মধ্যে একটি উপাদান (ই এন , ..., ই 1 ) চূড়ান্ত আকারে এই উপাদানটিতে ম্যাপ করা হয়:
(Ne এন / টি এন ⌋, ..., 00 / টি 0 ⌋, ই এন মোড টি এন , ..., ই 1 মোড টি 1 )। এটি দেখতে সহজ যে উপাদানটির লিনিয়ার সূচকটি প্রত্যাশার মতো উপরের সূত্রটি অনুসরণ করে।

বারবার টাইলিং

এক্সএলএর টাইলিং বারবার প্রয়োগ করে আরও নমনীয় হয়ে ওঠে।

চিত্র ২

চিত্র 2 দেখায় যে কীভাবে 4x8 আকারের অ্যারেটি দুটি স্তরের টাইলিং দিয়ে টাইল করা হয় (প্রথম 2x4 তারপরে 2x1)। আমরা এই পুনরাবৃত্ত টাইলিংটিকে (2,4) (2,1) হিসাবে প্রতিনিধিত্ব করি। প্রতিটি রঙ একটি 2x4 টাইল নির্দেশ করে এবং প্রতিটি লাল বর্ডার বক্স একটি 2x1 টাইল। সংখ্যাগুলি টাইল্ড ফর্ম্যাটে সেই উপাদানটির স্মৃতিতে রৈখিক সূচক নির্দেশ করে। এই ফর্ম্যাটটি টিপিইউতে বিএফ 16 এর জন্য ব্যবহৃত ফর্ম্যাটটির সাথে মেলে, প্রাথমিক টাইলটি বড় হ'ল, (8,128) (2,1), যেখানে 2x1 দ্বারা দ্বিতীয় টাইলিংয়ের উদ্দেশ্য একসাথে দুটি 16 বিট মান সংগ্রহ করা একটি 32 বিট মান এমনভাবে তৈরি করুন যা কোনও টিপিইউয়ের আর্কিটেকচারের সাথে একত্রিত হয়।

নোট করুন যে দ্বিতীয় বা পরবর্তী টাইল দুটি টাইলের মধ্যে ছোটখাটো মাত্রা বোঝায়, যা কেবল টাইলের মধ্যেই তথ্যকে পুনরায় সাজায়, উদাহরণস্বরূপ (8,128) (2,1) দিয়ে, তবে প্রধান ক্রস-টাইলকেও উল্লেখ করতে পারে পূর্ববর্তী টাইলিং থেকে মাত্রা।

টাইলস ব্যবহার করে মাত্রা একত্রিত করা

এক্সএলএর টাইলিং সংমিশ্রণ মাত্রাও সমর্থন করে। উদাহরণস্বরূপ, এটি F32 এর মাত্রা একত্রিত করতে পারে [2,7,8,11,10] 32 4,3,2,1,0 F এফ 32 [112,110] {1,0} এর সাথে টাইলিংয়ের আগে (2,3) )। ব্যবহৃত টাইল হ'ল (∗, ∗, 2, ∗, 3)। এখানে একটি টাইলের একটি নক্ষত্রটি সেই মাত্রাটি গ্রহণ করে এবং পরবর্তী আরও ছোটখাটো মাত্রার সাথে এটি সংমিশ্রিত করে। একাধিক সংলগ্ন মাত্রা একত্রে এক মাত্রায় যোগ করা যেতে পারে। টাইলের সেই মাত্রায় টাইলের মান -1 দ্বারা একটি উপস্থাপিত মাত্রা প্রতিনিধিত্ব করা হয়, যা মাত্রা আকার হিসাবে টাইলটিতে বৈধ নয়।

আরও স্পষ্টতই, যদি টাইলের একটি অরূদ্ধের মাধ্যমে আকৃতির i ডাইমেনশনটি সরিয়ে ফেলা হয়, তবে টাইলিংয়ের পূর্বনির্ধারিত সংজ্ঞা প্রয়োগ করার আগে, আকারটি টাইল করা এবং টাইল ভেক্টর উভয় থেকেই এই মাত্রাটি সরানো হয়েছিল, এবং i-1 মাত্রাটি কী ছিল ই-1আমি -1 d এর আকৃতি তার অ্যারের আবদ্ধ ঘ থেকে বেড়ে হয়েছে। টাইল ভেক্টরের প্রতিটি নক্ষত্রের জন্য এই পদক্ষেপটি পুনরাবৃত্তি করা হয়।