2017q3 Homework2 (software-pipelining)
contributed by <river85511
>
開發環境
Lubuntu 16.04
4.10.0-37-generic
Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 3072K
論文閱讀
1. Introduction
- 目前的情況:
- 即使有許多用來容忍 cache miss 的延遲時間的 軟、硬體之 prefetching 機制,但目前只有相對簡單的 軟體 prefecting 演算法 出現在如 icc 和 gcc 的編譯器中,因此 performance-aware programmers 通常需要手動插入 prefetching intrinsic 來提高效能。
- 會有的問題:
- 在如何插入 prefetching intrinsic 的問題上沒有嚴格的標準。
- 軟、硬體間 prefetching 的交互影響的複雜度不易理解。
- 因此本篇的目標為:
- 在有 HW prefetcher 的情況下,為 插入 prefetching intrinsics 提供一個標準
- 提供一個更好的方向來提昇 SW 跟 HW prefetching 合作時的效率。
出現了各式各樣看不懂的名詞阿… XD
2. Background on software and hardware prefetching
3. Positive and negative impacts of software prefetching
4. Experimental methodology
5. Evalutions: basic observations about prefetching
6. Case studies: source code analysis of individual benchmarks
8. Conclusion and future work