6.2.1 · D1 · HinglishGPU Architecture

FoundationsGPU vs CPU design philosophy

2,380 words11 min read↑ Read in English

6.2.1 · D1 · Hardware › GPU Architecture › GPU vs CPU design philosophy

Pehle aapko GPU vs CPU design philosophy padhna hai to aapko page par har ek mark padhna aana chahiye. Yeh note har ek symbol, term, aur picture ko jo parent use karta hai, zero se build karta hai. Upar se neeche padho; har block sirf wahi words use karta hai jo uske upar define hue hain.


1. Ek "task" aur do ghariyan jo usse measure karti hain

Sab kuch ek word se shuru hota hai: ek task. Ek task kaam ka ek self-contained tukda hai — ek pixel ko colour karo, do numbers compare karo, do floats add karo.

Ek machine tasks mein kitni achi hai yeh measure karne ke do bilkul alag tarike hain. Inhe confuse karna is topic ki sabse badi galti hai, isliye pehle dono pictures build karte hain.

Figure — GPU vs CPU design philosophy

Topic ko alag do words ki zaroorat kyun hai? Kyunki ek design choice jo ek ko help kare doosre ko hurt kar sakti hai. Agar aapke paas do naam na hote, "GPU slower hai lekin faster bhi hai" nonsense lagta — do namon ke saath yeh "higher latency, higher throughput" ban jaata hai, jo bilkul sach hai.


2. Cheezein count karna: , , aur fraction bar

Parent note formulas mein letters bharta hai. Har letter bas ek count ya rate hai. Yeh poora alphabet hai jo aapko chahiye.

Topic mein yahan division kyun chahiye, subtraction nahi? Kyunki zyada workers add karna pile ko split karta hai — ek multiplicative/ratio effect — koi fixed discount nahi. Division hi woh akela operation hai jo "pile ko barabar baanto" ko capture karta hai.


3. IPC aur clock — instructions ko time mein badalna

CPU model padhta hai. Yahan do naye symbols hain.

Figure — GPU vs CPU design philosophy

Topic ko IPC ki parwah kyun hai? Kyunki parent ka central claim yeh hai ki ek CPU apne zyaadatar transistors sirf ek thread par IPC zyada karne ke liye kharach karta hai. Agar aap nahi jaante IPC ka matlab kya hai, toh "control logic exists to maximize IPC" ek khaali sentence hogi.


4. Transistors kahan jaate hain: die area budget

Parent CPUs aur GPUs ke liye "transistor budgets" deta hai. Aapko teen ideas chahiye: transistor, die, aur budget.

Figure — GPU vs CPU design philosophy

Parent ka arithmetic bas yeh hai: megabytes → bits → transistors. Ek byte = 8 bits, aur ek SRAM cache cell ko per bit lagbhag 6 transistors chahiye. Toh "36.5 MB cache kitne transistors cost karta hai?" = megabytes × 8 × 6. Kuch bhi mysterious nahi — yeh unit conversion hai.


5. Dependence vs independence — kyun kuch kaam split nahi ho sakta

Parent saare workloads ko do types mein baanta hai. Yeh distinction decide karta hai ki GPU ka "pile baanto" trick kaam bhi karega ya nahi.


6. Threads, warps, aur latency hiding

Symbols ka aakhri cluster yeh hai ki GPU slow memory se bina bade caches ke kaise deal karta hai.

Figure — GPU vs CPU design philosophy

Prerequisite map

counts N and rates

latency vs throughput

cycle clock and IPC

CPU time model

share the pile formula

GPU throughput model

transistor die budget

die area slicing

data dependency vs independence

thread warp SM occupancy

latency hiding no cache

branch divergence

GPU vs CPU design philosophy

Vault mein yeh threads aage kahan jaate hain: memory ki kahaani 6.2.03-memory-hierarchy-GPU mein gehri hoti hai, warp/SIMT idea 6.3.01-SIMD-vs-SIMT mein, programming side 6.2.02-CUDA-programming-model aur 9.2.01-parallel-programming-models mein, speedup ki limits 9.1.02-Amdahls-law mein, aur is poore hardware ka ancestor 6.1.01-von-Neumann-architecture mein.


Equipment checklist

Daayaan side dhako; reveal karne se pehle apna jawaab zor se bolo.

Latency kya hai, ek sentence mein?
Woh time jab ek single task shuru hota hai jab tak wahi task khatam hota hai.
Throughput kya hai, aur yeh latency se kaise alag hai?
Time ki unit mein khatam hone wale tasks ki sankhya — ek rate, jabki latency ek single duration hai.
Kya ek machine mein ek saath high latency AUR high throughput ho sakti hai?
Haan — conveyor belt: har item mein zyada time lagta hai (high latency) lekin har second ek item girta hai (high throughput).
mein se divide karna kya represent karta hai?
tasks ka pile parallel workers mein barabar baantna.
IPC ka matlab kya hai?
Instructions Per Cycle — chip ek clock tick mein kitne instructions khatam karta hai.
"instructions per second" kyun hai?
(instructions per tick) × (ticks per second) = instructions per second.
Transistor budget kya hai, aur yeh trade-off kyun hai?
Die par transistors ki fixed sankhya; cache/control par kharach karne se compute ke liye kam bachte hain.
Cache size ko transistors mein convert karo: recipe kya hai?
megabytes × 8 (bits per byte) × 6 (transistors per SRAM bit).
Data dependency kya hoti hai?
Jab ek task ko shuru hone se pehle doosre task ka result chahiye, jo sequential order force karta hai.
"Embarrassingly parallel" ka matlab kya hai?
Tasks mein bilkul koi dependencies nahi, har ek isolation mein chalane layak.
Ek warp kitna bada hota hai, aur SIMT ka matlab kya hai?
32 threads; Single Instruction Multiple Threads — saare 32 ek saath same instruction run karte hain.
GPU bade caches ke bina memory latency kaise hide karta hai?
Jab ek warp wait karta hai, doosre ready warp par switch kar leta hai, cores ko busy rakhta hai.
Branch divergence kya hai?
Jab ek warp ke threads alag if paths lete hain, GPU ko har path serially run karna padta hai.