|
|||||||||||||||||||||||||||||||||||
|
4 Reviews
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
6 of 6 people found the following review helpful:
5.0 out of 5 stars
Knowing how to access memory!,
By Olivier Langlois "www.OlivierLanglois.net" (Montreal, Quebec Canada) - See all my reviews (REAL NAME)
This review is from: Code Optimization: Effective Memory Usage (Paperback)
This book has been a revelation to me. Prior to read this book, all I knew was that memory access was expensive. This book will teach you how to organize your data in memory and how to access it to improve your program performance and most of the time without having to use assembly programming. It covers x86 memory organization and the interface between the processor and the memory and there is a whole chapter covering x86 processor cache memory. To me, the most shocking information contained in this book is a C implementation of memcpy() that outbeats VC++ implementation by 25%-30%!!!
This book is not for novices but if you are ready to change your perception forever of the x86 programming, this book is highly recommended!
5 of 5 people found the following review helpful:
5.0 out of 5 stars
A good book (goofs notwithstanding),
This review is from: Code Optimization: Effective Memory Usage (Paperback)
I've recently read this book and found it rather illuminating; every chapter had something I've learned from. As to CompierGuy's review, yes, with great surprise I did see this silly statement he's quoting; and indeed the idea that optimization can eliminate most programming bugs is preposterous. However, it is an isolated incident -- even the chapter it's in is very enlightening overall (for example, if you ever wondered, but couldn't figure out, why VC's TRACE macro resolves to what it resolves to, after reading this chapter you will understand). And so I think the silly "optimization" phrase can be ascribed to the substandard translation/editing: the publisher, A-list, seems to be a cheesy russian outfit trying to capitalize on the rapidly passing computing fad by printing a lot of padded junk with the word "Hacking" in the titles. That said, I think Kaspersky's books are an exception to the rule, although I wish they were better translated/edited.
All in all, I feel "CompilerGuy" is unfair in his criticism: he says the list of egregious errors is too long to quote and comes up with a single example -- the one and only silly phrase. Having read this book, I think that CompilerGuy's review is groundless, but perhaps I'm wrong, and being always keen to learn more, I'd be interested to see a few more examples off of this mentioned but unsubstantiated, supposedly too-long-to-quote list of "painfully wrong statements, outright speculation, and serious lack of insight". The bottom line: if you can get past unidiomatic writing and obvious snafus like the one quoted by CompilerGuy, you'll find the book useful; it has a lot of good information and thought of a rather uncommon for what's currently in print kind.
4.0 out of 5 stars
Hunt down and eliminate memory bottlenecks,
By
Amazon Verified Purchase(What's this?)
This review is from: Code Optimization: Effective Memory Usage (Paperback)
These days, CPUs are so blazingly fast that accessing data from memory is the bottleneck in calculation time. To get around this, CPU manufacturers have introduced a memory hierarchy in the form of on-chip (or just off-chip) cache memory, which are small but fast memory banks. To truly write fast code, one must understand how these work and how to create algorithms and data structures that take advantage of the hardware. To this end, this book does an admirable job. Kaspersky discusses everything from the electrical engineering and hardware on up through coding and profiling of actual software. He gives useful optimization techniques and explains why they work. He compares some Intel and AMD processors (fairly, I might add), and a few popular C compilers.
Fair warning: the level of optimization discussed is what occurs at the end of software development- very fine tuning "it works, now let's make it work faster." Find the best algorithm for your application first, THEN explore what is in this book. This important point comes up in the opening chapter, but Kaspersky doesn't really harp on it as much as he probably should. The text is a little dry but readable. There are several grammatical errors, probably due to translation. The wool is somewhat pulled over our eyes by hiding results in percentages. The text is organized in 3 giant chapters and one little one, each with numerous sections. The examples focus on integer math, so if you are interested in optimizing a scientific number-cruncher, this probably isn't for you (see instead something like Performance Optimization of Numerically Intensive Codes).
11 of 22 people found the following review helpful:
5.0 out of 5 stars
Groundbreaking, Holistic,
By Christian Beaumont (Issaquah, WA USA) - See all my reviews
This review is from: Code Optimization: Effective Memory Usage (Paperback)
I have never seen any book take such a holistic approach to the art of optimization. Sure there are plenty of books out there that talk about loop unrolling, cache alignment and instruction scheduling, but there are none like this one. You'd better hold on tight though this book is not for the faint of heart. Kris takes you on a detailed tour of the memory architecture of contemporary (PIII, P4 and Athlon) machines, examining in great detail the precise costs associated with each and every memory access. Only in this book will you find a comparison of timing between DRAM, FPM, EDO BEDO, SDRAM, DDR SDRAM, RDRAM. The text although straight and to the point is sparingly littered with amusing and sometimes sarcastic comments that work well to lighten the deep subject matter.My only complaints are that the text reads as if it has been translated from Russian (Which it probably has) and that there are too few chapters and too many sections. If you are serious about optimization techniques - read this book. |
|
Most Helpful First | Newest First
|
|
Code Optimization: Effective Memory Usage by Kris Kaspersky (Paperback - September 1, 2003)
Used & New from: $198.44
| ||