Single-Instruction Multiple-Data Execution (Synthesis Lectures on Computer Architecture)
暫譯: 單指令多資料執行(計算機架構綜合講座)

Christopher J. Hughes

  • 出版商: Morgan & Claypool
  • 出版日期: 2015-05-01
  • 售價: $2,090
  • 貴賓價: 9.5$1,986
  • 語言: 英文
  • 頁數: 121
  • 裝訂: Paperback
  • ISBN: 1627057633
  • ISBN-13: 9781627057639
  • 海外代購書籍(需單獨結帳)

商品描述

Having hit power limitations to even more aggressive out-of-order execution in processor cores, many architects in the past decade have turned to single-instruction multiple-data (SIMD) execution to increase single-threaded performance. SIMD execution, or having a single instruction drive execution of an identical operation on multiple data items, was already well established as a technique to efficiently exploit data parallelism. Furthermore, support for it was already included in many commodity processors. However, in the past decade, SIMD execution has seen a dramatic increase in the set of applications using it, which has motivated big improvements in hardware support in mainstream microprocessors. The easiest way to provide a big performance boost to SIMD hardware is to make it wider, i.e., increase the number of data items hardware operates on simultaneously. Indeed, microprocessor vendors have done this. However, as we exploit more data parallelism in applications, certain challenges can negatively impact performance. In particular, conditional execution, non-contiguous memory accesses, and the presence of some dependences across data items are key roadblocks to achieving peak performance with SIMD execution. This book first describes data parallelism, and why it is so common in popular applications. We then describe SIMD execution, and explain where its performance and energy benefits come from compared to other techniques to exploit parallelism. Finally, we describe SIMD hardware support in current commodity microprocessors. This includes both expected design tradeoffs, as well as unexpected ones, as we work to overcome challenges encountered when trying to map real software to SIMD execution.

商品描述(中文翻譯)

隨著處理器核心在更具侵略性的亂序執行上遇到功率限制,過去十年來,許多架構師轉向單指令多數據(SIMD)執行,以提高單執行緒性能。SIMD 執行,即單一指令驅動對多個數據項執行相同操作的方式,已經被確立為一種有效利用數據並行性的技術。此外,許多商品處理器中已經包含對其的支持。然而,在過去十年中,使用 SIMD 執行的應用程序集顯著增加,這促使主流微處理器在硬體支持方面進行了重大改進。為 SIMD 硬體提供大幅性能提升的最簡單方法是擴寬其寬度,即增加硬體同時操作的數據項數量。事實上,微處理器供應商已經這樣做了。然而,隨著我們在應用中利用更多的數據並行性,某些挑戰可能會對性能產生負面影響。特別是,條件執行、非連續內存訪問以及數據項之間存在某些依賴性是實現 SIMD 執行峰值性能的主要障礙。本書首先描述數據並行性,以及為何它在流行應用中如此普遍。接著,我們描述 SIMD 執行,並解釋其性能和能量效益相較於其他利用並行性的技術來源。最後,我們描述當前商品微處理器中的 SIMD 硬體支持,包括預期的設計權衡以及意外的權衡,因為我們努力克服在將實際軟體映射到 SIMD 執行時遇到的挑戰。

最後瀏覽商品 (20)