By Kurt Guntheroth

In modern speedy and aggressive global, a program's functionality is simply as very important to shoppers because the positive aspects it offers. This sensible consultant teaches builders performance-tuning ideas that permit optimization in C++. you will easy methods to make code that already embodies most sensible practices of C++ layout run swifter and devour fewer assets on any machine - even if it is a watch, mobilephone, laptop, supercomputer, or globe-spanning community of servers. writer Kurt Guntheroth offers numerous operating examples that exhibit the best way to observe those rules incrementally to enhance latest code so it meets shopper standards for responsiveness and throughput. the recommendation during this publication will turn out itself the 1st time you pay attention a colleague exclaim, "Wow, that was once quick. Who mounted something?"

Show description

Read Online or Download Optimized C++: Proven Techniques for Heightened Performance PDF

Similar object-oriented software design books

Java & XML: Solutions to Real-World Problems

With the XML ''buzz'' nonetheless dominating speak between net builders, there is a genuine have to how you can minimize throughout the hype and positioned XML to paintings. Java & XML exhibits how you can use the APIs, instruments, and methods of XML to construct real-world functions. the result's code and information which are moveable. This moment version provides chapters on complex SAX and complex DOM, new chapters on cleaning soap and information binding, and new examples all through.

Data Structures for Computational Statistics

Because the starting of the seventies laptop is offered to take advantage of programmable desktops for numerous initiatives. throughout the nineties the has constructed from the massive major frames to private workstations. these days it isn't basically the that is even more robust, yet workstations can do even more paintings than a major body, in comparison to the seventies.

Object-Oriented Analysis, Design and Implementation: An Integrated Approach

The second one version of this textbook contains revisions in line with the suggestions at the first variation. In a brand new bankruptcy the authors offer a concise creation to the rest of UML diagrams, adopting a similar holistic strategy because the first variation. utilizing a case-study-based method for supplying a accomplished creation to the rules of object-oriented layout, it includes:A sound footing on object-oriented recommendations corresponding to sessions, gadgets, interfaces, inheritance, polymorphism, dynamic linking, and so on.

Extra resources for Optimized C++: Proven Techniques for Heightened Performance

Sample text

One was a linear search, another was a binary search. When I meas‐ ured the performance of these two functions, the linear search was consistently a few percent faster than the binary search. This, I felt, was unreasonable. The binary search just had to be faster. But the timing numbers told a different story. I was aware that someone on the Internet had reported that linear lookup was often faster because it enjoyed better cache locality than binary search, and indeed my lin‐ ear search implementation should have had excellent cache locality.

Making a program run 1% faster is not worth the risk that modifying a working program might introduce bugs. The effect of a change must be at least locally dramatic to make it worthwhile. Furthermore, a 1% speedup might be a measurement artifact masquerading as improvement. Such a speedup needs to be proven, with randomization, sample statistics, and confidence levels. It’s too much work for too little effect. It’s not a place we go in this book. A 20% improvement is a different animal. It blows through objections about method‐ ology.

The number of cores in a multicore processor is sufficient to guarantee that the memory bus is saturated with traffic. The actual rate at which data can be read from main memory into a particular core is more like 20–80 nano‐ seconds (ns) per word. Moore’s Law makes it possible to put more cores in a microprocessor each year. But it does little to make the interface to main memory faster. Thus, doubling the number of cores in the future will have a diminishing effect on performance. The cores will all be starved for access to memory.

Download PDF sample

Rated 4.64 of 5 – based on 4 votes