Introduction
By: Sergey N. Zheltov and Stanislav V. Bratanov, Senior Software Engineers, Intel Corporation
From a hardware point of view, multi-core processors are simply single-die physical packages that provide capabilities similar to traditional symmetric multiprocessing (SMP) machines, and inevitably inherit most of the performance monitoring problems a programmer typically faces while working with SMP.
We will address such performance estimation problems and advocate a thread-oriented approach to performance monitoring as an efficient way of dealing with multi-threaded code. At the same time, we will also address this as a basis for solving the particular task of monitoring Hyper-Threading Technology (HT Technology)-enabled multi-core systems.
This article discusses several methods and provides solutions to the problems which cannot be solved without the notion of the actual thread layout over time, thread activity, and interaction.
The problem of monitoring the utilization of resources shared between multiple cores or CPUs is discussed in an example of measuring bus utilization. A solution based on per-thread monitoring is suggested, and compared with sampling-based approaches.
![]()
If you're interested in this topic, these articles may be helpful:
![]() | Developing your site for performance: principles and techniques of cost-effective Web site acceleration, part 1 by Thomas A. Powell, president, PINT Inc., and Joe Lima, director of... |
![]() | Rational Performance Tester demo IBM Rational Performance Tester is a performance and load testing so... |
![]() | Threading Games for High Performance on Intel® Processors The evolution of the multi-threaded processor design is the trend for ... |
![]() | J2EE performance optimization, part 2: the SPECjAppServer family of benchmarks by Kingsum Chow, Ph.D., senior performance architect, Managed Runtime ... |
![]() | J2EE performance optimization, part 1: laying the foundation by Kingsum Chow, PhD, senior performance architect with the Managed ... |
![]()
Related Jobs:
![]() | Applications Developer - MN - Western Suburbs - The Protomold Company, Inc. Protomold is the worlds largest and fastest growing Rapid Injection M... |
![]() | Senior Audio Systems Engineer #977 - CA - Milpitas - PalmOne, Inc. Senior Audio Systems Engineer Job code: 977 Job Category: Engineerin... |
![]() | IT Specialist (SYSANALYSIS/APPSW) #61619660 - VA - Falls Church - USAJOBS MAJOR DUTIES: Top Develops and interprets policies, procedures, a... |
![]() | Sr. Software Engineer #5118-DGS - MA - Natick - The MathWorks Sr. Software Engineer - Multicore/Parallel Applications Job... |
![]() | Senior Software Engineer #U04609 - CA - Sunnyvale - Juniper Networks, Inc. Senior Software Engineer (Member Technical Staff) Sunnyvale, CA HQ ... |
![]() | Member Technical Staff #U04341 - CA - Sunnyvale - Juniper Networks, Inc. Member Technical Staff (Member Technical Staff) Sunnyvale, CA HQ Jo... |
![]() | SOC Engineer #434995 - WA - Seattle - Qpass MAJOR RESPONSIBILITIES ท Providing support for incident/pr... |
![]() | Supervisory IT Specialist (POLICY AND PLANNING) #60970905 - VA - Northern Virginia - USAJOBS Top You will perform duties that involve managing a wide range o... |
![]() | Quality Assurance Engineer #21324 - IA - Iowa City - Pearson Education Title: Quality Assurance Engineer Req Number: 21324 Date Opened: T... |
![]() | Programmer Analyst - FL - Boca Raton - NCCI Holdings, Inc. At NCCI Holdings, Inc., we realize our greatest asset is our team of m... |

