Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)

How to analyse the SPEC CPU2006 Benchmarks with INTEL Vtunes

Raju_K
Beginner
1,322 Views
Hi,
I am trying to analyse the processor performance using SPEC CPU2006 Benchmarks and INTEL Vtunes.

I chose a benchmark (470.lbm which is in C language) and generated binary using the SPEC provided tools, as follows:

1) runspec --fake --loose --size test --tune base --config my_test lbm

2) specmake

Once the executable (binary) is generated I created a new project in the standalone GUI of Intel Vtune, choosing the above generated binary as the target application. The analysis type was "Intel Core 2 Family - General Exploration".

But when I started the new analysis, Vtune could not run the binary and gave the following error:
syntax: lbm
0 Kudos
1 Solution
Peter_W_Intel
Employee
1,322 Views
Once your SPEC 2006 is running, check process id that you hope to profile, then in other console (I assume that the directory is same as SPEC 2006's running) do -

run C:\Program Files (x86)\Intel\VTune Amplifier XE 2011\amplxe-vars.bat on Windows, or
source /opt/intel/vtune_amplifier_xe_2011/amplxe_vars.sh

amplxe-cl -collecthotspots -durationN -r r0001hs -target-pid pid
// if N is bigger value, you can stopmanually, in other console
amplxe-cl -command detach -r r0001hs

You can use amplxe-gui to open result generated in command line.

Regards, Peter

View solution in original post

0 Kudos
17 Replies
Peter_W_Intel
Employee
1,323 Views
Once your SPEC 2006 is running, check process id that you hope to profile, then in other console (I assume that the directory is same as SPEC 2006's running) do -

run C:\Program Files (x86)\Intel\VTune Amplifier XE 2011\amplxe-vars.bat on Windows, or
source /opt/intel/vtune_amplifier_xe_2011/amplxe_vars.sh

amplxe-cl -collecthotspots -durationN -r r0001hs -target-pid pid
// if N is bigger value, you can stopmanually, in other console
amplxe-cl -command detach -r r0001hs

You can use amplxe-gui to open result generated in command line.

Regards, Peter

0 Kudos
Raju_K
Beginner
1,322 Views
Hi Peter,

Thank you very much.

I executed spec cpu 2006 benchmark and got its process id. Then in another console I entered the command:

amplxe-cl -collecthotspots -duration 1000 -r r0001hs -target-pid pid

The follwoing details are displayed:

Executing actions 75% Generating a report

Summary
Elapsed time : 2.832
CPU time : 1.032
Executing actions 100% done


What I observed is, by the time I entered amplxe command, almost 25% execution of the benchamrk was got over. Therefore I think profiling the benchmark was not done 100%. Is it possible to begin the execution of amplexe and the benchmark program together so that profiling would be complete.

Also what does the duration in the amplxe command stand for? ( I simply assumed it to be 1000)

Please help.

Regards
Raju
0 Kudos
Peter_W_Intel
Employee
1,322 Views
Hi Raju,

As you said, only 25% execution of benchmark was got over...probably benchmark ran shortly, duration 1000s was ignored since application exited. We may work in this way:

1. First console:
runspec --fake --loose --size test --tune base --config my_test lbm
specmake


2. Second console:
amplxe-cl -collecthotspot -duration1000 -target-process specmake

Press in first console, quickly press in second console - Hopefully more execuation25% of benchmark will be done.

Regards, Peter
0 Kudos
Raju_K
Beginner
1,322 Views
Hi,

It works.... Thanks a lot...


Regards,
Raju
0 Kudos
Not applicable
1,322 Views
 
0 Kudos
Leena_N_
Beginner
1,322 Views

Hi,

I want to do the similar type of analysis using Vtune performance analyzer. I am using windows 7 O.S. I have already compiled the SPEC CPU2006 Benchmarks and I have the exe files of all the benchmarks of both speed and rate. Now how do I use it in the Vtune Performance analyzer. Please can ayone help me

0 Kudos
Peter_W_Intel
Employee
1,322 Views

>  Now how do I use it in the Vtune Performance analyzer

VTune(TM) Peformance Analyzer is an old product, end of life. Please use recent product, VTune(TM) Amplifier XE 2013. 

0 Kudos
Leena_N_
Beginner
1,322 Views

Hi Peter,

I am using the Vtune Amplifier for analyzing the performance of the three different processor. I have compiled the SPEC Benchmarks and got the binaries.I just want to know that, do I have to use the binary obtained after the compilation of SPEC Benchmark as the application file in the Vtune aplifier ? I have the trouble at the starting point. Like what kind of file I should be using when I start a new analysis.

0 Kudos
Peter_W_Intel
Employee
1,322 Views

> .I just want to know that, do I have to use the binary obtained after the compilation of SPEC Benchmark as the application file in the Vtune aplifier ?

It is not difficult to create a new project on GUI, then specify a launched application which is you run SPEC Benchmark - for example, meanwhile you can set arguments for your app, working directory, etc. Then you can start a new analysis...have a try! 

0 Kudos
Leena_N_
Beginner
1,322 Views

Hi peter,

I am using Vtune amplifier on windows 7. And I already have the binaries that I got after compilation. I just have have to choose these binaries as the application file right ? I don't need to do both the things parallely like compiling the benchmarks and running on Vtune amplifier as in Linux. In the previous posts of the same topic, its been said that we have have to do both simultaneously.

Please can you make it clear about this...

Thanks,

Leena

0 Kudos
Peter_W_Intel
Employee
1,322 Views

>> I just have have to choose these binaries as the application file right ? I don't need to do both the things parallely like compiling the benchmarks and running on Vtune amplifier as in Linux

Yes. Just choose the benchmark binary then VTune Amplifier will execute/profile it.

VTune Amplifier is not responsible to compile your benchmark...

0 Kudos
Leena_N_
Beginner
1,322 Views

Hello Peter,

When I start a new project, after naming it, another window opens and it asks to choose the application file. After choosing a binary for that, there is one option below that to choose the application argument. What does it mean ? it says "modify" beside it. 

I want to do analysis for the general exploration. I tried a sample and I could see the result file in which I could get only info about CPI,Clock rate unhalted, LLC, Branch_mispred. but I could not find the rest of the info. 

Please can you tell me correct procedure that I have follow. Because the results what I got was not sufficient.

Regards,

Leena

0 Kudos
Leena_N_
Beginner
1,322 Views

Hello Peter,

When I start a new project, after naming it, another window opens and it asks to choose the application file. After choosing a binary for that, there is one option below that to choose the application argument. What does it mean ? it says "modify" beside it. 

I want to do analysis for the general exploration. I tried a sample and I could see the result file in which I could get only info about CPI,Clock rate unhalted, LLC, Branch_mispred. but I could not find the rest of the info. 

Please can you tell me correct procedure that I have follow. Because the results what I got was not sufficient.

Regards,

Leena

0 Kudos
Peter_W_Intel
Employee
1,322 Views

>> ... there is one option below that to choose the application argument. What does it mean ? it says "modify" beside it. 

You can input arguments of your application, if have. "modify" button assists you to put file or path as arguments - you might use this, if your arguments are strings.

>> I could get only info about CPI,Clock rate unhalted, LLC, Branch_mispred. but I could not find the rest of the info.

Other field with zero data meant that associated events never occurred or less occurred in your application. 

0 Kudos
Leena_N_
Beginner
1,322 Views

Hi Peter,

I could get the result files based on their type of analysis I choose. But I could not find out how to get the value of mico-ops/inst. I selected the cycles & micro-ops option for analysis and tried with all 4 types of select view-point (Hardware data events). I found 0 for micro-ops.retired and other events related to micro-ops. Is there any other way to choose the option ? Please help me with this.

0 Kudos
Peter_W_Intel
Employee
1,322 Views

You may select "Cycles and uOps" analysis, should see result (non-zero) of Hardware Event Counts view-point in column named UOPS_RETIRED.ALL_PS.  Note that one instruction consists of multiple micro-ops...

0 Kudos
David_A_Intel1
Employee
1,322 Views

Actually, the Cycles and uOps analysis type doesn't work on some platforms.  We are moving away from those analysis types and putting more focus on General Exploration.  You should use GE to collect the data and then switch to the Hardware Event Counts viewpoint to look at specific events, such as uOps (depending on the processor and availability of such events).

0 Kudos
Reply