分享到plurk 分享到twitter 分享到facebook

版本 4e54b3cd690d90b92bcb48bceec66be3d91df18c

2015q3 Homework #7

預期目標

  • 效能分析
  • 作業系統核心實驗

截止日期

  • Nov 18, 2015 (含) 之前
    • 只要完成作業要求 (A) 或 (B) 其中一者即可
  • 越早在 GitHub 上有動態、越早接受 code review,評分越高

作業要求 (A)

作業要求 (B)

  • 閱讀 Week #8 效能分析: Prefetching 提到的論文: “When Prefetching Works, When It Doesn’t, and Why”,在 Linux/x86_64 (注意,要用 64-bit 系統,不能透過虛擬機器執行) 上編譯並執行 prefetcher
    • 說明 naive_transpose, sse_transpose, sse_prefetch_transpose 之間的效能差異,以及 prefetcher 對 cache 的影響
  • 在 github 上 fork prefetcher,嘗試用 AVX 進一步提昇效能
    • 修改 Makefile,產生新的執行檔,分別對應於 naive_transpose, sse_transpose, sse_prefetch_transpose (學習 Homework #2 的做法)
    • 用 perf 分析 cache miss/hit
    • 參考 Performance of SSE and AVX Instruction Sets,用 SSE/AVX intrinsic 來改寫程式碼
    • 詳細描述實驗設計,以及你的觀察