buzzword
Differences
This shows you the differences between two versions of the page.
buzzword [2019/11/28 14:20] – geraldod | buzzword [2019/12/14 20:25] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 253: | Line 253: | ||
* BitWeaving | * BitWeaving | ||
* Computing Architectures with Minimal Data Movement | * Computing Architectures with Minimal Data Movement | ||
- | * Mindset on reviewing manuscripts and scientific process | ||
- | * Suggestions on critical paper review | ||
- | * Mindset issues everywhere | ||
- | * Bandwidth bottleneck in Zurich Airport | ||
- | * Wrong methodology in design space exploration: | ||
* 3D-Stacked Logic+Memory | * 3D-Stacked Logic+Memory | ||
* Logic Layer | * Logic Layer | ||
Line 683: | Line 678: | ||
* Collaborative patterns | * Collaborative patterns | ||
+ | ===== Lecture 18 (22.11 Fri.) ===== | ||
+ | * Instruction prefetching | ||
+ | * Data prefetching | ||
+ | * Memory Hierarchy | ||
+ | * Memory Read/Write Latency | ||
+ | * Memory Bandwidth | ||
+ | * Memory Footprint | ||
+ | * Caches as Bandwidth Filters | ||
+ | * Little' | ||
+ | * Occupancy | ||
+ | * Latency | ||
+ | * Throughput | ||
+ | * Queueing Resources | ||
+ | * Compulsory Miss | ||
+ | * Demand Miss | ||
+ | * Spatial and Temporal Locality | ||
+ | * Fetch Granule | ||
+ | * Hardware Prefetching | ||
+ | * Software Prefetch Instruction | ||
+ | * Code Reordering | ||
+ | * Speculative Execution | ||
+ | * Loop Unrolling | ||
+ | * Load Hoisting | ||
+ | * Prefetch Degree | ||
+ | * Three Prefetch Metrics | ||
+ | * Accuracy | ||
+ | * Coverage | ||
+ | * Timeliness | ||
+ | * Heuristic-Based Next-N-Line Prefetching | ||
+ | * History-Based Target Line Prefetching | ||
+ | * Heuristic-Based Wrong-Path Prefetching | ||
+ | * Hybrid Prefetching | ||
+ | * Branch Predictor | ||
+ | * Branch Target Buffer (BTB) | ||
+ | * Next-Line Prefetchers | ||
+ | * Stride Prefetchers | ||
+ | * Cache-Block Address Based Stride Prefetching | ||
+ | * Correlation-Based Prefetchers | ||
+ | * Content-Birected Prefetchers | ||
+ | * Precomputation or Execution-Based prefetchers | ||
+ | * Address Correlation Based Prefetching | ||
+ | * Markov Model and Markov Prefetchers | ||
+ | * Prefetch Confidence | ||
+ | * Hybrid Hardware Prefetchers | ||
+ | * Execution-based Prefetchers | ||
+ | * Speculative Thread | ||
+ | * Feedback-Directed Prefetcher | ||
+ | * Prefetcher Throttling | ||
===== Lecture 19 (28.11 Thu.) ===== | ===== Lecture 19 (28.11 Thu.) ===== | ||
* Hybrid Memory Systems | * Hybrid Memory Systems | ||
- | * Large (DRAM) | + | * Large (DRAM) |
* TIMBER | * TIMBER | ||
* Two-Level Memory/ | * Two-Level Memory/ | ||
Line 702: | Line 745: | ||
* Resource sharing overhead | * Resource sharing overhead | ||
* IBM Power4 | * IBM Power4 | ||
- | * IMB Power5 | + | * IBM Power5 |
* Niagara Processor | * Niagara Processor | ||
* Performance vs. parallelism | * Performance vs. parallelism | ||
Line 708: | Line 751: | ||
* MorphCore | * MorphCore | ||
+ | ===== Lecture 20 (29.11 Fri.) ===== | ||
+ | * Heterogeneity | ||
+ | * Pointer-chasing | ||
+ | * Critical section | ||
+ | * Asymmetry | ||
+ | * Accelerated | ||
+ | * Data Marshalling | ||
+ | * False Serialization | ||
+ | * Shared Data | ||
+ | * Private Data | ||
+ | * Amdahl’s Law | ||
+ | * Barriers | ||
+ | * Identification | ||
+ | * Migration | ||
+ | * Private Data | ||
+ | * Feedback Directed Pipelining | ||
+ | * Staged Execution | ||
+ | * Inter-segment Data | ||
+ | * Pipeline Parallelism | ||
+ | * Dynamic heterogeneity | ||
+ | |||
+ | ===== Lecture 21a (5.12 Thu.) ===== | ||
+ | * Persistent memory | ||
+ | * Crash consistency | ||
+ | * Checkpointing | ||
+ | * Flynn' | ||
+ | * Parallelism | ||
+ | * Performance | ||
+ | * Power consumption | ||
+ | * Cost efficiency | ||
+ | * Dependability | ||
+ | * Instruction level parallelism | ||
+ | * Data parallelism | ||
+ | * Task level parallelism | ||
+ | * Utilization | ||
+ | * Redundancy | ||
+ | * Efficiency | ||
+ | * Amdahl' | ||
+ | * Bottlenecks in parallel portion | ||
+ | * Multiprocessor | ||
+ | * Loosely coupled multiprocessors | ||
+ | * Tightly coupled multiprocessors | ||
+ | * Shared global memory address space | ||
+ | * Shared memory synchronization | ||
+ | * Interconnects | ||
+ | * Programming issues in tightly coupled multiprocessor | ||
+ | * Sublinear speedup | ||
+ | * Linear speedup | ||
+ | * Superlinear speedup | ||
+ | * Shared resource management | ||
+ | * Unfair comparison | ||
+ | * Cache/ | ||
+ | |||
+ | | ||
+ | |||
+ | ===== Lecture 21b (5.12 Thu.) ===== | ||
+ | |||
+ | * Memory consistency / memory ordering | ||
+ | * Ordering of operations | ||
+ | * Local ordering | ||
+ | * Global ordering | ||
+ | * Sequential consistency | ||
+ | * Weaker memory consistency | ||
+ | * Memory fence instructions | ||
+ | * Consequences of Sequential Consistency | ||
+ | * Issues with Sequential Consistency | ||
+ | * Global order requirement | ||
+ | * Aggressiveness | ||
+ | * Out-of-order execution | ||
+ | * Higher performance | ||
+ | * Burden on the programmer | ||
+ | * Mutual exclusion | ||
+ | * Protecting shared data | ||
+ | * Ease of debugging | ||
+ | * Correctness | ||
+ | * MIMD processor | ||
+ | * Dataflow processor | ||
+ | | ||
+ | |||
+ | ===== Lecture 22 (6.12 Fri.) ===== | ||
+ | |||
+ | * Cache coherence | ||
+ | * Memory consistency | ||
+ | * Shared memory model | ||
+ | * Software coherence | ||
+ | * Coarse-grained (page-level) | ||
+ | * Non-cacheable | ||
+ | * Fine-grained (cache flush) | ||
+ | * Hardware coherence | ||
+ | * Valid/ | ||
+ | * Write propagation | ||
+ | * Write serialization | ||
+ | * Update vs. Invalid | ||
+ | * Snoopy bus | ||
+ | * Directory | ||
+ | * Exclusive bit | ||
+ | * Directory optimizations (bypassing) | ||
+ | * Snoopy cache | ||
+ | * Shared bus | ||
+ | * VI protocol | ||
+ | * MSI (Modified, Shared, Invalid) | ||
+ | * Exclusive state | ||
+ | * MESI (Modified, Exclusive, Shared, Invalid) | ||
+ | * Illinois Protocol (MESI) | ||
+ | * Broadcast | ||
+ | * Bus request | ||
+ | * Downgrade/ | ||
+ | * Snoopy invalidation | ||
+ | * Cache-to-cache transfer | ||
+ | * Writeback | ||
+ | * MOESI (Modified, Owned, Exclusive, Shared, Invalid) | ||
+ | * Directory coherence | ||
+ | * Race conditions | ||
+ | * Totally-ordered interconnect | ||
+ | * Directory-based protocols | ||
+ | * Set inclusion test | ||
+ | * Linked list | ||
+ | * Bloom filters | ||
+ | * Contention resolution | ||
+ | * Ping-ponging | ||
+ | * Synchronization | ||
+ | * Shared-data-structure | ||
+ | * Token Coherence | ||
+ | * Coherence for NDAs | ||
+ | * Optimistic execution | ||
+ | * Signature | ||
+ | * Commit/ | ||
+ | |||
+ | ===== Lecture 23 (12.12 Thu.) ===== | ||
+ | * Interconnects | ||
+ | * Cache coherence | ||
+ | * Interconnect networks: | ||
+ | * Topology | ||
+ | * Routing | ||
+ | * Buffering and flow control | ||
+ | * Oversubscription of routers | ||
+ | * Terminology: | ||
+ | * Network Interface | ||
+ | * Link | ||
+ | * Switch/ | ||
+ | * Channel | ||
+ | * Node | ||
+ | * Message | ||
+ | * Packet | ||
+ | * Flit | ||
+ | * Direct/ | ||
+ | * Properties of a Network Topology: | ||
+ | * Regular/ | ||
+ | * Routing distance | ||
+ | * Diameter | ||
+ | * Average distance | ||
+ | * Bisection Bandwidth | ||
+ | * Blocking/ | ||
+ | * Topologies: | ||
+ | * Bus | ||
+ | * P2P | ||
+ | * Crossbar | ||
+ | * Ring | ||
+ | * Tree | ||
+ | * Omega | ||
+ | * Hypercube | ||
+ | * Mesh | ||
+ | * Torus | ||
+ | * Butterfly | ||
+ | * cost, latency, contention, energy, bandwidth, overall performance | ||
+ | * Circuit switching network | ||
+ | * Multistage network | ||
+ | * Fetch-and-add | ||
+ | * Unidirectional Ring | ||
+ | * Bidirectional rings | ||
+ | * Hierarchical rings | ||
+ | * Mesh: asymmetricity on the edge | ||
+ | * Torus | ||
+ | * H-tree | ||
+ | * Fat-tree | ||
+ | * Hyper-cube. Cosmic Cube | ||
+ | * Routing mechanism: Arithmetic, Source-based, | ||
+ | * Types of routing algorithm: deterministic, | ||
+ | * Deadlock | ||
+ | * Oblivious routing | ||
+ | * Adaptive Routing: minimal adaptive, non-minimal adaptive | ||
+ | * Flow Control | ||
+ | * Handling contention: buffer, drop or misroute | ||
+ | * Flow control methods: | ||
+ | * Circuit switching | ||
+ | * Bufferless | ||
+ | * Store and forward | ||
+ | * Virtual cut through | ||
+ | * Wormhole | ||
+ | * Performance and congestion at high loads | ||
+ | * Store-and-forward | ||
+ | * Cut-though flow control | ||
+ | * Wormhole flow control | ||
+ | * Head of Line Blocking | ||
+ | ===== Lecture 24 (13.12 Fri.) ===== | ||
+ | * Load latency curve | ||
+ | * Performance of interconnection networks | ||
+ | * On-chip networks | ||
+ | * Difference between off-chip and on-chip networks | ||
+ | * Network buffers | ||
+ | * Efficient routing | ||
+ | * Advantages of on-chip interconnects | ||
+ | * Pin constraints | ||
+ | * Wiring resources | ||
+ | * Disadvantages of on-chip interconnects | ||
+ | * Energy/ | ||
+ | * Tradeoffs of interconnect design | ||
+ | * Buffers in NoC routers | ||
+ | * Bufferless routing | ||
+ | * Flit-level routing | ||
+ | * Deflection routing | ||
+ | * Buffer and link energy consumption | ||
+ | * Self-throttling | ||
+ | * Livelock freedom problem | ||
+ | * Golden packet for livelock freedom | ||
+ | * Reassembly buffers | ||
+ | * Packet retransmission | ||
+ | * Packet scheduling |
buzzword.1574950847.txt.gz · Last modified: 2019/11/28 14:20 by geraldod