Implicit Parallel Programming in Ph
暫譯: Ph中的隱式並行程式設計
Rishiyur Nikhil, Arvind
- 出版商: Morgan Kaufmann
- 出版日期: 2001-06-04
- 售價: $3,240
- 貴賓價: 9.5 折 $3,078
- 語言: 英文
- 頁數: 508
- 裝訂: Hardcover
- ISBN: 1558606440
- ISBN-13: 9781558606449
無法訂購
買這商品的人也買了...
-
$880$695 -
$530$419 -
$680$537 -
$650$514 -
$530$419 -
$750$593 -
$580$493 -
$450$351 -
$590$502 -
$580$458 -
$850$723 -
$790$672 -
$850$723 -
$580$458 -
$750$593 -
$520$442 -
$580$452 -
$690$587 -
$420$332 -
$780$616 -
$380$323 -
$580$452 -
$580$452 -
$580$452 -
$550$468
商品描述
Order This Book | Authors | Contents | Related Titles
Parallel machines are now affordable and available to many users in the form of small symmetric shared-memory multiprocessors (SMPs). Unfortunately, programming practices have not kept pace with this hardware advance. The vast majority of developers still write applications in sequential programming languages that do not exploit multiple processors. The traditional approaches for adding parallelism to applications are prone to introducing new, strange, and difficult-to-eliminate bugs.
In this important new text, the authors offer a completely different vision of the future, where parallel programming is the default and sequential programming is a special case. The foundation of this vision is an implicitly parallel programming language, pH, which is the result of two decades of research by the authors. A dialect and extension of the standard nonstrict and purely functional language Haskell, pH is essentially Haskell with implicitly parallel semantics. pH's extensions to Haskell comprise a disciplined approach to shared parallel state, so that a pH program-even a beginner's program-is implicitly parallel.
The authors have developed this text over ten years while teaching implicit parallel programming to graduate students at MIT and specialized short courses to undergraduates and software professionals in the U.S., Japan, and India.
Features
- Provides a complete treatment of the language, the programming philosophy it embraces, and its theoretical underpinnings.
- Includes many clear yet small examples.
- Features programs, problems, solutions, and a downloadable pH implementation for SMP machines and related software.
- Is designed for students and professionals with a thorough knowledge of a high-level programming language but with no previous experience in parallel programming.
Rishiyur S. Nikhil is the Director of Software at Sandburst Corporation, where he manages the development of software for hardware synthesis. He has devoted seventeen years to designing and implementing languages and architectures as a researcher at the Cambridge Research Laboratory of DEC and Compaq Computer Corporation and as a Professor of Computer Science and Engineering at MIT.
Arvind is the Johnson Professor of Computer Science and Engineering at MIT and President and founder of Sandburst Corporation, a new style chips company that exploits his recent research on high-level specification and description of architectures and protocols using term rewriting systems. He is an IEEE Fellow and was awarded the Charles Babbage Outstanding Scientist Award.
Chapter 1 From Sequential to Implicit Parallel Programming
Chapter 2 Functions and Reduction
Chapter 3 Types and Type Checking
Chapter 4 Rewrite Rules, Reduction Strategies, and Parallelism
Chapter 5 Tuples and Algebraic Product Types
Chapter 6 Lists and Algebraic Sum Types
Chapter 7 Arrays: Fast Indexed Data Structures
Chapter 8 Sequencing, Input/Output, and Side Effects
Chapter 9 I-structures
Chapter 10 M-structures: Mutable Synchronized State
Chapter 11 Conclusion
Appendix A An Introduction to the for pH
High Performance, Parallel & Distributed Computing
Software Engineering & Programming
商品描述(中文翻譯)
平行計算機現在以小型對稱共享記憶體多處理器(SMP)的形式變得可負擔且可供許多用戶使用。不幸的是,程式設計實踐並未跟上這一硬體進步。絕大多數開發人員仍然使用不利用多處理器的順序程式設計語言來編寫應用程式。將平行性添加到應用程式的傳統方法容易引入新的、奇怪的且難以消除的錯誤。
在這本重要的新書中,作者提供了一個完全不同的未來願景,在這個願景中,平行程式設計是預設,而順序程式設計則是一種特殊情況。這一願景的基礎是一種隱式平行程式設計語言 pH,它是作者二十年研究的結果。pH 是標準非嚴格且純函數語言 Haskell 的一種方言和擴展,基本上是具有隱式平行語義的 Haskell。pH 對 Haskell 的擴展包含了一種對共享平行狀態的有序方法,因此即使是初學者的 pH 程式也是隱式平行的。
作者在過去十年中開發了這本書,並在麻省理工學院(MIT)教授隱式平行程式設計,還為美國、日本和印度的本科生及軟體專業人士開設了專門的短期課程。
特色
- 提供對該語言、其所擁抱的程式設計哲學及其理論基礎的完整闡述。
- 包含許多清晰但簡短的範例。
- 提供程式、問題、解決方案,以及可下載的 pH 實作,適用於 SMP 機器及相關軟體。
- 設計給對高階程式設計語言有透徹了解但沒有平行程式設計經驗的學生和專業人士。
Rishiyur S. Nikhil 是 Sandburst Corporation 的軟體總監,負責硬體合成軟體的開發。他在 DEC 和 Compaq Computer Corporation 的劍橋研究實驗室擔任研究員,並在麻省理工學院(MIT)擔任計算機科學與工程教授,已經投入了十七年設計和實現語言及架構的工作。
Arvind 是麻省理工學院(MIT)計算機科學與工程的約翰遜教授,也是 Sandburst Corporation 的總裁和創始人,這是一家新型晶片公司,利用他最近在高階規範和架構及協議描述方面的研究,使用術語重寫系統。他是 IEEE Fellow,並獲得了查爾斯·巴貝奇傑出科學家獎。
第 1 章 從順序到隱式平行程式設計
第 2 章 函數與歸納
第 3 章 類型與類型檢查
第 4 章 重寫規則、歸納策略與平行性
第 5 章 元組與代數乘積類型
第 6 章 列表與代數和類型
第 7 章 陣列:快速索引資料結構
第 8 章 排序、輸入/輸出與副作用
第 9 章 I-結構
第 10 章 M-結構:可變同步狀態
第 11 章 結論
附錄 A 的介紹,適用於 pH