Most Helpful Customer Reviews
6 of 6 people found the following review helpful:
5.0 out of 5 stars
Knowing how to access memory!, June 2, 2007
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!
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
5 of 5 people found the following review helpful:
5.0 out of 5 stars
A good book (goofs notwithstanding), March 2, 2006
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.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
4.0 out of 5 stars
Hunt down and eliminate memory bottlenecks, December 21, 2010
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).
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
|
|
Most Recent Customer Reviews
|