speed threading prototyping with intel® advisor xe · the solution the company found it easy and...

2
Speed Threading Prototyping with Intel® Advisor XE A leading design software company gets the data to design threaded application performance OVERVIEW How are software product companies meeting the challenge of increasing data and the corresponding performance demands? Here, we’ll look at one leading design software company whose products are used by design and engineering professionals worldwide. Its flagship product contains millions of lines of source code and a sophisticated workflow. For this company, making its product easy to use and scalable was critical to meeting customers’ ever-increasing requirements. THE CHALLENGE The amount of data in customer models that needs to be processed is steadily expanding. Though trying to use parallel computing to improve product performance, the company was struggling to identify areas where multithreading could produce visible gains at reasonable cost—and at the same time, make affected source code thread-safe. THE SOLUTION The company found it easy and intuitive to get started with Intel® Advisor XE, following the steps on the workflow tab. Intel Advisor XE ran on the application’s huge source code and delivered useful information from the first day of use. Intel Advisor XE accelerated the analysis process significantly—the amount of information that would normally take days was garnered in half an hour using the tool’s suitability analysis. The costs of using the tool were low, allowing the company to learn from even negative results. Intel Advisor XE also fulfilled a management imperative to base development decisions on actual data. The learning curve was minimal. The company’s team members reported that after initial setup and some introduction, they could quickly start to rationalize gathered information and apply it to problem solving. Results Intel Advisor XE helped assess and validate a core application. The tool’s quantitative estimates closely matched the company’s real-world experience. About four years ago, the company experimented with parallelizing a functional block. The performance gain was much less than expected. In 2012, the same code was run through Intel Advisor XE and it accurately forecasted the poor results. Had the company used the tool the first time, it estimates it could have saved 3 months of work. “Intel® Advisor XE offers a good way to model a prototype threading design. Performance and scalability projections matched our real-world experience.” KEY FINDINGS • Reduced ramp-up time for developers • Reduced development costs • Increased productivity, requiring fewer lines of code to be changed • Reduced test and QA cycles • Reduced time to market • Improved customer’s return on hardware investment CASE STUDY Intel® Software Development Tools Intel® Advisor XE, Intel® VTune™ Amplifier XE, Intel® Threading Building Blocks

Upload: others

Post on 16-Mar-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Speed Threading Prototyping with Intel® Advisor XE · THE SOLUTION The company found it easy and intuitive to get started with Intel® Advisor XE, following ... CASE STUDY Intel®

Speed Threading Prototyping with Intel® Advisor XE A leading design software company gets the data to design threaded application performance

OVERVIEW

How are software product companies meeting the challenge of increasing data and the corresponding performance demands? Here, we’ll look at one leading design software company whose products are used by design and engineering professionals worldwide. Its flagship product contains millions of lines of source code and a sophisticated workflow. For this company, making its product easy to use and scalable was critical to meeting customers’ ever-increasing requirements.

THE CHALLENGE

The amount of data in customer models that needs to be processed is steadily expanding. Though trying to use parallel computing to improve product performance, the company was struggling to identify areas where multithreading could produce visible gains at reasonable cost—and at the same time, make affected source code thread-safe.

THE SOLUTION

The company found it easy and intuitive to get started with Intel® Advisor XE, following the steps on the workflow tab. Intel Advisor XE ran on the application’s huge source code and delivered useful information from the first day of use. Intel Advisor XE accelerated the analysis process significantly—the amount of information that would normally take days was garnered in half an hour using the tool’s suitability analysis. The costs of using the tool were low, allowing the company to learn from even negative results. Intel Advisor XE also fulfilled a management imperative to base development decisions on actual data.

The learning curve was minimal. The company’s team members reported that after initial setup and some introduction, they could quickly start to rationalize gathered information and apply it to problem solving.

ResultsIntel Advisor XE helped assess and validate a core application. The tool’s quantitative estimates closely matched the company’s real-world experience. About four years ago, the company experimented with parallelizing a functional block. The performance gain was much less than expected. In 2012, the same code was run through Intel Advisor XE and it accurately forecasted the poor results. Had the company used the tool the first time, it estimates it could have saved 3 months of work.

“Intel® Advisor XE offers a

good way to model a prototype

threading design. Performance

and scalability projections

matched our real-world

experience.”

KEY FINDINGS

• Reduced ramp-up time for developers

• Reduced development costs

• Increased productivity, requiring fewer lines of code to be changed

• Reduced test and QA cycles

• Reduced time to market

• Improved customer’s return on hardware investment

CASE STUDYIntel® Software Development ToolsIntel® Advisor XE, Intel® VTune™ Amplifier XE, Intel® Threading Building Blocks

Page 2: Speed Threading Prototyping with Intel® Advisor XE · THE SOLUTION The company found it easy and intuitive to get started with Intel® Advisor XE, following ... CASE STUDY Intel®

Conclusion

For the software products industry, Intel Advisor XE can serve as an essential tool for managers and tech leaders alike. It provides data for cost-benefit analysis and scope of work, which contributes to both decision making and project planning. Says the company’s development manager, “Intel® Advisor XE offers a good way to model a prototype threading design. Performance and scalability projections matched our real-world experience.”

Learn more about Intel® software development tools at http://software.intel.com/en-us/intel- sdp-home/.

INTEL® ADVISOR XE

With Intel Advisor XE, software architects and engineers can quickly get the data required to develop a threading design for an application that delivers on projected performance. They can try out alternate designs, see the projected performance scalability, and identify synchronization issues.

• Prototyping tool that won’t disrupt development: Prototype in parallel with normal app development, without adding schedule risk

• Forecasts scalability on systems with more cores: Forecasts performance scaling on larger systems (goes beyond measuring the current system)

• Checks correctness before you build: Checks the threading and finds critical synchronization issues prior to implementation for improved project ROI and simplified testing

ABOUT INTEL® SOFTWARE DEVELOPMENT TOOLS

Intel has been providing standards-driven tools for developers in the high performance computing industry for more than 25 years. Its industry-leading tools include Fortran, C, and C++ Compilers, as well as performance profiling and analysis tools such as Intel® VTune™ Amplifier XE, Intel® Inspector XE, and Intel® Trace Analyzer and Collector. Performance libraries and programming models such as Intel® MPI library, Intel® Math Kernel Library, Intel® Cilk™ Plus, and Intel® Threading Building Blocks provide developers the tools needed to build applications for today and scale forward to tomorrow.

Figure 1. Intel® Advisor XE forecasts performance scaling on systems with a variety of core counts, and lets you focus on changes that will give the best projected performance for the least amount of development effort.

Figure 2 (right). Intel® Advisor XE’s workflow panel outlines the steps to add effective threading to an application. Because implementation is delayed until step 5, the active code base can be used for prototyping without impacting product releases during the threading design (steps 1-4).

Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors. Performance tests, such as SYSmark* and MobileMark*, are measured using specific computer systems, components, software, operations, and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products. For more information go to http://www.intel.com/performance .

For more information regarding performance and optimization choices in Intel® software products, visit http://software.intel.com/en-us/articles/optimization-notice.

Optimization Notice: Intel’s compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel® microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel® microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice. Notice revision #20110804

This document and the information given are for the convenience of Intel’s customer base and are provided “AS IS” WITH NO WARRANTIES WHATSOEVER, EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. Receipt or possession of this document does not grant any license to any of the intellectual property described, displayed, or contained herein. Intel® products are not intended for use in medical, lifesaving, life-sustaining, critical control, or safety systems, or in nuclear facility applications.

Performance tests and ratings are measured using specific computer systems and/or components and reflect the approximate performance of Intel products as measured by those tests. Any difference in system hardware or software design or configuration may affect actual performance. Intel may make changes to specifications, product descriptions, and plans at any time, without notice.

© 2013, Intel Corporation. All rights reserved. Intel, the Intel logo, Intel Cilk Plus and Intel VTune are trademarks of Intel Corporation in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others. Printed in USA 0713/BLA/CMD/PDF Please Recycle 329237-001US