MindMap Gallery Fundamentals of Quantitative Design and Analysis
This mind map establishes a computer design framework: Classes (application scenarios), Architecture (design specifications), Technology trends (process development), Power trends (energy optimization). The multidimensional metric system guides quantitative system evaluation and design.
Edited at 2025-02-21 09:13:49Fundamentals of Quantitative Design and Analysis
Introduction
1. Perkembangan Komputer: Dalam 70 tahun, komputer berkembang pesat. Ponsel murah saat ini setara dengan superkomputer 1993. Peningkatan ini didorong oleh teknologi dan desain arsitektur.
2. Sejarah Kinerja: 1970-an: Mikroprosesor meningkatkan kinerja 35% per tahun. 1980-an: Arsitektur RISC mendominasi dengan teknik paralelisme dan cache. 1990-an-2003: Intel beradaptasi dengan instruksi mirip RISC, mempercepat mikroprosesor 7,5 kali lipat.
3. Dampak: Kemampuan pengguna meningkat. Munculnya PC, smartphone, dan server berbasis mikroprosesor. Penggunaan bahasa pemrograman produktif seperti Java dan Python.
4. Tantangan Baru: Dennard Scaling dan Hukum Moore melambat. Fokus bergeser ke multi-core dan arsitektur khusus domain.
5. Arah Masa Depan: Mengembangkan arsitektur khusus untuk meningkatkan efisiensi komputasi. Menggunakan pendekatan kuantitatif dalam desain dan analisis komputer.
sub 1
Classes of Computers
1. IoT/Embedded Computers: Tertanam di perangkat sehari-hari (microwave, printer, mobil). Fokus pada harga dan kebutuhan spesifik aplikasi, mulai $0,01 - $100.
2. Personal Mobile Device (PMD): Termasuk ponsel dan tablet. Prioritas pada biaya rendah, efisiensi energi, dan responsif untuk multimedia dan web.
3. Desktop Computing: Dari netbook hingga workstation. Mengutamakan rasio harga/kinerja, terutama untuk komputasi dan grafis.
4. Servers: Menyediakan layanan andal untuk perusahaan. Fokus pada ketersediaan, skalabilitas, dan throughput tinggi.
5. Clusters/Warehouse-Scale Computers (WSC): Mengelola layanan besar (pencarian web, media sosial). Mengutamakan kinerja, harga, dan efisiensi daya.
Defining Computer Architecture
Desain arsitektur komputer melibatkan penentuan atribut penting untuk komputer baru dan merancangnya agar memaksimalkan performa dan efisiensi energi, sambil tetap sesuai dengan batasan biaya, daya, dan ketersediaan. Aspek-aspeknya mencakup desain set instruksi, organisasi fungsional, desain logika, hingga implementasi yang melibatkan desain sirkuit terintegrasi, pengemasan, daya, dan pendinginan.
Instruction Set Architecture (ISA) ISA adalah himpunan instruksi yang terlihat oleh programmer dan berfungsi sebagai batas antara perangkat lunak dan perangkat keras. Contoh ISA meliputi 80x86, ARMv8, dan RISC-V. RISC-V adalah set instruksi RISC modern yang dikembangkan di University of California, Berkeley, yang bebas dan dapat diadopsi secara terbuka.
Tujuh Dimensi ISA Class of ISA: Sebagian besar ISA modern diklasifikasikan sebagai arsitektur register tujuan umum, seperti register-memori (80x86) dan load-store (ARMv8, RISC-V). Memory Addressing: Sebagian besar komputer desktop dan server menggunakan byte addressing. Akses memori lebih cepat jika operand ter-align. Addressing Modes: RISC-V memiliki mode Register, Immediate, dan Displacement, sedangkan 80x86 dan ARMv8 memiliki mode tambahan seperti PC-relative dan autoincrement. Types and Sizes of Operands: Mendukung berbagai ukuran operand, seperti 8-bit, 16-bit, 32-bit, 64-bit, dan floating-point (IEEE 754). Operations: Meliputi transfer data, operasi aritmetika-logika, kontrol, dan operasi floating-point. Control Flow Instructions: Mendukung percabangan bersyarat, lompatan tak bersyarat, pemanggilan prosedur, dan pengembalian. Encoding an ISA: ARMv8 dan RISC-V menggunakan panjang instruksi tetap (32 bit), sementara 80x86 menggunakan panjang variabel (1-18 byte).
Trends in Technology
1. ISA Evolution Tahan Lama: Harus mampu beradaptasi dengan perubahan teknologi jangka panjang (contoh: Core IBM mainframe >50 tahun).
2. Key Technologies IC Logic: Transistor meningkat 35%/tahun (Moore’s Law), kini melambat. DRAM: Pertumbuhan kapasitas melambat, alternatif baru mungkin diperlukan. Flash Memory: Kapasitas naik 50-60%/tahun, lebih murah dari DRAM. Magnetic Disk: Peningkatan kapasitas melambat, teknologi HAMR diharapkan membantu. Networking: Kinerja tergantung pada switch & sistem transmisi.
3. Performance Trends: Bandwidth: Meningkat lebih cepat dari latency. Latency: Waktu jeda antara mulai dan selesai.
4. Transistor Scaling: Feature Size: Dari 10 μm (1971) ke 0.016 μm (2017). Efek: Kepadatan meningkat, kinerja lebih kompleks.
Trends in Power and Energy in Integrated Circuits
Tantangan Utama: Mikroprosesor modern memerlukan distribusi daya yang efisien dan manajemen panas yang baik.
Tiga Fokus Utama: Daya Maksimum: Menghindari penurunan tegangan dan malfungsi perangkat. Daya Tertahan (TDP): Menentukan kebutuhan pendinginan. Efisiensi Energi: Energi lebih relevan dibanding daya untuk membandingkan prosesor.
Daya Dinamis vs. Statis: Daya Dinamis: Dikurangi dengan menurunkan tegangan dan frekuensi. Daya Statis: Diatasi dengan power gating untuk menghindari kebocoran arus.
Teknik Efisiensi Energi: Clock Gating: Mematikan modul yang tidak aktif. DVFS: Menyesuaikan daya dengan beban kerja. Desain Kasus Tipikal: Menghemat energi saat komponen idle. Overclocking: Meningkatkan performa sementara jika aman. Race-to-Halt: Menyelesaikan tugas cepat agar masuk mode hemat daya.
Inovasi: Dark Silicon: Tidak semua transistor bisa aktif bersamaan. Prosesor Spesifik Domain: Core khusus untuk kinerja lebih hemat energi.
Trends in Cost
1. Pentingnya Biaya Desain biaya rendah penting di pasar massal. Fokus: Pengurangan biaya & peningkatan kinerja
2. Faktor-Faktor Biaya Kurva Pembelajaran: Yield naik, biaya turun. Volume Produksi: Volume tinggi → Efisiensi & biaya turun. Komoditas: Persaingan ketat, margin laba kecil.
3. Biaya Sirkuit Terpadu (IC) Komponen Biaya: Die, pengujian, pengemasan. Pengendalian Biaya: Ukuran die & mask set.
4. CAPEX vs. OPEX CAPEX: Biaya beli perangkat. OPEX: Biaya operasional (daya, pendingin). Efisiensi energi penting di WSC.
Dependability
1. Definisi Dulu: IC sangat andal, kegagalan jarang. Sekarang: Kegagalan meningkat (feature size ≤16 nm).
2. Tantangan Abstraksi: Dari modul hingga transistor. Layanan: Accomplishment: Sesuai SLA. Interruption: Tidak sesuai SLA.
3. Pengukuran Reliability: MTTF: Rata-rata waktu sebelum gagal. MTTR: Rata-rata waktu perbaikan. MTBF: MTTF + MTTR. Availability: Rumus: MTTF / (MTTF + MTTR).
4. Contoh Kasus Disk Subsystem: MTTF Sistem: 43,500 jam (~5 tahun).
5. Solusi: Redundancy Time: Ulang operasi. Resource: Komponen cadangan. Contoh: Power supply lebih andal 4150x dengan redundansi.
Measuring, Reporting, and Summarizing Performance
1. Konsep Kinerja Komputer Response Time: Waktu eksekusi tugas. Throughput: Jumlah tugas selesai per waktu.
2. Pengukuran Kinerja Wall-Clock Time: Termasuk semua aktivitas (I/O, OS). CPU Time: Hanya hitung waktu prosesor aktif.
3. Evaluasi Kinerja Benchmark Types: Real Applications, Kernels, Toy Programs, Synthetic Benchmarks.
4. Benchmark Populer SPEC: SPEC CPU2017: CINT (integer), CFP (floating-point). SPECrate: Untuk multiprosesor. TPC: TPC-C, TPC-H, TPC-E, TPCx-HS, TPC-Energy.
5. Pelaporan Kinerja Reproducibility: Hasil pengujian harus konsisten. SPECRatio: Menggunakan rasio untuk perbandingan. Geometric Mean: Menghindari bias komputer referensi.
Quantitative Principles of Computer Design
Parallelism: Memanfaatkan parallelism di berbagai level untuk meningkatkan kinerja sistem.
Locality Principle: Temporal locality: Data yang baru diakses cenderung diakses lagi. Spatial locality: Data berdekatan cenderung diakses bersamaan.
Common Case Fast: Fokus pada optimasi kasus yang paling sering terjadi.
Amdahl’s Law: Speedup = 1 / [(1 - Fractionenhanced) + (Fractionenhanced / Speedupenhanced)] Peningkatan sebagian kecil sistem memberi manfaat terbatas.
Persamaan Kinerja Prosesor: Waktu CPU = Instruction count × CPI × Clock cycle time. Kinerja ditentukan oleh Clock cycle, CPI, dan Instruction count.
Putting It All Together: Performance, Price, and Power
1. Tiga Server yang Dibandingkan: R710: 12 core, 2.93 GHz, 12 GB RAM, $9,352, 910,978 ssj_operations R815 (24 core): 2.20 GHz, 16 GB RAM, $9,286, 926,676 ssj_operations R815 (48 core): 32 GB RAM, $12,658, 1,840,450 ssj_operations
2. Efisiensi Harga dan Kinerja: ssj_operations/$: R710 (97), R815 24 core (100), R815 48 core (145)
3. Efisiensi Daya (ssj_ops/watt): R730: 10,802 R630: 11,157 (terbaik) Cluster R630: 10,062
4. Efisiensi Harga & Daya: R730: 879 ssj_ops/watt/$1,000 R630: 899 (terbaik) Cluster R630: 789
Fallacies and Pitfalls
Hukum Eksponensial Terbatas: Kepadatan transistor tidak terus meningkat setelah 2021.
Multiprosesor Bukan Solusi Segalanya: Multicore bukan otomatis efisien, butuh desain core yang lebih baik.
Akhir Hukum Dennard: Pengurangan ukuran transistor tidak selalu menghemat daya
Penurunan Hard Disk: Pertumbuhan kepadatan areal melambat drastis.
Amdahl’s Law: Optimisasi kecil tidak signifikan tanpa penggunaan yang sering.
Titik Kegagalan Tunggal: Hindari komponen yang bisa menyebabkan kegagalan total.
Mitos Efisiensi Energi: Kinerja tinggi tidak selalu hemat energi
Validitas Benchmark: Benchmark bisa dimanipulasi, tidak selalu mencerminkan performa nyata.
MTTF Disk Tidak Realistis: Klaim produsen sering berbeda dengan kenyataan.
Kinerja Puncak vs. Nyata: Kinerja puncak tidak selalu relevan.
Deteksi Kesalahan Bisa Mengganggu: Sistem mungkin terganggu oleh deteksi otomatis yang tidak perlu.