Intel® ISA Extensions
Use hardware-based isolation and memory encryption to provide more code protection in your solutions.

How Profile a program that have avx instructions

Innocenzo_M_
Beginner
866 Views

Hi, there is a tool or a Visual Studio plugin that give me how many SSE/AVX instructions there are in my code? How many SIMD Instruction I've performed? ecc. ecc. 

 

0 Kudos
6 Replies
Bernard
Valued Contributor I
866 Views

One of the best tools for profiling SSE/AVX code is Intel VTune. You can also look at disassembled code and check for AVX machine code instructions.

 

0 Kudos
Bernard
Valued Contributor I
866 Views

@Innocenzo,

Have a look at this Intel presentation: http://www.gdcvault.com/play/1014645

0 Kudos
Bernard
Valued Contributor I
866 Views

Can you read this paper: https://software.intel.com/sites/default/files/article/394181/using-intel-vtune-amplifier-xe-on-4th-generation-intel-core-processors.pdf

0 Kudos
McCalpinJohn
Honored Contributor III
866 Views

The floating-point arithmetic counters are disabled on Haswell processors -- perhaps because of accuracy problems with these events on Sandy Bridge and Ivy Bridge cores.  One of these days I will find a Broadwell or Skylake system to check the new floating-point counters that have been added on those processors.

0 Kudos
Bernard
Valued Contributor I
866 Views

Theoretically you can count AVX machine code instructions which are executed and that way you asses how many GFLOPs were achieved. Of course this will be crude approximation of real result.

0 Kudos
Bernard
Valued Contributor I
866 Views

Yes I know that. For simple loops like accumulation of variable it will work, but for complex nested loops with embedded control statement it will be hard and not accurate task.

0 Kudos
Reply