انواع مختلف پردازندههاي جرياني
شيوه NVIDIA:
پردازنده گرافيكي G80 در كارتگرافيك Geforce 8800GTX داراي 128 عدد SP ميباشد و در مدل GTS اين كارتگرافيك 96 عدد SP موجود است كه در يك زمان واحد ميتوانند كارهاي كوچكي را انجام دهند. هر يك از آنها ميتوانند عملياتهاي استاندارد مميز شناوري مانند MAD (يك نوع دستورالعمل ضرب عددي) يا عمليات تابعي پيچيده مانند محاسبه سينوس را اجرا كنند. علاوه بر اين نكته متمايز كننده معماري G80 در اين است كه تك تك 128 عدد SP موجود در داخل G80 ميتوانند به صورت همزمان روي Threadهايي از راسها، Primitiveها يا پيكسلها كار كنند.
بنابر اين در هر سيكل كلاك 128 عدد Thread توسط SPهاي داخل 8800GTX پردازش ميشوند نكته مهم اين است كه هريك از اين 128 SP به صورت كاملا مستقل از هم نيستند به همين خاطر امكان اجراي 128 دستورالعمل متفاوت در يك سيكل وجود ندارد، اما بسته به نوع برنامهسايهزن (راسي، هندسي يا پيكسلي) كه در حال اجرا ميباشد معمولا نياز است يك دستورالعمل در چندين Threadموازي هم روي SP ها به صورت همزمان اجزا شود، به همين خاطر در اجراي دستورالعملهاي مشابه بر روي SP ها به صورت همزمان محدوديت وجود دارد.
در سختافزاري كه NVIDIA طراحي كرده است حداقل تعداد Threadهايي كه بايد با يك نوع دستورالعمل به صورت همزمان پردازش شوند براي سايهزنهاي راسي 16 عدد است، بلوك دياگرام G80 (تصوير شماره 5) نشان ميدهد كه هر گروه 16 تايي از SPها از واحدهاي بافتگذاري ، ثباتها و حافظه كاشه مشتركي استفاده ميكنند كه به اين واسطه ميتوان 16 Thread راسي را يكجا فراخواني و توسط 16 SP پردازش كرد.

تصوير شماره 5 نمايي از معماري داخلي G80
براي سايهزنهاي هندسي و پيكسلي نيز كه اهميت آنها به مراتب بيشتر از سايهزنهاي راسي ميباشد، نرخ موازي سازي 32 عدد Thread در هر سيكل كلاك وجود دارد، به بيان ديگر در اجراي هريك از دستورالعملهاي هندسي و پيكسلي 32 عدد از SPها درگيرخواهند بود.
در جمع بندي كلي با يك محاسبه ساده ميتوان اينگونه برداشت كرد كه G80 به طور همزمان ميتواند 8 دستورالعمل راسي و 4 دستورالعمل هندسي/پيكسلي را اجرا كند:
128 SPs / 16 Threads per Instruction per Clock = 8 Vertex Instructions per Clock
128 SPs / 32 Threads per Instruction per Clock = 4 Pixel Instructions per Clock
شيوه AMD:
SPها در معماري R600 كمي متفاوت هستند، در داخل اين پردازندهگرافيكي 320 عدد SP وجود دارد اما نميتوان آنها مستقيما با 128 عدد SP پردازندهگرافيكي G80 مقايسه كرد، چرا كه SPهاي R600 سادهتر و قابليت اجراي توابع پيچيده را ندارند، با توجه به اينكه AMD، SPها را در گروههاي 5تايي دستهبندي كردهاست (تصوير شماره 6)، از ميان SPهاي هرگروه تنها يك SP ميتواند توابع پيچيده رياضي نظير سينوس را محاسبه كند كه در تصوير شماره 6 اين SP را با ابعاد متفاوت از چهار SP ديگر مشاهده ميكنيد. علاوه بر اين پنج SP در هر بلاك، يك پردازنده محاسبه انشعاب نيز قرار داده شده است كه در تصوير شماره 6 با رنگ بنفش نشان داده شده، اين واحد با Ultra-Threaded Dispatch Processor جهت هماهنگسازي باركاري بلاك و ارتباط آن با ساير بلاكها، تبادل مستقيم دارد. در انتها نيز تعدادي ثبات همهمنظوره قرار داده شده تا نتايج پردازش SPها به صورت موقت در آنها ذخيره شده و در كلاك بعدي، به مرحله بعدي خطلوله انتقال يابد.

تصوير شماره 6 يك گروه از SPهاي R600
اين موضوع كه تنها يك پنجم از SPهاي R600 قابليت اجراي توابع پيچيده رياضي را دارند، اهميت زيادي ندارد چرا كه دستورالعملهاي پيچيده در برنامههاي سايهزن امروزي كمتر استفاده مي شوند، تفاوت اصلي دو معماري به كار گرفته شده در R600 و G80 در اين است كه AMD با هر گروه 5 تايي از SPهاي خود ميتواند يك Thread را پردازش كند در حالي اشاره كرديم هر يك از 128 عدد SP داخل G80 ميتوانند به تنهايي يك Thread را پردازش كنند.
همچنين AMD ميتواند حداكثر 5 دستورالعمل عددي را كه كاملا از يكديگر مستقل هستند توسط يك گروه پنجتايي از SPها به صورت همزمان پردازش كند لذا كامپايلر زبان ماشين AMD جهت يافتن اين دستورالعملهاي مستقل از هم از كد برنامهسايهزن، سرباركاري زيادي را مطالبه ميكند. به همين خاطر كمي دشوار است كه با اطمينان بگوييم تمامي پنج SPهاي داخل بلاكهاي، هنگام اجراي يك برنامه سايهزن مشغول بوده و از حداكثر توان پردازشي خود بهره ميبرند.گرچه AMD به واسطه واحد Ultra-Threaded Dispatch Processor راه كارمديريتي كارآمدي را براي مرتفع كردن اين مشكل ارائه كرده است.
با اين توضيحات به سادگي ميتوان دريافت كه R600 در يك سيكل كلاك چند دستورالعمل را ميتواند اجرا كند: با 320 SP و فرض اينكه هر گروه پنجتايي از SPها ميتوانند با هم يك Thread را پردازش كنند، 64 عدد دستورالعمل در هر سيكل كلاك توسط R600 قابل پردازش است كه اين دستورالعملها ميتوانند متعلق به هريك از برنامههاي سايهزن راسي، هندسي، پيكسلي باشند.
در نظر اول 64 عدد دستورالعمل نسبت به 8 عدد دستورالعمل كه G80 در سايهزنهاي راسي ميتواند همزمان اجرا كند، خيلي بيشتر به نظر ميرسد اما قضيه كمي پيچيده تر از اين است كه با يك مقايسه ساده بتوان در رابطه با آن نظر داد، لذا لازم است كه كمي بيشتر وارد جزئيات پياده سازي SP ها و دستورالعملها شويم تا بتوانيم اين مقايسه را با ديد و دانش مناسب انجام دهيم.