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

Vtune Amplifier for shared library file

karthik_siva
Beginner
549 Views
Hi,

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
0 Kudos
7 Replies
Vladimir_T_Intel
Moderator
549 Views
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.
0 Kudos
karthik_siva
Beginner
549 Views
HI,
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
0 Kudos
Peter_W_Intel
Employee
549 Views
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
0 Kudos
karthik_siva
Beginner
549 Views
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.
0 Kudos
Peter_W_Intel
Employee
549 Views

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

Regards,Peter

0 Kudos
karthik_siva
Beginner
549 Views
Hi,
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?


thanks.
0 Kudos
Peter_W_Intel
Employee
549 Views
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
0 Kudos
Reply