Tutorials
Intel® Advisor
provides tutorials with step-by-step instructions on analyzing performance of applications with sample code.
Use the Automated Roofline Chart to Make Optimization Decisions - C++ Sample
Windows* OS Tutorial
:
HTMLSample
:
Download roofline_demo_samples
sample. You can download source code or pre-collected results to save time.
Duration
: 20 minutes (with pre-collected results)
Learning Objective
: Use the Roofline chart to answer the following questions:
- What is the maximum achievable performance with your current hardware resources?
- Does your application work optimally on current hardware resources?
- If not, what are the best candidates for optimization?
- Is memory bandwidth or compute capacity limiting performance for each optimization candidate?
Add Efficient SIMD Parallelism to Code Using the Vectorization Advisor - C++ Sample
Windows* OS Tutorial
:
HTMLLinux* OS Tutorial
:
HTMLSample
:
<install-dir>
/samples/en/C++/vec_samplesDuration
: 20 minutes
Learning Objective
: Use Vectorization report to:
- Identify loops that will benefit most from vectorization.
- Identify what is blocking effective vectorization.
- Increase the confidence that vectorization is safe.
- Explore the benefit of alternative data reorganizations.
Find Where to Add Parallelism to Code Using the Threading Advisor - C++ Sample
Windows* OS Tutorial
:
HTMLLinux* OS Tutorial
:
HTMLSample
:
<install-dir>
/samples/en/C++/nqueens_AdvisorDuration
: 20 minutes
Learning Objective
: Demonstrates an end-to-end workflow you can ultimately apply to your own applications:
- Survey the target executable to locate the loops and functions where your application spends the most time.
- In the target sources, addIntel Advisorannotations to mark possible parallel tasks and their enclosing parallel sites.
- Check Suitability to predict the maximum parallel performance speedup of the target based on these annotations.
- Check Dependencies to predict parallel data sharing problems in the target based on these annotations.
- If the predicted maximum speedup benefit is worth the effort to fix the predicted parallel data sharing problems, fix the problems.
- Recheck Suitability to see how your fixes impact the predicted maximum speedup.
- If the predicted maximum speedup benefit is still worth the effort to add parallelism to the target, replace the annotations with parallel framework code that enables parallel execution.
- Sample applications are non-deterministic.
- Sample applications are designed only to illustrate theIntel Advisorfeatures and do not represent best practices for creating and optimizing code.