Parent note Tournament and TAGE predictors padhne se pehle, tumhe usmein aane wala har word aur symbol pata hona chahiye. Yeh page har ek ko scratch se build karta hai — pehle plain words mein, phir picture, phir yeh topic isके bina kyon nahi chal sakta. Upar se neeche padho; har idea uske upar wale pe lean karta hai.
Picture: ek raaste mein fork. Car (processor ka execution flow) fork tak pahunchti hai aur use left ya right jaana hai.
Taken (T) = jump hota hai (branching road lo).
Not-taken (NT) = agli instruction pe fall through karo (seedha jao).
Outcome-notation, ek stream ki tarah likhi: T, T, T, T, NT matlab ek branch chaar baar taken hua phir ek baar not-taken — exactly waisa jaisa ek loop jo 4 baar run karta hai lagta hai.
Picture: raaste mein har fork ke paas ek signpost hai jisme ek unique number thoka hua hai. Tumhare program ke do alag ifs do alag PCs pe baithe hain.
Topic ko isski kyun zaroorat hai: predictors har fork ke past behaviour ka ek notebook rakhte hain. Notebook ka sahi page dhundne ke liye, tum fork ko uske signpost se — uske PC se — lookup karte ho. Jab parent hash(PC) likhta hai, iska matlab hai "is address ko ek chhoti table-row number mein badlo taaki hum iska notebook page jaldi dhundh sakein."
Predictors sirf "T ya NT" store nahi karte. Woh store karte hain kitna sure hain, ek saturating counter use karke.
Ek 2-bit counter ke chaar states hain:
Value
Name
Predict
00
strongly NT
NT
01
weakly NT
NT
10
weakly T
T
11
strongly T
T
Picture: 4 notches wala ek slider. Har T use right nudge karta hai, har NT use left, lekin yeh kisi bhi end se aage nahi jaata.
Parent do counter shapes use karta hai — dono yaad karo:
2-bit unsigned (0..3): selector aur base predictor ke liye use hota hai. Parent ke formula mein min(3, x+1) aur max(0, x-1) bas "count up but don't pass 3, count down but don't pass 0" hain.
3-bit signed (−4..+3): TAGE ka prediction counter. Rule: T predict karo agar value ≥0 ho, NT agar negative. Same idea, alag numbering.
Topic ko isski kyun zaroorat hai: tournament/TAGE ka poora reason 1−a ko chhota karna hai. Parent "local 85%, global 87%, tournament 90–93%" jaisi numbers compare karta hai — yeh sab a ki values hain.
TAGE apne notebooks ko tables ke roop mein store karta hai. Tumhe teen cheezein pata honi chahiye jo ek entry hold karti hai.
Picture: ek filing cabinet. Index drawer number hai; tag woh naam label hai jo tum check karte ho yeh ensure karne ke liye ki tumne apna folder pakda hai na kisi aur ka; counter folder ka content hai; useful bit ek sticky note hai jo kehti hai "mujhe rakho."
Lock karne wale symbols: T0 base (no-history) table hai; T1,T2,…,Tn tagged tables hain lengths L1<L2<⋯<Ln ke saath. Parent ka "longest matching table" simply matlab hai: un sab drawers mein se jinke tag match kiya, woh use karo jiska Li sabse bada ho — sabse specific memory.