Pages

Wednesday, August 8

VGA (Video Graphics Array)အေၾကာင္း(၄)



Cooling Devices

GPU ေတြဟာ CPU ေတြလိုပဲ ကြန္ပ်ဴတာရဲ့ အပူဆံုးအစိတ္အပိုင္း တစ္ခုျဖစ္တယ္။ သူကို အေအးမေပးဘူးဆိုရင္ ေလာင္ကၽြမ္းသြားႏိုင္တယ္။ ဒါေၾကာင့္ သူမွာ Cooling Device ေတြပါဝင္လာရတယ္။
Cooling Device ေတြကို passive Cooling , Active Cooling, နဲ့ water cooling ဆိုၿပီးရိွတယ္။
Passive Cooling မွာဆိုရင္ အပူကို Cooling Device ကေနသူဘာသာသူ စြန့္ထုက္တယ္။ ဥပမာအားျဖင့္ heatsink ေတြျဖစ္တယ္။

Active cooling ကေတာ့ GPU ကအပူကို cooling device ဆီကို heatpipe လိုဟာမ်ိဳးနဲ့ ကူးေျပာင္းေစျပီးမွ စြန့္ုထုက္တယ္။ heat sink ကေနစြန့္ထုက္တဲ့ ပမာဏနဲ့မေလာက္ေတာ့တဲ့အခါမွာ သံုးပါတယ္ ဥပမာကို ပံုမွာျပထားပါတယ္။ High End card အမ်ားစုဟာ Active cooling ေတြျဖစ္တယ္။

Water Cooling ကေတာ့ တိက္ဆိတ္ညိမ္သက္တဲ့ cooling ကိုလိုခ်င္သူေတြနဲ့ Overclocker ေတြအတြက္ျဖစ္တယ္။ ၄င္းအမ်ိဳးအစားေတြဟာ ေစ်းႏွဳန္းၾကီးမားပါတယ္။
GPU ကေနအပူထုက္မွဳမ်ားလာတာနဲ့ ေသးငယ္တဲ့ cooling device ေတြကမလံုေလာက္ေတာ့ပါဘူး။ ဒီ့အတြက္ပိုမိုၾကီးမားတဲ့ cooler ေတြလိုအပ္လာတယ္။

Cooler အပိုင္းမွာ single slot cooler နဲ့ dual slot cooler ဆိုၿပီးရိွတယ္။
Single slot cooler ဟာ သူ့ရဲ့ တပ္ဆင္တဲ့ slot ေနရာတစ္ခုထဲနဲ့တင္လံုေလာက္ပါတယ္။ သူေဘးမွာရိွတဲ့ card ေတြအတြက္လည္းအဆင္ေျပေစပါတယ္။

Single slot cooler နဲ့မလံုေလာက္တဲ့အခါ dual slot cooler ကိုတပ္ဆင္ေပးလာတယ္။ သူက slot ႏွစ္ခုစာေနရာယူတယ္။ ဒါေပမယ့္ Dual Slot cooler ေတြေလပူေတြကို case ရဲ့အေနာက္ဘက္ကို သူရဲ့ backplate ကေနၿပီးထုက္ေပးတဲ့အတြက္ casing အတြင္းျဖစ္ေပၚတဲ့အပူကိုေလွ်ာ့ခ်ေပးႏိုင္တယ္။

Triple Slot Cooler ဆိုတာရိွပါေသးတယ္။ သူတို့ High End Cooling အတြက္ပဲသံုးပါတယ္။



Vertex

3D game ထဲက object တစ္ခုဒါမွာမဟုတ္ 3D model တစ္ခု ကို vertices ေတြနဲ့ျပဳလုပ္ထားပါတယ္။ Vertex ဆိုတာကေတာ့ X,Y,Z coordinates ရိွတဲ့ အစက္ကေလးေတြပဲျဖစ္ပါတယ္။ မ်ဥ္းေျဖာင့္တစ္ေၾကာင္းရဖို ့ vertex အနည္းဆံုးႏွစ္ခုလိုပါတယ္။ မ်က္နာျပင္တစ္ခုျဖစ္ဆို ့ vertex အနည္းဆံုး သံုးခုလိုပါတယ္။ ေအာက္ပါပံုကိုၾကည့္ပါ။ ကြန္ပ်ဴတာေလာကမွာ မ်ဥ္းေကြးဆိုတာမရိွပါဘူး။ ဒါေၾကာင့္ မ်ဥ္းေကြးတစ္ေၾကာင္းရဖို ့ vertex ေတြအမ်ားၾကီးကို ဆက္ရတယ္။ ပိုမိုရွုပ္ေထြးတဲ့ 3D object ေတြမွာဆိုရင္ vertex ေတြအမ်ားၾကီးပါဝင္ပါတယ္။



Texture

Texture ကေတာ့ 3D မ်က္နာျပင္ေတြမွာေပၚတဲ့ အသားေရလို ့ေျပာရပါမယ္။ ပံုကိုၾကည့္ပါ။ ပထမပံုက texture မထည့္ရေသးတဲ့ 3D box တစ္ခုျဖစ္ျပီး ေနာက္တစ္ပံုက texture ထည့္ထားတဲ့ ပံုျဖစ္ပါတယ္။ Texture ေတြေၾကာင့္သာ ကၽြန္ေတာ္တို ့ေတြ ဂိမ္းေတြထဲမွာ ျမက္ခင္းစိမ္းေတြ၊ အုက္စီထားတဲ့ အိမ္နံရံေတြကိုျမင္ရတာပါပဲ။



Shader

Shader ဆိုတာဟာ ဥပမာေရျပင္ေပၚမွာ ေနေရာင္ျပန္တာမ်ိဳး ျဖစ္ေနေအာင္လုပ္ေပးတာကိုဆိုလိုပါတယ္။ ပံုေဖၚေပးတဲ့အရာလို ့ပဲဆိုပါေတာ့။ ေယဘုံယအားျဖင့္ေတာ့ shader ႏွစ္မ်ိဳးရိွပါတယ္။ Pixel Shader နဲ့ Vertex Shader တို့ျဖစ္ပါတယ္။ Vertex shader ကေတာ့ 3D object ေတြကို ပံုေဖာ္ေပးတယ္။ Pixel Shader ေတြကေတာ့ Pixel ေတြရဲ့ အေရာင္ေတြကို ေျပာင္းလဲေပးပါတယ္။ ဥပမာအားျဖင့္ေျပာရရင္ ဂိမ္းထဲမွာပါဝင္တဲ့ ဓါး ေတြကိုအေရာင္လက္ေအာင္လုပ္ေပးတာမ်ိဳးပါ။

Fill rates 

ကၽြန္ေတာတုိ့ေတြ Graphic Card ေၾကာ္ျငာေတြမွာ Core clock ေတြ၊ memory clock ေတြအျပင္ fill rate ေတြကိုပါေတြ ့ရတက္ပါတယ္။ Fill rate မွာလည္း ႏွစ္မ်ိဳးႏွစ္စား ရိွပါတယ္။ Pixel Fill Rate နဲ့ Texture Fill Rate တို့ျဖစ္ပါတယ္။ Pixel Fill Rate က Graphic Card ကေန တစ္ second မွာ pixel ေပါင္း ဘယ္ေလာက္ထုက္ေပးႏိုင္လဲဆိုတာျဖစ္ပါတယ္။ Texture Fill Rate ကေတာ့ Pixel တစ္ခုျခင္းစီအတြက္ texture ေပါင္း ဘယ္ေလာက္ထုက္ေပးႏိုင္လဲဆိုတာျဖစ္ပါတယ္။
Pixel Fill Rate က ROPs အေရအတြက္နဲ့ Clock Frequency ေျမွာက္ျခင္းနဲ့တူပါတယ္။ Texture fill rate ကေတာ့ nVidia နဲ့ ATI တုိ့ေပၚမွဳတည္ပါတယ္။ nVidia က pixel pipelines ကို clock frequency နဲ့ေျမွာက္ျပီး၊ ATI က Texture unit ကို clock frequency နဲ့ေျမွာက္ပါတယ္။



Graphic Processors

Graphic Processors ေတြကေတာ့ nVidia နဲ့ ATI တို့မွာတစ္ခုနဲ့တစ္ခု မတူညီပါဘူး။ Nvidia က shader processor လို ့သံုးျပီးေတာ့ ATI က Stream processor လို ့သံုးပါတယ္။ သူတို့ႏွစ္ခုကို တိုက္ရိုက္ႏိွဳင္းယွဥ္လို ့မရပါဘူး။ ဥပမာ အားျဖင့္ဆိုရင္ Shader processor 128 ခုပါဝင္တဲ့ 8800 GTS က Stream processor 400 ပါဝင္တဲ့ R3870 ထက္သာပါတယ္။
သူတို့ထက္ပိုျပီးအေရးပါတဲ့အရာေတြရိွေသးပါတယ္။



Vertex Processors (Vertex Shader Unit)

Vertex Processors ေတြကေတာ့ vertex ေတြကိုေဆာင္ရြက္ေပးတဲ့အရာျဖင့္တဲ့အတြက္ ရွုပ္ေထြးတဲ့ 3D object ေတြအမ်ားၾကီးပါဝင္တဲ့ scenes ေတြအတြက္အေရးၾကီးပါတယ္။ ဒါေပမယ့္ overall performance အတြက္ ေတာ့ pixel shader ေတြေလာက္အေရးမၾကီးပါဘူး။

Pixel Processors (Pixel Shader Units)

Pixel shader ေတြဟာ pixel ေတြကိုတြက္ခ်က္ရာမွာအသံုးျပဳပါတယ္။ Pixel ေတြဟာ အေရာင္တစ္ခုကို ကိုယ္စားျပဳတာေၾကာင့္ Pixel shader ေတြက အံ့ၾသဖြယ္ေကာင္းတဲ့ graphic effect ေတြကိုျပဳလုပ္ရာမွာ အေရးပါပါတယ္။ ဥပမာအားျဖင့္ အစစ္အမွန္နီးပါးထင္မွတ္မွားရတဲ့ ေရျပင္ကို pixel shader ေတြကျပဳလုပ္ေပးပါတယ္။

Unifined Shader

Unified shader ေတြကိုေတာ့ DirectX 10 ရဲ့ unified shader architecture အတြက္အသံုးျပဳပါတယ္။ ဒါေၾကာင့္ ေနာက္ပိုင္း directX 10 ကိုေထာက္ပံ့ေပးတဲ့ graphic card ေတြမွာ shader processor ေတြက unified shader ေတြျဖစ္လာရတယ္။

Texture Mapping Units (TMUs)

အမွန္တကယ္ေတာ့ texture ေတြကို သူေနရာမွာသူ ရိွဖို ့ရာအတြက္ address ေတြလိုပါတယ္။ ဥပမာအားျဖင့္ ဂိမ္းေတြမွာ အိမ္ရဲ့ ေခါင္မိုးက texture တစ္မ်ိဳး၊ နံရံက texture တစ္မ်ိဳး၊ တံခါးက texture တစ္မ်ိဳး စသည္ျဖင့္ျဖစ္ပါတယ္။ ဒါေတြအတြက္ TMUs ေတြကလုပ္ေဆာင္ေပးပါတယ္။ TMUs ေတြက vertex shader နဲ့ pixel shader ေတြနဲ့အတူတြဲျပီးအလုပ္လုပ္ပါတယ္။

Raster Operator Units (ROPs)

ROPs ေတြက pixel ေတြကို graphic memory ေပၚကိုေရးသားရာမွာအသံုးျပဳပါတယ္။ အဲ့ဒီ့ေရးသားတဲ့ speed ကို fill rate လို့ေခၚပါတယ္။အရင္တုန္းက ROPs ေတြရဲ့လုပ္ေဆာင္ခ်က္က အေရးႀကီးေပမယ့္ အခုအခါမွာေတာ့ performance အေပၚမွာေတာ့ သိပ္ျပီးသက္ေရာက္မွဳမရိွပါဘူး။


Pipelines

Pipelines လို့ေျပာရာမွာ ၄င္းကို unit တစ္ခုအေနနဲ့မမွက္ယူသင့္ပါဘူး။ ဘာေၾကာင့္လဲဆိုေတာ့ graphic processor ထဲမွာ မတူညီတဲ့ pipelines ေတြပါဝင္ျပီး မတူညီတဲ့ အလုပ္ေတြကို လုပ္ေဆာင္လို ့ပါပဲ။ ဒီမွာေတာ့ pipeline ေတြကို pixel shader ေတြနဲ့ TMUs ေတြခ်ိတ္ဆက္အလုပ္လုပ္မွဳကိုေဖာ္ျပပါတယ္။
ဥပမာ Radeon 9700 မွာ pixel shader ၈ခု ကို TMUs ၈ခုနဲ့ခ်ိတ္ဆက္ထားတဲ့အတြက္ေၾကာင့္ pipelines ၈ခု ပါဝင္တယ္လို ့ေျပာႏိုင္ပါတယ္။ ဒါေပမယ့္ အခုေနာက္ေပၚ card ေတြမွာေတာ့ ဒီလိုေျပာလို့မရေတာ့ပါဘူး။ ဥပမာ အားျဖင့္ ATI's Radeon X1600 မွာ ဆိုရင္ pixel shader ၁၂ ခု ပါဝင္ေပမယ့္ TMUs ကေတာ့ ၈ခုပဲပါဝင္ပါတယ္။ သူ့ကို pipeline ၁၂ ခုလို့မေျပာႏိုင္သလို ၈ခုလို့လဲမေျပာႏိုင္ပါဘူး။ ဘာပဲျဖစ္ျဖစ္ pipeline ပိုမ်ားတဲ့ကဒ္က pipeline နည္းတဲ့ကဒ္ထက္ ေတာ့ပိုျမန္ပါတယ္။

ဆက္လက္ေဖာ္ျပပါမည္...... 

1 comment:

  1. Anonymous11:11 AM

    I was able to find good info from your blog posts.

    Here is my web page :: Blackstuds.xxx

    ReplyDelete