- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear. everyone~
Idon't know how to calculate the parallelization ratio.
In the case of 45nm Intel Core microarchitecture, the following equation is used to calculate the parallelization ratio.
====================================================
Equation: 1 - ( CPU_CLK_UNHALTED.NO_OTHER / CPU_CLK_UNHALTED.BUS )
Ideal: 1
====================================================
I want to know how to calculate the parallelization ratioon an Intel Xeon 5500 or Core i7 using VTune.
Thank you.
From. CHOI
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Is there any different?
1. If you use VTune Analyzer's EBS to get performance data, and used formula (last time my posted)- that is for overall view of Instruction Level Parallelism of the program - Processes Report. If you narrow down to Threads Report, you can use formula to get parallelism for specific thread.
2. Intel Thread Profiler and Intel Parallel Amplifier can provide the user info -
a)Cruise (execution) time - how many percentages are in idle, in serial, in parallel, etc. That is overall data for your application.
b) Narrow down to each thread's Profiler, to know how many percentages in serial, in parallel. That is overall data for specific thread. Does itmeanas you saidThread Level Parallelism?
What is the benefit from Intel Thread Profiler and Intel Parallel Amplifier for the user? No need to use formula to get Parallelism. Tools tell you truth directly.
Regards, Peter
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I don't know the formula you mentioned on Intel Core 2 -
1 - ( CPU_CLK_UNHALTED.NO_OTHER / CPU_CLK_UNHALTED.BUS
I suppose onCore2 processors -
Parallelism = CPU_CLK_UNHALTED.CORE_P / CPU_CLK_UNHALTED.TOTAL_CYCLES * Number-of-Cores
Note that I assumed that running code is nothalted, or says notina sleep state.It meansthat CPU frequency is constant during code running.
I can't find similar CPU event like as CPU_CLK_UNHALTED.TOTAL_CYCLES on i7 processors, the user may measure TSC value at the beginning and end of program, with _rdtsc() in ia32intrin.h (installed Intel C++ compiler)
Unused cycles== tsc_begin tsc_end CPU_CLK_UNHALTED.REF)
Parallelism = 1 - (Unused cycles / CPU_CLK_UNHALED.REF)
You can getparallelism (or cpu utilization) data directly if you use other Intel Tools: Intel Thread Profiler, or Intel Parallel Amplifier
Regards, Peter
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Is there any different?
1. If you use VTune Analyzer's EBS to get performance data, and used formula (last time my posted)- that is for overall view of Instruction Level Parallelism of the program - Processes Report. If you narrow down to Threads Report, you can use formula to get parallelism for specific thread.
2. Intel Thread Profiler and Intel Parallel Amplifier can provide the user info -
a)Cruise (execution) time - how many percentages are in idle, in serial, in parallel, etc. That is overall data for your application.
b) Narrow down to each thread's Profiler, to know how many percentages in serial, in parallel. That is overall data for specific thread. Does itmeanas you saidThread Level Parallelism?
What is the benefit from Intel Thread Profiler and Intel Parallel Amplifier for the user? No need to use formula to get Parallelism. Tools tell you truth directly.
Regards, Peter

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page