Structured Parallel Programming: Patterns for Efficient Computation (Paperback)

Michael McCool, James Reinders, Arch Robison

買這商品的人也買了...

商品描述

Programming is now parallel programming. Much as structured programming revolutionized traditional serial programming decades ago, a new kind of structured programming, based on patterns, is relevant to parallel programming today. Parallel computing experts and industry insiders Michael McCool, Arch Robison, and James Reinders describe how to design and implement maintainable and efficient parallel algorithms using a pattern-based approach. They present both theory and practice, and give detailed concrete examples using multiple programming models. Examples are primarily given using two of the most popular and cutting edge programming models for parallel programming: Threading Building Blocks, and Cilk Plus. These architecture-independent models enable easy integration into existing applications, preserve investments in existing code, and speed the development of parallel applications. Examples from realistic contexts illustrate patterns and themes in parallel algorithm design that are widely applicable regardless of implementation technology.

  • The patterns-based approach offers structure and insight that developers can apply to a variety of parallel programming models
  • Develops a composable, structured, scalable, and machine-independent approach to parallel computing
  • Includes detailed examples in both Cilk Plus and the latest Threading Building Blocks, which support a wide variety of computers

商品描述(中文翻譯)

程式設計現在已經是並行程式設計。就像幾十年前結構化程式設計革命了傳統的串行程式設計一樣,一種基於模式的新型結構化程式設計對於當今的並行程式設計非常重要。並行計算專家和業內人士Michael McCool、Arch Robison和James Reinders描述了如何使用基於模式的方法設計和實現可維護和高效的並行算法。他們提供了理論和實踐並給出了使用多種程式設計模型的詳細具體示例。這些示例主要使用兩種最流行和最先進的並行程式設計模型:Threading Building Blocks和Cilk Plus。這些與架構無關的模型可以輕鬆集成到現有應用程序中,保護現有代碼的投資,並加速並行應用程序的開發。來自現實情境的示例說明了並行算法設計中的模式和主題,無論實現技術如何,都具有廣泛的應用性。

- 基於模式的方法提供了結構和洞察力,開發人員可以應用於各種並行程式設計模型。
- 開發出一種可組合、結構化、可擴展和與機器無關的並行計算方法。
- 包括詳細的Cilk Plus和最新的Threading Building Blocks示例,支持各種計算機。