De-Mystifying Software Performance Optimization
Performance Management Articles : Completing multiple performance tuning iterations that each result in modest to significant performance gains is a great start, but it is certainly not the end of your work. If you adopt this performance management methodology in a quest to improve the performance of a piece of software and perform the steps outlined in this paper, you will undoubtedly find that your work is never really quite finished.

by Paul Del Vecchio, senior performance analyst, Software and Solutions Group, Intel Corp.

As a senior performance analyst working at Intel, I spend my days collecting and studying enormous amounts of data that I gather in a laboratory over weeks or perhaps even months for any given project. This is a secure job, because software optimization is literally a job that never ends.

Consider the software development cycle: it is the drum beat to which every software company on the planet marches. From the smallest to the largest, firms employ scores of developers who spend their days writing code in multiple programming languages, across platforms and architectures, to enhance products' functionality, stability, or richness. In doing so, they inevitably solve issues presented by the existing version of the product. It has been my experience throughout the never-ending cycle of development, from conceptualization to quality assurance that one aspect of the product usually goes unchecked: performance.

Even if the software did not morph from version to version every several months, another variable adds to the software-performance equation—the ever-changing nature of hardware technology. Gordon Moore, senior member of Intel's Board of Directors and one of the company's founders, conceived Moore's Law back in 1965. The premise stating that the number of transistors per integrated circuit will grow exponentially over time has held true to this day. Figure 1 below shows how the number of transistors in Intel microprocessors has grown substantially over time:



Figure 1: Moore's Law


Subscribers who liked this article also read:
Boosting Cryptography Performance with Intel® Libraries
by Muneesh Nagpal, server applications engineer, Core Software Divisio...

If you're interested in this topic, these articles may be helpful:

Fundamentals of Web site acceleration: performance starts at the Web server
Port80 Software Inc. What best practices can developers use in Web ...
Turn performance killers into performance enablers
by Alan Zeichick, principal analyst, Camden Associates. Intel Corp. ...
High-performance MySQL: optimization, backups, replication, load balancing & more
by Jeremy Zawodny and Derek J. Balling, O'Reilly Media Inc. As use...
Boosting Cryptography Performance with Intel® Libraries
by Muneesh Nagpal, server applications engineer, Core Software Divisio...
Intel® Integrated Performance Primitives 4.1
Intel® Integrated Performance Primitives (Intel® IPP) is a library o...

Related Jobs:

IS Project Manager #187480 - MN - Plymouth - UnitedHealth Group
IS Project Manager - Plymouth, MN – 187480 Job Description...
System Engineer #2007RSA-THAUW84713IL33 - CO - Colorado Springs - Computer Sciences Corporation
Principal Duties and Essential Job Functions: Represents the FTO as s...
Software Engineer - CA - Los Angeles - Flexilis, Inc.
Flexilis is solving big problems on small devices. We are looking for ...
Sr. DataStage Developer #183881 - CT - Rocky Hill - UnitedHealth Group
Sr. DataStage Developer – 183881 Job Description Su...
Software Engineer, Lead #6356 - CA - Sunnyvale - Yahoo! Inc.
Software Engineer, Lead Requisition ID 6356 Location Sunnyvale, CA...
Senior Applications Developer #187578 - NJ - Basking Ridge - UnitedHealth Group
Senior Applications Developer - Basking Ridge, NJ – 187578 ...
IS Technical Systems Analyst #186803 - MN - Plymouth - UnitedHealth Group
IS Technical Systems Analyst - Plymouth, MN – 186803 Job D...
Technical Support Specialist #2007RSA-MJATH84810IL33 - IA - Indianapolis - Computer Sciences Corporation
Principal Duties and Essential Job Functions: The employee carries ou...
Production Support Manager #24141 - NY - New York - Morgan Stanley
Production Support Manager Date Posted: 8/24/2007 Functional ...
Senior Applications Developer #186467 - CT - Hartford - UnitedHealth Group
Senior Applications Developer - Hartford, CT, Greenville, SC, or Bas...