fashionwintersale15 Öle & Betriebsstoffe für Ihr Auto mrp_family studentsignup Cloud Drive Photos Handytarife Learn More Movember Festlich-Kochen Hier klicken Fire Shop Kindle
EUR 105,88
  • Alle Preisangaben inkl. MwSt.
Nur noch 3 auf Lager (mehr ist unterwegs).
Verkauf und Versand durch Amazon. Geschenkverpackung verfügbar.
Optimizing Compilers for ... ist in Ihrem Einkaufwagen hinzugefügt worden
Möchten Sie verkaufen?
Zur Rückseite klappen Zur Vorderseite klappen
Hörprobe Wird gespielt... Angehalten   Sie hören eine Hörprobe des Audible Hörbuch-Downloads.
Mehr erfahren
Alle 3 Bilder anzeigen

Optimizing Compilers for Modern Architectures. A Dependence-based Approach.: A Dependence-Based Approach (Monographien und Texte zur Nietzsche-Forschung) (Englisch) Gebundene Ausgabe – 4. Oktober 2001

Alle Formate und Ausgaben anzeigen Andere Formate und Ausgaben ausblenden
Neu ab Gebraucht ab
Gebundene Ausgabe
"Bitte wiederholen"
EUR 105,88
EUR 102,87 EUR 102,77
12 neu ab EUR 102,87 6 gebraucht ab EUR 102,77

Hinweise und Aktionen

  • Verschenken Sie Bücher zu Weihnachten: Entdecken Sie die schönsten Buchgeschenke zu Weihnachten, Adventskalender und Bücher rund ums Fest. Hier klicken.

Es wird kein Kindle Gerät benötigt. Laden Sie eine der kostenlosen Kindle Apps herunter und beginnen Sie, Kindle-Bücher auf Ihrem Smartphone, Tablet und Computer zu lesen.

  • Apple
  • Android
  • Windows Phone

Geben Sie Ihre E-Mail-Adresse oder Mobiltelefonnummer ein, um die kostenfreie App zu beziehen.

Jeder kann Kindle Bücher lesen — selbst ohne ein Kindle-Gerät — mit der KOSTENFREIEN Kindle App für Smartphones, Tablets und Computer.


Mehr über den Autor

Entdecken Sie Bücher, lesen Sie über Autoren und mehr



"Compilers are the Queen of Computing Science and Technology. They have long been the bridge from applications to systems, but now they determine which architectural features should be implemented in new hardware, as well as which new language features will be effective for software developers. The authors write from great experience as innovators and developers of the field. This book is a very comprehensive treatment of optimization for cache management, vectorization, parallelization, and more. The title refers to Modern Architectures and indeed the subject matter is applicable from desktop systems to the world's fastest supercomputers. The examples are drawn from Fortran, but the theory applies to many programming languages. I think the book will serve as an excellent textbook as well as a much used reference for software developers." -David Kuck, Intel " This book makes an extremely valuable contribution to the field of compilation by presenting the fundamental basics in compiling technology for high performance computing systems. The authors provide careful and thorough descriptions of the analyses, including data and control dependences and interprocedural analysis, and the code transformations that can be applied as a result of the analyses. The book covers a comprehensive range of important topics needed to compile for high performance systems. The organization and structure of the book as well as the clear writing style make it an excellent text book, highly valuable reference book and a useful guide for implementing the techniques." -Mary Lou Soffa, University of Pittsburgh "The much awaited book by Randy Allen, a leading practitioner and Ken Kennedy, a pioneer in compiler research provides a skillful encapsulation of the results of more than 30 years of research and development in restructuring compilers - a significant part of which was done by the authors. The combination of staged introduction of each topic with the aid of examples and the detailed algorithmic layout of each optimization make this text an outstanding reference for the expert as well as for new students of the topic. This book constitutes yet the most complete and rich text of compiler optimization fundamentals and algorithms, an invaluable resource for researchers, educators and compiler developer." -Constantine Polychronopoulos, University of Illinois Urbana-Champaign "Kennedy and Allen take a unique approach in this book. They focus on how compilation techniques work together to make practical program analysis and optimization algorithms for achieving good performance on parallel machines, whereas previous texts focus on the specific techniques. Every compiler writer should have a copy of this insightful and lively book in their library!" -Kathryn S McKinley, University of Texas at Austin "Dependence analysis is at the core of a huge class of program transformations and optimizations, including cache management, exploiting parallelism, and many many others. The authors have provided information that is essential to practicing professionals in the area of high-performance computer architecture. An indispensable reference." -Rohit Chandra, NARUS Inc.


Modern computer architectures designed with high-performance microprocessors offer tremendous potential gains in performance over previous designs. Yet their very complexity makes it increasingly difficult to produce efficient code and to realize their full potential. This landmark text from two leaders in the field focuses on the pivotal role that compilers can play in addressing this critical issue. The basis for all the methods presented in this book is data dependence, a fundamental compiler analysis tool for optimizing programs on high-performance microprocessors and parallel architectures. It enables compiler designers to write compilers that automatically transform simple, sequential programs into forms that can exploit special features of these modern architectures. The text provides a broad introduction to data dependence, to the many transformation strategies it supports, and to its applications to important optimization problems such as parallelization, compiler memory hierarchy management, and instruction scheduling.

The authors demonstrate the importance and wide applicability of dependence-based compiler optimizations and give the compiler writer the basics needed to understand and implement them. They also offer cookbook explanations for transforming applications by hand to computational scientists and engineers who are driven to obtain the best possible performance of their complex applications. The approaches presented are based on research conducted over the past two decades, emphasizing the strategies implemented in research prototypes at Rice University and in several associated commercial systems. Randy Allen and Ken Kennedy have provided an indispensable resource for researchers, practicing professionals, and graduate students engaged in designing and optimizing compilers for modern computer architectures.

This text: offers a guide to the simple, practical algorithms and approaches that are most effective in real-world, high-performance microprocessor and parallel systems; demonstrates each transformation in worked examples; examines how two case study compilers implement the theories and practices described in each chapter; presents the most complete treatment of memory hierarchy issues of any compiler text; illustrates ordering relationships with dependence graphs throughout the book; applies the techniques to a variety of languages, including Fortran 77, C, hardware definition languages, Fortran 90, and High Performance Fortran; and provides extensive references to the most sophisticated algorithms known in research.

Alle Produktbeschreibungen

Welche anderen Artikel kaufen Kunden, nachdem sie diesen Artikel angesehen haben?

In diesem Buch

(Mehr dazu)
The past two decades have been exciting ones for high-performance computing. Lesen Sie die erste Seite
Mehr entdecken
Ausgewählte Seiten ansehen
Buchdeckel | Copyright | Inhaltsverzeichnis | Auszug | Stichwortverzeichnis | Rückseite
Hier reinlesen und suchen:


Es gibt noch keine Kundenrezensionen auf
5 Sterne
4 Sterne
3 Sterne
2 Sterne
1 Sterne

Die hilfreichsten Kundenrezensionen auf (beta) 7 Rezensionen
18 von 18 Kunden fanden die folgende Rezension hilfreich
An excellent book on loop based optimization 14. April 2003
Von Ian K. - Veröffentlicht auf
Format: Gebundene Ausgabe
Randy Allen and Ken Kennedy are famous for their contributions
to compiler design theory. This book is a clearly written
discussion of the issues involving loop optimization and
dependence analysis. While this book also covers scalar
optimization issues, it is naturally complemented by Steven
S. Muchnick's excellent book "Advanced Compiler Design and
Randy Allen has spent many years implementing a variety of
compilers for supercomputers and hardware design languages.
While Ken Kennedy has published seminal theoretical work on
compiler optimization, he has also been involved in hands on
implementation as well. The experience of these two authors
results in a book which covers the huge body of knowledge in
compiler optimization and provides this knowledge in a
practical form that can be used by software engineers working
on compiler design.
For anyone working on modern compilers that require sophisticated
optimization features, this is an important reference work.
As with Muchnick's book, I have owned this since it was first
published. Rereading it reminds me of what a gem this work is.
12 von 13 Kunden fanden die folgende Rezension hilfreich
Finally, everything in one place. 5. Februar 2003
Von Ein Kunde - Veröffentlicht auf
Format: Gebundene Ausgabe
As a researcher in the field, this book was immediately useful to me. Nearly every source code transformation and optimization technique that I'm aware of is present in this book, which often saves sifting through stacks of papers or looking for an elusive reference. If you're looking for a book to teach you the basics of how compilers work, it certainly is not the appropriate place to begin, but if you already have one good book on that then this book will make an excellent companion to it. It was slightly annoying that the book comes with two loose pages, one errata list and another to tape over a page early in the book, but that's what you get with 1st editions. Overall it's very good and the errors are very minor typos as opposed to factual goofs.
11 von 12 Kunden fanden die folgende Rezension hilfreich
Must-have for compiler writers and processor designers 14. Januar 2007
Von wiredweird - Veröffentlicht auf
Format: Gebundene Ausgabe
Allen and Kennedy (A&K) haven't written your first compiler book. There's nothing about syntax analysis, code generation, instruction scheduling, or intermediate representations. You already know all that part, or you won't get very far in this book. Once you have the basics down, A&K is an irreplaceable reference.

It centers heavily on Fortran - even today, a mainstay of scientific computing and an active area of language development. Today, just as 50 years ago, the language's straightforward structure makes detailed behavioral analysis relatively easy. That's especially true in handling the array computations that soak up so many dozens (as of this writing) of CPU-hours per second on todays largest machines. There's far too much to summarize here, but A&K cover a huge range of processor features, including caches, multiple ALUs, vector units, chaining, and more. C code gets some attention as well, much needed because of the cultural weirdness around array handling in C. In every case, the focus is on the real-world kernels that need the help and on explicit ways of identifying and manipulating those code structures. As a result, the authors disregard the unreal situations that sometimes arise, e.g. in
"while (--n) *a++ = *b++ * *c++;"
Yes, the arrays pointed to by a, b, and c can overlap. But the pointer a can also point to a, b, c, or n, somewhere in its range - and likewise for pointers b and c, or all three. There is essentially no limit to how bad this can get, e.g when n is an alias for a, b, or c. Yes these are rare situations and generally errors - but I've seen on-the-fly code generation in production environments, so even the A&K example isn't as bad as it gets. I admit these to be pathological cases, though, better suited to an 'Obfuscated C' contest than to a compiler textbook.

The real disappointment comes from the section on compilation for Verilog and VHDL, and that disappointment may be a matter of emphasis only. The authors focus heavily on the strangeness of four-valued bits, which exist in Verilog and VHDL simulation, but not in synthesis. I.e., not in what really matters to a deployed application. The real challenge lies in compilation of C or Fortran into gates, a topic that the authors barely skim. That, however, is still a field of research exotica. It should be mentioned in a general book on compilation, as it is here, but awaits a text of its own.

All you processor designers out there should read the title a little differently. You should read this as "Modern Architectures for Optimizing Compilers," but you probably worked that out for yourself. If you have the luxury to define your own memory structure, all that analysis of memory access will give you plenty of ideas for your next ASIP. It will certainly give you lots of ways to quantify the behavior of your target applications, so you'll know just how to get the most MIPS per Mgate, including hard limits on how much hardware paralellism can actually do you any good.

All architects of performance computing systems, hardware or software, need this book. Even application developers can learn better ways to cooperate with the compilers and tools that run their codes. It has my very highest recommendation.

6 von 6 Kunden fanden die folgende Rezension hilfreich
Very readable, very specific 10. August 2005
Von Robert Mykland - Veröffentlicht auf
Format: Gebundene Ausgabe
This book is a very thorough look through all the ways you can extract and use parallelism and data dependencies advantageously in an optimized compiler, depending on your target architecture. As one example, this book contains every imaginable way to deal with arrays and loops and the maddeningly complex data dependancies that can result from their various interminglings. The book is refreshingly easy to read and contains pseudo-code and step-by-step examples everywhere you'd want to see them.
1 von 1 Kunden fanden die folgende Rezension hilfreich
An very innovative book 5. Juni 2010
Von G. Dimitroulakos - Veröffentlicht auf
Format: Gebundene Ausgabe Verifizierter Kauf
This is the only compiler book i know that performs a comprehensive study on dependences and their applications. It does not provide the theory to learn how a compiler front-end works but rather it focuses on dependence based optimization with applications on parallelism and cache optimization. I consider that this book serves its purpose perfectly
Waren diese Rezensionen hilfreich? Wir wollen von Ihnen hören.