Sell Back Your Copy
For a $3.60 Gift Card
Trade in
Have one to sell? Sell yours here
Michael Abrash's Graphics Programming Black Book (Special Edition)
 
See larger image
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Michael Abrash's Graphics Programming Black Book (Special Edition) [Paperback]

Michael Abrash (Author)
4.6 out of 5 stars  See all reviews (33 customer reviews)


Available from these sellers.



Book Description

July 1997
No one has done more to conquer the performance limitations of the PC than Michael Abrash, a software engineer for Microsoft. His complete works are contained in this massive volume, including everything he has written about performance coding and real-time graphics. The CD-ROM contains the entire text in Adobe Acrobat 3.0 format, allowing fast searches for specific facts.


Editorial Reviews

Amazon.com Review

Michael Abrash's Graphics Programming Black Book is a collection of the author's previous books on assembly language and graphics programming, as well as past columns for Dr. Dobb's magazine. Though much of the book (such as 8088/286/386 assembly language optimization and VGA graphics programming) is out-of-date by now, the reader can see some of the larger tendencies in the author's work over the years--a reliance on profiling in order to test code, and creative thinking to improve performance wherever possible. This text features assembler optimization for a variety of problems including searching algorithms, and records the author's approaches to optimizing code for the evolving line of Intel CPUs, from the 8088 on to the early Pentium lines. The last few chapters of this book are more relevant, and include a series of explorations of some of the technology behind the popular Doom and Quake 3-D games by id Corporation (where the author worked). Optimized solutions to 3-D graphics problems from texture mapping, hidden surface removal, and Binary Space Partitioning (BSP) trees are explained. Current gaming and 3-D technology, such as Direct3D and VRML is left out, but it's clear that game programmers like the author will continue to push the limits of current hardware technology in inventive ways. This book is clearly targeted at game developers and serious assembly language programmers, not for the general reader.

Product Details

  • Paperback: 1200 pages
  • Publisher: Coriolis Group Books (July 1997)
  • Language: English
  • ISBN-10: 1576101746
  • ISBN-13: 978-1576101742
  • Product Dimensions: 9.2 x 7.4 x 2.8 inches
  • Shipping Weight: 5 pounds
  • Average Customer Review: 4.6 out of 5 stars  See all reviews (33 customer reviews)
  • Amazon Best Sellers Rank: #1,026,924 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

33 Reviews
5 star:
 (28)
4 star:
 (1)
3 star:
 (2)
2 star:    (0)
1 star:
 (2)
 
 
 
 
 
Average Customer Review
4.6 out of 5 stars (33 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

40 of 41 people found the following review helpful:
5.0 out of 5 stars I personally learned a lot from Michael's early articles., October 21, 1997
By 
Amazon Verified Purchase(What's this?)
This review is from: Michael Abrash's Graphics Programming Black Book (Special Edition) (Paperback)

If you have any interest in programming, you should look at Michael Abrash's Graphics Programming Black Book Special Edition. It has just about everything he has written, from the ancient work on optimizing for the 8086 (still interesting to read) to the articles written during quake's development.

I personally learned a lot from Michael's early articles, and I was proud to contribute to the later ones.

John Carmack, id Software

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


27 of 27 people found the following review helpful:
5.0 out of 5 stars Required Reading, August 8, 2000
By 
This review is from: Michael Abrash's Graphics Programming Black Book (Special Edition) (Paperback)
I don't do any graphics programming and much of the advice in this book is obsolete. Still, writing high-performance assembler and C code is essential to my job, and I can't begin to imagine how to become an expert on performance programming without reading the first portion of this book.

Abrash teaches you how to think like a performance programmer in a way that no one else does. Even the best (and much more current) books on performance programming like Rick Booth's excellent "Inner Loops" can't approach Abrash' skill at imparting the mindset of how one approaches code optimization. No wonder Abrash' earlier books (which are bundled into this one) have names beginning "The Zen of..." Michael Abrash preaches a discipline of constant awareness of the bus, the cache, and the pipeline in a clear and useful fashion. And of course, Test, test, test! Even if you are not a graphics programmer, you will have much to learn about writing tight code and good algorithms from the graphics examples.

Even though the book contains over 1000 pages, the real jewel may be the CD-ROM, which contains the complete text of the long out-of-print classic "Zen of Assembler". It is hard to express how influential a book on 8088(!) programming can be. That book begins by deconstructing a published article on speeding up a program by repeatedly applying optimizations that reduce the cycle count, eventually the cycle count was halved. Despite this, the "optimized" program ran slower than the original, and Abrash clearly explains why.

The chapter on Terje Matheson's wc program tought me more about assembler than any program I have ever looked at. (You can test your skill by rewriting wc to run well on the Pentium II and above. The Pentium code in the book runs into a devastating partial register stall on the newer processors. Then compare your solution to Matheson's latest, which can be found on the internet).

The bottom line is that if you are looking for a cookbook, stay away from this. The shelf-life of performance code samples is too short. On the other hand, if you are interested in really becoming a master of performance programming and are willing to work hard, this book will improve your skills more than you believed possible.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


13 of 13 people found the following review helpful:
5.0 out of 5 stars Hard-Core advice from the guy who optimized Quake!, April 9, 2000
This review is from: Michael Abrash's Graphics Programming Black Book (Special Edition) (Paperback)
A number of years ago, I was developing an object oriented Ray Tracer for my thesis. I read every book on the subject, but practically none gave any form of advice as to how to render the results of my tracings on an SVGA powered 386.

If only I had this book at hand back then! While today's PCs have grown well beyond VGA, and are largely well catered for via the likes of DirectX etc., this book still presents the base set of knowledge (from 8086 -> Pentium, from VGA -> Acellerated cards) that any programmer involved in the development of graphics oriented software should have.

Combined with Michael's treatment of fast 3d scenery management, texture mapping and lighting models, this book really does become a bible.

But this is not all...

It's not been all that many years since every time Borland released a new compiler that MS would follow (or vice-versa). Dr. Dobbs would then review the two packages and present accurate results as to which compiler generated the fastest or smallest code. How times change!

The relevance to this book is that the first 20 chapters should be read by EVERY hard-core developer: Why are compilers never going to generate code as optimally as a good developer can write assembler? Want to know why your code is not executing at least one instruction every clock cycle? Ever wondered how to time your code effectively? So just how would you optimize a particularly efficient string searching algorithm into a neat 7 instruction operation?

It's all here - one of the most readable exposes onto the nasty features of the 80x8x processor families (why oh why didn't IBM wait for the 680x0?) and how to overcome these problems.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews











Only search this product's reviews




Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums


Listmania!


So You'd Like to...



Look for Similar Items by Category


Look for Similar Items by Subject