Microarchitecture
মাইক্রোআর্কিটেকচার
একটা ISA-র নির্দিষ্ট হার্ডওয়্যার বাস্তবায়ন — pipeline width, cache size, branch predictor ইত্যাদির ডিজাইন সিদ্ধান্ত, যা ISA নিজে কখনো বলে দেয় না।
ISA একটা চুক্তি (x86-64, ARM64) — বছরের পর বছর প্রায় অপরিবর্তিত। Microarchitecture সেই চুক্তির একটা প্রতিযোগিতামূলক বাস্তবায়ন — প্রতি ১-২ বছরে বদলায় (Skylake → Golden Cove, Zen 3 → Zen 4)। একই ISA-র উপর Intel আর AMD সম্পূর্ণ ভিন্ন microarchitecture বানায় — এটাই বাজারে আসল প্রতিযোগিতার জায়গা, ISA-তে না।
তিনটা নামকরণকৃত অংশ, যেকোনো আধুনিক superscalar, out-of-order CPU বর্ণনা করতে ব্যবহৃত:
| অংশ | দায়িত্ব |
|---|---|
| Frontend | fetch, decode, branch prediction |
| Backend | out-of-order execution, execution port |
| Retirement | ROB-ভিত্তিক, কড়া in-order commit |
বাস্তব সংখ্যা (আনুমানিক):
| CPU | decode width | ROB আকার |
|---|---|---|
| Intel Golden Cove | ~৬-wide | ৫১২ |
| AMD Zen 4 | ~৪-wide | ৩২০ |
| Apple M1 | ~৮-wide | ৬৩০ |
একটা সংখ্যা একা বাড়ালে লাভ নেই — decode width বাড়লে কিন্তু ROB ছোট থাকলে, frontend দ্রুত stall করে (buffer পূর্ণ)। তিনটা অংশ একসাথে সুষম হতে হয়।
Intel-এর Top-Down Microarchitecture Analysis (TMA) প্রতিটা
cycle-কে Frontend Bound / Bad Speculation / Backend Bound /
Retiring-এ ভাগ করে — এই মডেলের সরাসরি শিল্প-প্রয়োগ, perf --topdown-এ ব্যবহারযোগ্য।