Vtune Amplifier for shared library file

Vtune Amplifier for shared library file


Iwant to profile the shared library using the Vtune Amplifier XE 2011,it is only allow me to analyse for applcation,

is their any parameter availble to analyse the shared library?

please help

publicaciones de 8 / 0 nuevos
Último envío
Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.
Imagen de vladimir-tsymbal (Intel)

Hello,Once it's linked to an executable your shared library will be analysed by the tool as well. You just need to filter out your module in the results.


I need to get the time consumed by each function which is avilable in the shared library file,is there possible by the vtune amplifier XE tool to capture the time taken by each function in shared library(by using the Hot spot metric i can only able to get the maximum time consumable function but i need to get time consumed by all functions)?

please help

Imagen de Peter Wang (Intel)

You may use like "amplxe-cl -collect lightweight-hotspots -analyze-system -- application args"You can get all time spent of each function in shared module, "amplxe-cl -report hotspots -group-by function -filter
module=module-name"You can get all time spent of each function in shared modue in your process only, "amplxe-cl -report hotspots -group-by function -filter
module=module-name -filter process=process-name"Regards, Peter

Hi peter,
Thanks for your reply,
i need one more informantion,by using the command "amplxe-cl -report hotspots -group-by function -filter module=module-name -filter process=process-name" i can list out few of the maximum CPU time consuming functions only,(around top 20 function);i cant able to get the remaining or least time consuming function from my shared library(or all the functions availble in the shared library).

or Is it possible to get the profiling information by using the tool "gprof" in Vtune amplifier XE?

thanks in advance.

Imagen de Peter Wang (Intel)

Hereare steps in my example:

1. Data collection
# amplxe-cl -collect lightweight-hotspots -analyze-system -- ./primes.icc

2. Findall hot functions (look for your interest in shared library)
# amplxe-cl -report hotspots -group-by function
Using result path `/home/peter/problem_report/r000lh'
Executing actions 75 % Generating a report
Function Module CPU Time
------------------------------------------ ------------------------------ ---------
findPrimes primes.icc 2.354
do_wp_page vmlinux 0.665
acpi_processor_get_throttling_info vmlinux 0.301
[Xvnc] Xvnc 0.005

3. Find that hot function in specific shared library inyour process
# amplxe-cl -report hotspots -group-by function -filter module=vmlinux -filter process=primes.icc
Using result path `/home/peter/problem_report/r000lh'
Executing actions 75 % Generating a report
Function Module CPU Time
----------------------------------- ------- ---------
do_wp_page vmlinux 0.005
__mutex_lock_interruptible_slowpath vmlinux 0.0007519
level2_spare_pgt vmlinux 0.0007519
memset_c vmlinux 0
sys_time vmlinux 0
tcp_rtt_estimator vmlinux 0
Executing actions 100 % done

If you can't find such hot functionin your process, it means that workload of that function is tiny in your process.

P.S> You could not use "gprof" in VTune, but you can output VTune resultin gprof format: e.g.
amplxe-cl -report gprof-cc


thanks for your reply,

one of the function in my shared lib consumes around 8 microsec,i further need to optimize the time consumption of the function,is that possible by Vtune amplifier XE?


Imagen de Peter Wang (Intel)

Usually we use VTune Amplifier XE to find hotspots, code concurrency, and dig out why performance is low by viewing source code / assembly code annotated with performance data.

Using Intel Compiler's advance options, changing algorithm, modifying code - they will optimize the time consumption of the function. Absolutely we can use VTune toverify results, again.

Regards, Peter

Inicie sesión para dejar un comentario.