Performance optimization of numerically intensive codes
Book information
Description
I think most people take Tony Hoare's optimization remark "premature optimization is the root of all evil" too seriously...especially those people that write books on programming. In this book, Goedecker and Hoise explain how to optimize code on a variety of platforms and for a variety of common scientific operations (matrix math, FFT, etc.). We, as writers of scientific software, can no longer depend on Moore's law to make our codes run faster. Similarly, optimizing compilers can't understand the "big picture" of our software, and in certain cases it is beneficial to optimize by hand. CPUs outpace memory speed by several orders of magnitude, so the hierarchical memory paradigm (caches and the like) has been used and improved over the past few years. The main focus of the book is to show how to take advantage of the caches, but other optimization ideas are discussed as well, like various tricks with floating point numbers and library calls. All of these topics are not discussed in general programming books or parallel programming books, where the latter is a shocking revelation to me- generally if you are bothering to go to multiple processors, you should bother to optimize the hell out of the serial code along the way. The text is easy to read, with plenty of clear examples and a chapter of case studies which go beyond the simple proof-of-concept discussion with the individual optimization methods. The examples are all in FORTRAN, and as a C guy myself, I found them easy enough to understand. The book is a few years old...it could probably stand updating. We now have several cache layers on modern processors, in addition to multiple cores on one chip. The book focuses on RISC CPUs, even though today both the RISC and CISC paradigms are migrating towards each other and borrowing ideas. Regardless of the book showing its age, it is still full of applicable knowledge for scientists and engineers that write number-crunching applications.
Similar books
Performance Analysis and Grid Computing: Selected Articles from the Workshop on Performance Analysis and Distributed Computing August 19–23, 2002, Dagstuhl, Germany
2004 · PDF
Performance optimization of numerically intensive codes
2001 · DJVU
Performance optimization of numerically intensive codes
2001 · DJVU
MySQL® Notes for Professionals book
2018 · PDF
MrExcel 2022: Boosting Excel
2022 · PDF
MrExcel 2022: Boosting Excel
2022 · PDF
Session C11: Ancient Cultural Landscapes in South Europe – their Ecological Setting and Evolution, Session C22: Gardeners from South America, Session S04: Agro-Pastoralism and Early Metallurgy Sessions, Session WS29: The Idea of Enclosure in Recent Iberian Prehistory, Session C88: Rhytmes et causalites des dynamiques de l'anthropisation en Europe entre 6500 ET 500 BC: Hypotheses socio-culturelles et/ou climatiques: Proceedings of the XV UISPP World Congress (Lisbon 4-9 September 2006) / Actes du XV Congrès Mondial (Lisbonne 4-9 Septembre 2006) Vol.36
2010 · PDF
THE BRITISH ARMY IN INDIA: ITS PRESERVATION BY AN APPROPRIATE CLOTHING, HOUSING, LOCATING, RECREATIVE EMPLOYMENT, AND HOPEFUL ENCOURAGEMENT OF THE TROOPS. with AN APPENDIX ON INDIA : THE CLIMATE OP ITS HILLS ; THE DEVELOPMENT OF ITS RESODRCBS, INDUSTRY, AND ARTS ; THE ADMINISTRATION OF JUSTICE ; THE BLACK ACT ; THE PROGRESS OF CHRISTIANITY ; THE TRAFFIC IN OPIUM ; THE VALUE OF INDIA ; PERMANENT CAUSES OF DISAFFECTION, AND OF THE RECENT REBELLION ; THE TRADITIONARY POLICY; MISGOVERNMENT BY NATIVE RULERS ; ANNEXATIONS OF THEIR TERRITORY, ETC.
1858 · PDF