Thursday 20 October 2011

Video Graphic Adapter (VGA) အေၾကာင္း သိေကာင္းစရာ

VGA

Output မ်ား
ပံုမွာျပထားတာကေတာ့ Graphic Card ရဲ့ output ေတြရိွရာေနရာပဲျဖစ္ပါတယ္။ PC ရဲ့ hardwares ေတြဟာ digital နည္းပညာျဖစ္တဲ့ 0 နဲ့ 1 ေတြနဲ့သာလုပ္ေဆာင္ပါတယ္။ ဒါေၾကာင့္သူတို့ကထြက္လာတဲ့ output ဟာ digital ေတြပဲျဖစ္ပါတယ္။ ဒါေပမယ့္ ကၽြန္ေတာ္တို ့အရင္တုန္းကသံုးခဲ့တဲ့ CRT Monitor ေတြဟာ Analog ျဖစ္ပါတယ္။ သူတို ့အတြက္ digital ကေန Analog ေျပာင္းဖို့ digital to analog converter (DAC) လုိ့ေခၚတဲ့ device ေတြလိုလာပါတယ္။ ယခုသံုးေနတဲ့ LCD ေတြကေတာ့ digital ေတြျဖစ္ပါတယ္။ ဒါေၾကာင့္ DAC ေတြရဲ့လိုအပ္မွဳဟာလည္းနည္းပါးလာပါတယ္။ ဒါေပမယ့္ စံတစ္ခုအေနနဲ့analog ကိုေထာက္ပံ့ေပးေနတုန္းပါပဲ။

VGA output (D-sub)
VGA output မွဆိုရင္ pin အေရအတြက္ 15 pins ပါပါတယ္။ သူကို သာမန္အားျဖင့္ အျပာေရာင္နဲ့သက္မွတ္ပါတယ္။ VGA ကေတာ့ Video Graphic Array ကိုဆိုလိုပါတယ္။ Hardware ပိုင္းမွာေတာ့ Video Graphic Adapter လို့ေခၚပါတယ္။ ၄င္းဟာ analog display Signal ေတြကိုေထာက္ပံ့ေပးပါတယ္။

DVI Output
DVI ဟာ စံသက္မွတ္ထားတဲ့ digital output ျဖစ္ပါတယ္။ DVI ရဲ့အရွည္ ကေတာ့ Digital Visual Interface ျဖစ္ပါတယ္။ DVI ကိုမ်ားေသာအားျဖင့္ digital projector ေတြ၊ HDTV (High Definition TeleVeision) ေတြနဲ့ခ်ိတ္ဆက္ႏိုင္ပါတယ္။ ၄င္းဟာ resolution အေနျဖင့္ 2560x1600 ထိေထာက္ပံ့ႏိုင္ပါတယ္။ 2004 ခုႏွစ္ထက္ ေနာက္မက်တဲ့ ကဒ္ေတြမွာဆိုရင္ DVI ေပါက္ တစ္ေပါက္ကေတာ့ ပါပါတယ္။
Composite Video Output
ဒါကေတာ့ Composite Video Output ျဖစ္ပါတယ္။ သူ့ကို RCA (Radio Corporation of America )လို ့လည္းေခၚပါတယ္။ သူ့ကို TV ေတြ၊ VCRလို ပစၥည္းမ်ိဳးေတြနဲ့ခ်ိတ္ဆက္အသံုးျပဳပါတယ္။ဒါေပမယ့္ very low resolution analog signal ေတြကိုပဲ ေပးပို ့ႏိုင္ပါတယ္။

S-Video (S-VHS)
S-Video က Super Video သို့ Super VHS လို့ေခၚပါတယ္။ S-Video မွာ Pin 4 ခုပါပါတယ္။ သူကိုေတာ့ television industry ေတြက စံအျဖစ္သက္မွက္ထားပါတယ္။ သူလည္းပဲ low resolution analog signal ေတြကိုပဲေပးပို ့ႏိုင္ပါတယ္။ ဒါေပမယ့္ composite video output ထက္္စာရင္ေကာင္းပါတယ္။ single cable video output မွာေတာ့ စံအျဖစ္ရိွေနေသးပါတယ္။

Component Video
Component Video ေတြဟာ Graphic Card မွာထည့္သြင္းဖို ့အတြက္ မ်ားျပားေနတာေၾကာင့္ သက္သက္ adapter တစ္ခုအေနနဲ့ပဲပါဝင္ပါတယ္။ Component Video Output မွာဆိုရင္ Video အတြက္သာမကပဲ audio ပါ ပါဝင္လာပါတယ္။ အစြန္ဆံုး က အစိမ္း၊ အနီနဲ့ အျပာ က video အတြက္ျဖစ္ၿပီးေတာ့ က်န္တဲ့ ႏွစ္ခုက audio အတြက္ျဖစ္ပါတယ္။ သူရဲ့ output ေတြကို Y, Pb, Pr လို့ေခၚတဲ့ output ေတြအေနနဲ့ ခြဲထြက္လာတာေၾကာင့္ HDTV ေတြ၊ Digital projector ေတြနဲ့ခ်ိတ္ဆက္ႏိုင္ပါတယ္။
သူရဲ့ signal ေတြဟာ analog ေတြျဖစ္ေပမယ့္လို့ သီးျခား colour output ေတြအေနနဲ့ခြဲထုက္ထားတာေၾကာင့္ High resolution ကိုရေစပါတယ္။

HDMI
HDMI ကေတာ့ High Definition Multimedia Interface ကိုညႊန္းဆိုတာပဲျဖစ္ပါတယ္။ HDMI ကိုသာမန္ graphic card ေတြမ်ာမေတြ့ရပဲ၊ Entertainment ဦးစားေပး ကဒ္ေတြနဲ့ High end card ေတြမွာပဲေတြ့ရပါတယ္။ HDMI မွာ High definition Video နဲ့ Audio ေတြကို ေပးပို ့ႏိုင္စြမ္းရိွပါတယ္။
ဒါေပမယ့္ သူ့နဲ့ခ်ိတ္ဆက္မယ့္ cable ေတြကေတာ့ ေစ်းၾကီးေနပါေသးတယ္။

Graphic Card Interfaces
ပံုမွာျပထားတာကေတာ့ Graphic Card Interface ျဖစ္ပါတယ္။ Graphic Card Interface ဟာ graphci card နဲ့ computer ၾကား ခ်ိတ္ဆက္ေပးတဲ့ အရာပဲျဖစ္ပါတယ္။
Graphic card ေတြကိုဝယ္ယူရာမွာ Interface ကအရမ္းကိုအေရးၾကီးပါတယ္။ ကိုယ့္ MB ရဲ့ Graphic card slot ဟာ ကိုယ္ဝယ္လာတဲ့ Graphic Card ရဲ့ Interface ခ်င္းကိုက္ညီမွဳမရိွဘူးဆိုရင္ တပ္ဆင္လို ့မရပါဘူး။ ဥပမာ အားျဖင့္ PCI Express graphic card ဟာ AGP slot မွာတပ္ဆင္လို့မရသလို AGP Graphic Card ကလည္း PCI Express slot မွာတပ္ဆင္လို့မရပါဘူး။ MB နဲ့ Graphic Card အျပန္အလွန္ data ေပးပို့ႏိုင္မွဳကို Bandwidth နဲ့တိုင္းတာပါတယ္။ Bandwidth ျမင့္ေလ graphic card က ျမန္ျမန္ဆန္ဆန္ အလုပ္လုပ္ႏိုင္ေလျဖစ္ပါတယ္။ ဒါေပမယ့္လဲ Graphic Card Industry ေတြေျပာသေလာက္ Interface တစ္ခုနဲ့တစ္ခု သိပ္ျပီးကြာျခားမွဳမရိွပါဘူး။
Interface ေတြဟာ အရင္တုန္းက အမ်ားၾကီးရိွေပမယ့္ လို ့အခုအခါမွာေတာ့ AGP နဲ့ PCI Express ပဲက်န္ပါေတာ့တယ္။ ဒါေပမယ့္ ဗဟုသုတ အေနနဲ့ေဖာ္ျပေပးလိုက္ပါတယ္။

ISA
ISA ဆိုတာက Industry Standard Architechure ကိုဆိုလိုပါတယ္။ သူကို ဟိုးအရင္တုန္းက ကြန္ပ်ဳတာေတြမွာပဲ ေတြ့ႏိုင္ပါတယ္။ အခုခ်ိန္မွာေတာ့ ေပ်ာက္ကြယ္သြားပါျပီ။ သူမွာ 8 bit wide interface နဲ့ 16 bit wide interface ဆိုၿပီး graphic card ႏွစ္မ်ိဳးထြက္ရိွပါတယ္။ EISA (Extended ISA) ဆိုၿပီးထြက္ေပၚလာပါေသးတယ္။ သူကေတာ့ 32 bit wide ရိွပါတယ္။ ဒါေပမယ့္ ေစ်းၾကီးတဲ့အတြက္ ေနာက္ထပ္ Interface အသစ္ထြက္ေပၚလာတဲ့အခါ ေမွးမိွန္သြားခဲ့တယ္။

PCI
PCI က Peripheral Components Interconnect ကိုဆိုလိုပါတယ္။ သူက 32 bit wide interface ျဖစ္ၿပီး 33MHz speed နဲ့ run ပါတယ္။ 133 MB/s Bandwidth ကိုရရိွပါတယ္။ PCI ကို ISA ေတြေနရာမွာ အစားထိုးအသံုးျပဳပါတယ္။ PCI ေတြကို add in card ေတြအတြက္ ယခုထိစံထားသံုးစြဲေနေသးပါတယ္။ ဒါေပမယ့္ Graphic Card ေတြအတြက္ကေတာ့ မသံုးေတာ့ပါဘူး။

PCI X
PCI -X ကေတာ့ PCI Extended ကိုဆိုလိုတာျဖစ္ပါတယ္။ သူ့မွာ 64 bit wide interface ရိွျပီး 4266 MB/s bandwidth ရိွပါတယ္။ ဒီကဒ္ေတြကို server ေတြမွာပဲအသံုးျပဳခဲ့ျပီး ေတြ႕ရခဲပါတယ္။ PCI X ကဒ္ေတြကို ကၽြန္ေတာ္တို ့ရဲ့ PCI ver 2.2 slot ေတြမွာတပ္ဆင္ႏိုင္ပါတယ္။ ဒါေပမယ့္ PCI Express slot ေတြမွာတပ္လို ့မရပါဘူး။

AGP
AGP ကေတာ့ Accelerated Graphic Port ကိုဆိုလိုပါတယ္။ သူကို PCI rev 2.1 ေပၚကို အေျခခံၿပီးထုက္လုပ္ထားတာျဖစ္ပါတယ္။ AGP မွာ system memory နဲ့ တိုက္ရိုက္ခ်ိတ္ဆက္ အလုပ္လုပ္ႏိုင္မွဳ၊ organization နဲ့ data transfer မွာ de-multiplexing နဲ့ simplification လုပ္ေဆာင္ႏိုင္မွဳ၊ clock speed ျမန္ဆန္မွဳတို့ေၾကာင့္ PCI ေတြအေပၚကို အသာစီးရထားပါတယ္။AGP ကို verison ၃မ်ိဳးနဲ့ထုက္ ပါတယ္။ AGP x1, AGP 4x, AGP 8x တို့ျဖစ္ပါတယ္။ AGP ဟာ 32 bit wide နဲ့ 66MHz speed ရိွပါတယ္။ 266MB/s bandwidth ကိုရပါတယ္။ AGP 8x ဆိုတာက AGP 1x ထက္ ၈ဆပိုျမန္တယ္လို ့ဆိုတာျဖစ္ပါတယ္။ AGP 8x ကို 4x slot မွာတပ္ဆင္ႏိုင္ပါတယ္။ ဒါေပမယ့္ 4x speed နဲ့ပဲအလုပ္လုပ္မွာျဖစ္ပါတယ္။ ထို့အတူပဲ AGP 4x ကို 8x slot မွာတပ္ဆင္ပါက 4x speed နဲ့ပဲအလုပ္လုပ္မွာျဖစ္ပါတယ္။

PCI Express
PCI Express ဟာ Parallel Interface Bus system ေတြျဖစ္တဲ့ ISA, PCI, AGP ေတြနဲ့မတူပဲ Serial Interface Bus System ရိွပါတယ္။ Parallel Bus ေတြနဲ့မတူတာက စုစုေပါင္း Bandwidth ကို device ေတြအားလံုးကရႏိုင္တာပါပဲ။PCI Express ေတြဟာ single Links တစ္ခုျခင္းစီရဲ့ speed ကို ေျမွာက္ျခင္းနဲ့ အလုပ္လုပ္ပါတယ္။ single link တစ္ခုမွာ 250MB/s up stream နဲ့ 250 MB/s downstream ရိွပါတယ္ (upstream to the system and downstream to the device)။ PCI E x 16 က single link ရဲ့ ၁၆ ဆ ျဖစ္တဲ့ 4GB/s up stream နဲ့ 4GB/s downstream (total 8GB/s) ရိွပါတယ္။ PCI Express x16 card ေတြဟာအၿမဲတမ္း 16 ဆနဲ့အလုပ္လုပ္စရာမလိုပါဘူး။ ဒါေၾကာင့္ dual Graphic card ေတြကို တပ္ဆင္ႏိုင္ေအာင္ ေဆာင္ရြက္လာတယ္။ PCIE x16 slots ႏွစ္ခုပါလာၿပီး slot တစ္ခုပဲသံုးမယ္ဆိုရင္ 16x နဲ့ လုပ္ႏိုင္ၿပီး card ႏွစ္ခုသံုးပါက 8x နဲ့အလုပ္လုပ္ၾကတယ္။ ဒါေၾကာင့္ SLI နဲ့ Crossfire နည္းပညာကိုေထာက္ပံ့တဲ့ ကဒ္ေတြကို PCI Express interface နဲ့ပဲလာတာျဖစ္တယ္။ ဒါေပမယ့္ Bandwidth ေတြကို တိုးလာတာနဲ့အမွ် Card ေတြမွာလည္း power ပိုမိုလိုအပ္လာတယ္။ Slot က power နဲ့မလံုေလာက္ေတာ့တဲ့အခါမွာ card ေတြမွာ Power connector ေတြသက္သက္ထည့္သြင္းလာတယ္။ယခုေပၚထြက္ေနတဲ့ Mid-range နဲ႕ highend card ေတြမွာဆိုရင္ 4-pin, 6-Pin, 8-pin power connector ေတြ တစ္ခုကေန ႏွစ္ခုထိပါဝင္လာတယ္။


Graphic Processor and Memory
ကြန္ပ်ဳတာမွာ CPU ကို ကြန္ပ်ဳတာရဲ့ Brain အျဖစ္တင္စားရင္ Graphic Card မွာ GPU ကို အသည္းႏွလံုးအျဖစ္တင္စားရလိမ့္ မယ္။ သူကို Cooler ေအာက္မွာထားတယ္။ CPU လိုသူကို ျဖဳတ္တပ္လို႕မရပါဘူး။ Graphic Card ထုက္လုပ္သူေတြက တခါတည္းတပ္ဆင္ေပးလိုက္တယ္။ Pixel Shaders, Vertex Shader, Pipelines, Core clock speeds ေတြဟာ GPU ကလုပ္ေဆာင္ေပးႏိုင္တဲ့ architecture ေတြပဲျဖစ္တယ္။
Graphic card ေတြကိုၾကည့္ရင္ GPU အျပင္ေနာက္တစ္ခုပါဝင္လာတာက Memory ပဲျဖစ္တယ္။ Memory ေတြကို ေတာ့ GPU နဲ့အတက္ႏိုင္ဆံုး နီးေအာင္ထားၾကတယ္။ Interface Clock speed ျမင့္ျမင့္ရေအာင္ျဖစ္တယ္။
Graphic Memory ေတြဟာ DDR2, DDR3, GDDR3, GDDR4, GDDR5 ဆိုၿပီးရိွၾကတယ္။ အဲ့ဒီ့ Memory ေတြဟာ 64 bit wide ကေန 512 bit wide ထိရိွတယ္။ memory မ်ားေလ graphical data ကိုပိုၿပီး store လုပ္ႏိုင္ေလျဖစ္တယ္။ Memory နည္းရင္ လိုအပ္တဲ့ data က graphic memory နဲ့မလံုေလာက္တဲ့အခါ system memory ကေနသြားယူေနရတယ္။ ဒါေပမယ့္လည္း Graphic memory ရဲ့ပမာဏ ကသိပ္ၿပီးအဓိကမၾကပါဘူး။ သူ့ရဲ့ memory bus wide ကပိုၿပီးေတာ့အဓိကက်ပါတယ္။ 512MB graphic memeory ရိွတဲ့ card နဲ့ 1GB memory ရိွတဲ့ card ႏွစ္ခုဟာ performance သိပ္မကြာလွပါဘူး။ ဒါေပမယ့္ 64 bit bus wide နဲ့ 128 bit bus wide ႏွစ္ခုဆိုရင္ေတာ့ သိသိသာသာကြာျခားပါတယ္။
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 နည္းတဲ့ကဒ္ထက္ ေတာ့ပိုျမန္ပါတယ္။


Microsoft's DirectX, OpenGL, Shader Model
ဒီ အသံုးအႏွဳန္းေတြကို ကၽြန္ေတာ္တို့ေတြ ေတြ ့ေနၾကျဖစ္ေပမယ့္ နားလည္သူနည္းပါတယ္။DirectX နဲ့ OpenGL တို ့က graphic API ေတြျဖစ္ပါတယ္။ API ဆိုတာက Application Programming Interface ကိုဆိုလိုတာပါ။ API ေတြေပၚမလာခင္တုန္းက graphic card company ေတြဟာသူတို့ ရဲ့ကဒ္ေတြကို သီးသန့္ programmin language ေတြနဲ့အသံုးျပဳႏိုင္တယ္။ ဆိုလိုတာက game ေရးသားသူေတြဟာ ကဒ္အမ်ိဳးအစားတစ္ခုစီအတြက္ အကုန္ေရးသားေပးရတယ္။ ဒါမွ သူတို့ေရးတဲ့ game ကို ကဒ္ေတြအကုန္လံုးနဲ့ လိုက္ဖက္ညီညီ ေဆာ့ကစားႏိုင္မွာျဖစ္တယ္။ အဓိကျပႆနာက အခ်ိန္ကုန္ျပီးကုန္က်စရိတ္မ်ားတာပဲျဖစ္တယ္။ ဒီ့အတြက္ programming “စံ” တစ္ခုကိုသက္မွတ္ၾကတယ္။ ၄င္းကို API ေတြလို့ေခၚတယ္။ graphic အတြက္မို့လို့ graphic API လို့ေခၚပါတယ္။ ယခုလက္ရိွသံုးေနတဲ့ APIs ေတြက DirectX နဲ့ OpenGL ပဲျဖစ္တယ္။ DirectX က Graphic card ေတြေပၚမွာ ပိုၿပီး လႊမ္းမိုးမွဳရိွတယ္။ တကယ္ေတာ့ Direct X ဟာ Graphic API တစ္ခုတည္းမဟုတ္ပါဘူး။ သူ့မွာ တၿခား API ေတြပါဝင္ပါေသးတယ္။ ဥပမာ sound, Input device, Music စတာေတြေပါ့။ ယခုလက္ရိွမွာေတာ့ Direct X 11 ကအျမင့္ဆံုးပါပဲ။ Direct X version ေတြက တစ္ခုနဲ့တစ္ခုမတူပါဘူး။ ဆိုလိုတာက Direct X 9.0 ကို ေထာက္ပံ့ေပးတဲ့ကဒ္က direct X 10.0 ကိုမေထာက္ပံ့ေပးႏိုင္ပါဘူး။ ဒါေပမယ့္ Direct X 10.0 ကဒ္က 9.0 ကိုေတာ့ေထာက္ပံ့ေပးပါတယ္။ တစ္ခုသတိထားရမွာက direct X 9.0 version ေတြထိပဲ window XP က လက္ခံေဆာင္ရြက္ႏိုင္တယ္။ window vista ၾကမွ 10.0 ကိုလက္ခံႏိုင္ပါတယ္။ ေနာက္တစ္ခုက Shader Model ေတြပဲျဖစ္တယ္။ သူတို့က Direct X ရဲ့ function အခြဲေလးေတြလို့ဆိုရမွာပဲ။ ဘာပဲျဖစ္ျဖစ္ ျမင့္ေလေကာင္းေလပါပဲ။ Direct X model ျမွင့္ျခင္းက ပိုမိုရွုပ္ေထြးတဲ့ 3D model ေတြကိုလက္ခံေဆာင္ရြက္ႏိုင္ပါတယ္။


HDR and OpenEXR HDR
HDR (High Dynamic Range) ဆိုတာကေတာ့ 3D application နဲ့ game ေတြမွာ အစစ္အမွန္နီးပါး အလင္းကိုရရိွဖို့အတြက္ အသံုးျပဳၾကတယ္။ Graphic Card အကုန္လံုးဟာ Direct X version ေတြလိုပဲ HDR ကိုမေထာက္ပံေပးႏိုင္ပါဘူး။ Direct X 9.0 ေပၚမလာခင္တုန္းက graphic ကဒ္ေတြဟာ lighting ပိုင္းအတြက္ 8-Bit (256 color) ထိပဲတြက္ခ်က္ႏိုင္တယ္။ Direct X 9.0 ကဒ္ေတြကေတာ့ lighting ပိုင္းအတြက္ 24 bit (16.7 million color) ထိတြက္ခ်က္ႏိုင္လာတယ္။ Shader Model 3.0 (SM 3) ကိုေထာက္ပံ့ေပးႏိုင္တဲ့ ကဒ္ေတြကေတာ့ OpenEXR HDR ကိုအသံုးျပဳႏိုင္တယ္။ သူက 32 bit ထိတြက္ခ်က္ေပးႏိုင္တယ္။ OpenEXR HDR ကိုေတာ့အဓိကအားျဖင့္ ရုပ္ရွင္လုပ္ငန္း ျဖစ္တဲ့ VFX ေတြအတြက္အဓိကထားပါတယ္။ အဓိကျပႆနာကေတာ့ ဂိမ္းေတြကို HDR နဲ့ေဆာ့ရင္ system တစ္ခုလံုးကို ေႏွးေကြးသြားတာပဲ။ ဒါေၾကာင့္ game ေတြကို HDR နဲ့ေဆာ့ကစားခ်င္ရင္ graphic card အျမင့္စားေတြကိုလိုပါမယ္။



Anti-Aliasing
Aliasing ဆိုတာကေတာ့ အထစ္ထစ္နဲ့အနားစြန္းေတြျဖစ္ေနတာ၊ အတံုးေလးေတြျဖစ္ေနတာကိုဆိုလိုတာပါ။ ဒါဟာ pixel ေတြေၾကာင့္ပါ။ ကြန္ပ်ဴတာမွာ မ်ဥ္းေကြးဆိုတာမရိွပါဘူး။ မ်ဥ္းေကြးကိုလိုခ်င္ရင္ pixel ေလးေတြကို ဆက္ျပီးလုပ္ယူရတာေၾကာင့္ အထစ္ထစ္ေတြျဖစ္ရတာပါ။ သူကို ေခ်ျဖက္ဖို့အတြက္ Anti - Aliasing (AA) ကိုအသံုးျပဳလာၾကတယ္။ အဓိက color တစ္ခုကို သူ့ေဘးမွာ အေရာင္အႏုအရင့္ေပါင္းထည့္ လိုက္ျပီးပိုမိုေခ်ာေမြ့တဲ့ မ်က္နာျပင္ရေအာင္ျပဳလုပ္တာျဖစ္ပါတယ္။ သူရဲ့ပမာဏကို “အဆ” နဲ့ တိုင္းပါတယ္။ 2x, 4x စသည္ျဖင့္ေပါ့။ 2x AA ထက္ 4x AA ကပိုၿပီးေခ်ာေမြ ့ေပမယ့္လို ပိုၿပီး ေတာ့လည္း graphic power ကိုသံုးပါတယ္။ graphic performance ကိုေႏွးေစတဲ့ထဲမွာ ဒီေကာင္ကလည္း အဓိက ျပႆနာပါပဲ။


Texture Filtering
3D game ေတြအားလံုးမွာ texture ေတြပါဝင္ပါတယ္။ ဒီ texture ေတြဟာ ဥပမာအားျဖင့္- texture ရိွတဲ့ မ်က္နာျပင္ကို အေပၚစီးကၾကည့္ရင္ ျပတ္ျပတ္သားသားျမင္ရေပမယ့္ ေဘးတိုက္ကျဖစ္ေစ၊ တစ္ေျပးညီကျဖစ္ေစၾကည့္လိုက္ရင္ မွဳန္ဝါးသြားတာ၊ ရွင္းရွင္းလင္းလင္းမျမင္ရတာေတြ ျဖစ္လာပါတယ္။ ဒီျပႆနာေတြကို ေျဖရွင္းဖုိ့အတြက္ Texture Filtering ကို ထည့္သြင္းလာၾကပါတယ္။ သူ့မွာ bilinear, Tri- linear နဲ့ Anistropic Filtering ဆိုျပီးရိွပါတယ္။ ဒါေတြက filtering method ေတြျဖစ္ပါတယ္။ bi-linear ထက္ Tri-linear ကပိုေကာင္းျပီး သူတို့ေတြထက္ Anistropic ကပိုေကာင္းပါတယ္။ ဒီ effect ေတြက ေနာက္ပိုင္းထြက္ရိွလာတဲ့ကဒ္ေတြရဲ့ performace ကိုသိသိသာသာ ထိခိုက္ျခင္းမရိွေတာ့ပါဘူး။ ဒါေပမယ့္ texturing filtering ကိုပိုမိုသံုးရင္ performance ပိုမိုလိုတယ္ဆိုတာေတာ့သိထားရပါမယ္။


High definition texture
Game ေတြကို အျပင္ေလာကနဲ့တူေအာင္ လုပ္ေဆာင္တဲ့ေနရာမွာ texture ေတြကလည္းအေရးပါပါတယ္။ resolution ပိုမိုေကာင္းမြန္တဲ့ texture ေတြကိုသံုးေလ garaphic memory မ်ားမ်ားလိုေလျဖစ္ပါတယ္။ Texture ေတြကို memory ေတြကအမီွမလိုက္ႏိုင္တဲ့အခါ game ကစားရာမွာ texture ေတြကေနာက္က် ၿပီးမွ ေပၚလာတာမိ်ဳးေတြျဖစ္တက္ပါတယ္။ ဘာလို့လဲဆိုေတာ့ လိုအပ္တဲ့ texture ေတြကို system memory, HDD ေတြကေနေခၚယူေနရလို့ျဖစ္ပါတယ္။ game ေတြကို texture ျမင့္ျမင့္နဲ့ေဆာ့ျခင္ရင္ေတာ့ memory မ်ားမ်ားပါတဲ့ ကဒ္ကိုထည့္တြက္ရပါမယ္။


Choosing Graphic Card
ဒီေလာက္ဆိုရင္ စာဖက္သူတို့လည္း graphic card အေၾကာင္းကို ေတာ္ေတာ္မ်ားမ်ား နားလည္ေလာက္ျပီထင္ပါတယ္။ ဒါဆိုရင္ အခု Graphic Card ေတြကိုေရြးခ်ယ္ရာမွာ ဦးစားေပး စဥ္းစားရမယ့္အခ်က္ေတြကိုေျပာျပပါမယ္။
အခုလက္ရိွေစ်းကြက္ထဲမွာ ေရာက္ေနတဲ့ ကဒ္အားလံုးနီးပါးဟာ PCI E ေတြျဖစ္လို့ ဒါကိုေတာ့ ထည့္မေျပာေတာ့ဘူး။

၁- GPU
စစျခင္း GPU ကိုစဥ္းစားရပါမယ္။ သူက Graphic performance တစ္ခုလံုးအတြက္ အခရာ က်တယ္။ သူမွာ shader processor, stream processor ဘယ္ေလာက္ပါသလဲ။ Pipeline ေတြ၊ pixel shader ေတြ၊ vertex shader ေတြ၊ texture /pixel fill rate စတာေတြကိုၾကည့္ရပါမယ္။

၂- Memory Interface
Graphic Memory ပမာဏထက္ သူရဲ့ interface ကိုအဓိကထားရပါမယ္။ ဥပမာ- 1GB- 128bit ထက္ 521MB 256 bit ကိုေရြးသင့္ပါတယ္။

၃- supporting function and output
ေနာက္တစ္ခုက ဘာေတြကို support လုပ္သလဲ၊ Direct X 10ရသလား၊ SM ကေကာ 3.0 ရရဲ့လား၊ OpenGL က ဘယ္ထိရသလဲစသည္ျဖင့္ေပါ့။ ေနာက္ၿပီး DVI ဘယ္ႏွေပါက္ပါလဲ၊ HDMI ေကာရရဲ့လား၊ Display Port စတာေတြကို စဥ္းစားရပါမယ္။ မ်ားေသာ အားျဖင့္ေတာ့ DVI နွစ္ေပါက္၊ ဒါမွမဟုတ္ DVI တစ္ေပါက္နဲ့ D-sub တစ္ေပါက္ေတာ့ပါပါတယ္။

၄- Graphic Memory
Graphic Memory မ်ားျခင္းက graphical data ေတြကို မ်ားမ်ား လက္ခံေဆာင္ရြက္ႏိုင္တယ္။ system ေပၚလည္းဝန္နည္းေစပါတယ္။

၅- Monitor Resolution
Graphic card ရဲ့ performace ဟာမိမိ monitor ရဲ့ အျမင့္ဆံုး resolution မွာ ေကာင္းေကာင္း run ႏိုင္ရမယ္။ ကိုယ္ဝယ္မယ့္ ကဒ္ရဲ့ performance ေတြကို review site ေတြမွာၾကည့္ရွု့ထားသင့္တယ္။

၆- Power consumption
ကဒ္ရဲ့ လိုအပ္တဲ့ power ကို မိမိရဲ့ PSU ကေထာက္ပံ့ေပးႏိုင္ရဲ့လားဆိုတာ သိထားရမယ္။

၇- Multicard
ကိုယ္မွာ SLI/Crossfire တပ္ဆင္ႏိုင္တဲ့ MB ရိွရင္ ကိုယ္ဝယ္မဲ့ ကဒ္က ၄င္းကိုေထာက္ပံ့ေပးႏိုင္ရမယ္။ ဒါမွ ကိုယ္က upgrade လုပ္ခ်င္တဲ့အခါအဆင္ေျပမယ္။

၈- Cooling
ကဒ္ရဲ့ cooling ကလည္းအေရးပါပါတယ္။ Game ေဆာ့ေနတုန္း cooling ဂန့္သြားလို့ ေလာင္သြားတဲ့ကဒ္ေတြကိုေတြ့ဖူးတယ္။

၉- Components
ကဒ္မွာသံုးတဲ့ပစၥည္းေတြက Solid Capacitor ေတြလား၊ militray component ေတြလား ဆိုတာေတြကိုၾကည့္ရမယ္။ ဒါေတြက ကဒ္ကိုၾကာရွည္ခံေစပါတယ္။ အထူးသျဖင့္ ေနာက္ထက္ကဒ္အသစ္ကိုဝယ္ယူဖို့အစီအစဥ္မရိွတဲ့သူေတြေပါ့။

၁၀-Overclocking
Overclocker မ်ားအတြက္ကေတာ့ဒါကအေရးၾကီးတယ္။ သာမန္သံုးသူေတြကေတာ့ မလုိပါဘူး။ Voltage Control function ပါရဲ့လား၊ hardware overclocking ပါရဲ့လားဆိုတာကိုၾကည့္ရမယ္။ Overclocking လုပ္ရင္ stable ျဖစ္ေအာင္ အပို Chipset ေတြထည့္သြင္းျခင္းရိွမရိွဆိုတာကိုလည္း ၾကည့္ရပါမယ္။

Read More articles on www.freemanhardwares.webs.com

0 comments:

Post a Comment