Freshly Printed - allow 4 days lead
Computer Architecture for Scientists
Principles and Performance
A principled, high-level view of computer performance and how to exploit it. Ideal for software architects and data scientists.
Andrew A. Chien (Author)
9781316518533, Cambridge University Press
Hardback, published 10 March 2022
264 pages
25 x 17.4 x 1.6 cm, 0.64 kg
'Andrew Chien's book connects the dots from interdependent architectural choices to underlying calculus of performance and in the process strikes a balance between high-level view of the machine and its realizations. It is essential that users of these tools have an intimate understanding of the principles and mechanisms that make computing machines deliver efficient and high performance without becoming hardware designers themselves. The book provides such insights through its succinctly stated principles that both educate and enlighten about fundamental abstractions in computing.' Rajesh Gupta, Professor of Computer Science and Engineering, University of California, San Diego
The dramatic increase in computer performance has been extraordinary, but not for all computations: it has key limits and structure. Software architects, developers, and even data scientists need to understand how exploit the fundamental structure of computer performance to harness it for future applications. Ideal for upper level undergraduates, Computer Architecture for Scientists covers four key pillars of computer performance and imparts a high-level basis for reasoning with and understanding these concepts: Small is fast – how size scaling drives performance; Implicit parallelism – how a sequential program can be executed faster with parallelism; Dynamic locality – skirting physical limits, by arranging data in a smaller space; Parallelism – increasing performance with teams of workers. These principles and models provide approachable high-level insights and quantitative modelling without distracting low-level detail. Finally, the text covers the GPU and machine-learning accelerators that have become increasingly important for mainstream applications.
Preface
1. Computing and the transformation of society
2. Instruction sets, software, and instruction execution
3. Processors: small is fast and scaling
4. Sequential abstraction, but parallel implementation
5. Memories: exploiting dynamic locality
6. The general-purpose computer
7. Beyond sequential: parallelism in multi-core and the Cloud
8. Accelerators: customized architectures for performance
9. Computing performance: past, present, and future
References, Index.
Subject Areas: Computer architecture & logic design [UYF]