Copyright by Gastón C. Hillar

Safari, the world’s most comprehensive technology and business learning platform.

Find the exact information you need to solve a problem on the fly, or go deeper to master the technologies and skills you need to succeed

Start Free Trial

No credit card required

O'Reilly logo

Chapter 10. Parallel Testing and Tuning

WHAT'S IN THIS CHAPTER?

  • Preparing parallel tests

  • Working with Visual Studio 2010 performance profiling features

  • Measuring and visualizing concurrency

  • Identifying common parallel performance problems

  • Detecting serialized execution problems

  • Identifying diverse lock contention scenarios

  • Working with concurrent garbage-collection mechanisms

This chapter is about the new profiling features introduced in Visual Studio 2010 Premium and Ultimate editions. In this chapter, you will learn to detect common problems related to parallelized code with .NET Framework 4 by using these new profiling features. A profiling session provides you with valuable feedback to optimize your code. The chapter explains the different techniques used to profile parallelized code, and teaches you how to refactor an existing application according to the results of each profiling session.

PREPARING PARALLEL TESTS

When you add parallelism to an existing serial application or create a new parallelized algorithm from scratch, you must run the necessary tests to make sure that your application provides the following:

  • Correctness—The parallelized application's execution should always lead to the correct result. Chapter 1, "Task-Based Programming," introduced the importance of correctness when different pieces of code run with a concurrent code.

  • Desired speedup—The parallelized application should run faster than its serial counterpart on certain hardware capable of running code with a real ...

Find the exact information you need to solve a problem on the fly, or go deeper to master the technologies and skills you need to succeed

Start Free Trial

No credit card required