কেন এখনও জিপিইউগুলিতে রাস্টার রয়েছে?


14

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

কেন এমন?

জিপিইউগুলি কেন সর্বজনীন কম্পিউটিং ইউনিটগুলির সাথে কেবল বৃহত্তর সমান্তরাল ডিভাইস হতে পারে না যেখানে রাস্টারাইজার ব্যবহারকারীর দ্বারা সরবরাহ করা সেই ডিভাইসের জন্য কেবল একটি সফ্টওয়্যার?

ফিক্সড ফাংশন হার্ডওয়্যারটি কি এত উপকারী কর্মক্ষমতা-ভিত্তিতে এমন পদ্ধতির অপ্রয়োজনীয়?


1
"কেন গ্রাফিক্স প্রসেসিং ইউনিট সর্বজনীন প্রক্রিয়াকরণ ইউনিটে নেই", আপনি কি এটি প্রশ্ন করছেন?
Andreas

1
@ আন্ড্রেস নো, আমার প্রশ্নটি পোস্টে যেমনটি বলা আছে তেমনই। রাস্টারাইজাররা কেন এখনও একটি হার্ডওয়্যার অংশ, যখন সেগুলি সফ্টওয়্যারে করা যেতে পারে (আসলে তারা ইতিমধ্যে ওপেনসিএল, বা কম্পিউট শেডারগুলির সাহায্যে করা যেতে পারে)। প্রশ্ন কেন এটি সাধারণ নয় ... সম্ভবত এটি কেবল পারফরম্যান্স, আমি জানি না, সে কারণেই আমি জিজ্ঞাসা করছি ...
mrpyo

আপনি রাস্টারাইজেশনকে বাইপাস করতে পারেন এবং আধুনিক জিপিইউতে গণনা ইউনিটগুলির সাথে আপনার নিজস্ব রাস্টারাইজার প্রয়োগ করতে পারেন এবং আমি আসলে জানি লোকেরা নির্দিষ্ট উদ্দেশ্যে এটি করছে doing
জার্ককোয়েল

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

উত্তর:


15

সংক্ষেপে, পারফরম্যান্সের কারণগুলি কেন তারা প্রোগ্রামযোগ্য নয়।

ইতিহাস এবং বাজার

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

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

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

সফ্টওয়্যার রাস্টারাইজার্সের চেষ্টা

সফ্টওয়্যার মাধ্যমে রাস্টারাইজেশনে কিছু চেষ্টা করা হয়েছে, তবে তাদের সবার কার্যকারিতা নিয়ে সমস্যা রয়েছে বলে মনে হয়।

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

সফ্টওয়্যার পুনরায়করণের সাথে প্রযুক্তিগত সমস্যা

এনভিডিয়া গবেষণাপত্রে অনেকগুলি সমস্যার মুখোমুখি হয়েছিল। সফ্টওয়্যার রাস্টেরাইজারগুলির সাথে এখানে কয়েকটি গুরুত্বপূর্ণ সমস্যা রয়েছে:

প্রধান বিষয়

  • ইন্টারপোলেশন: হার্ডওয়্যার প্রয়োগকরণ বিশেষায়িত হার্ডওয়ারে ইন্টারপোলেশন সমীকরণ উত্পন্ন করে। সফ্টওয়্যার রেন্ডারারের পক্ষে এটি ধীর কারণ এটি খণ্ড শেডারে করা উচিত।

  • অ্যান্টি-এলিয়জিং: অ্যান্টি-এলিয়াসিং (বিশেষত স্মৃতিশক্তি সহ) নিয়েও পারফরম্যান্সের সমস্যা ছিল। সাব-পিক্সেল নমুনাগুলি সম্পর্কিত তথ্য অবশ্যই অন-চিপ মেমরির সঞ্চয় করতে হবে যা এটি ধারণ করার পক্ষে যথেষ্ট নয়। জুলিয়েন গের্টল্ট উল্লেখ করেছিলেন যে সফটওয়্যারটির সাথে টেক্সচার ক্যাশে / ক্যাশেটি ধীর হতে পারে। এমএসএএর অবশ্যই এখানে সমস্যা আছে কারণ এটি ক্যাশে (অ-টেক্সচার ক্যাশে) উপচে পড়ে এবং চিপের স্মৃতিতে চলে যায়। রাস্টারাইজাররা সেই মেমরিতে সঞ্চিত ডেটা সংকুচিত করে, যা এখানে কার্য সম্পাদন করতে সহায়তা করে।

  • বিদ্যুৎ খরচ: সাইমন এফ উল্লেখ করেছিলেন যে বিদ্যুৎ খরচ কম হবে। কাগজটিতে উল্লেখ করা হয়েছিল যে কাস্টম এএলইউগুলি রাস্টেরাইজারগুলিতে রয়েছে (যা বিদ্যুতের খরচ হ্রাস করবে), এবং এটি আগে থেকে খণ্ড এবং ভার্টেক্স প্রক্রিয়াকরণ ইউনিটগুলিতে কাস্টম ইনস্ট্রাকশন সেট (সম্ভবত কাস্টম ALUs হিসাবেও) ব্যবহার করত sense এটি অবশ্যই অনেক সিস্টেমে (যেমন, মোবাইল) এক বাধা হয়ে দাঁড়াবে, যদিও এর কার্যকারিতার বাইরেও এর প্রভাব রয়েছে।

সারসংক্ষেপ

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


আমার মনে হয় না যে আপনাকে সাবপিক্সেল নমুনাগুলি সংরক্ষণ করতে হবে যদি বক্স ফিল্টারিং যথেষ্ট হয় তবে আপনি কেবল রানিং এভারেজ করতে পারেন।
joojaa

2
আমি সন্দেহ করি টেক্সচার স্যাম্পলিং এবং ক্যাশে সম্ভবত এমনও ক্ষেত্র যেখানে হার্ডওয়্যার প্রয়োগগুলি সফ্টওয়্যার বাস্তবায়ন দিয়ে অন্যথায় অসম্ভবকে সম্পাদন করে।
জুলিয়েন গের্টল্ট

3
@ অন্য একটি উল্লেখযোগ্য জিনিস হ'ল শক্তি। উত্সর্গীকৃত হার্ডওয়্যার একই কাজটি সাধারণত বিদ্যুৎ বাজেটের একটি অংশ নিয়ে এবং পাওয়ার থ্রোটলিংয়ের সাথে ইতিমধ্যে একটি সমস্যা বিশেষত মোবাইল ডিভাইসগুলিতে সম্পূর্ণ প্রোগ্রামেবল হয়ে যাওয়ার ফলে এটি আরও খারাপ হতে পারে।
সাইমন এফ

@ জুলিয়েনগুয়ার্টাল্ট ফেয়ার পয়েন্ট, তবে আমি মনে করি এটি বেশিরভাগ এমএসএএ-র ক্ষেত্রে প্রযোজ্য। পরীক্ষার ফলাফলগুলি ইঙ্গিত করে বলে মনে হচ্ছে যে যখন সবকিছু অন-চিপ মেমরির সাথে ফিট করে তবে এটি কোনও বিশাল সমস্যা নয় (যদিও এটি নির্বিশেষে কিছুটা পারফরম্যান্সের প্রভাব ফেলতে পারে)।
এসেস

@ সিমোনএফ আমিও মনে করি এটি একটি দুর্দান্ত পয়েন্টও। আমি এটি উত্তরে অন্তর্ভুক্ত।
এসেস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.