Thanks for the quick response, appreciate it.

At a high level this is what I did.
  1. reboot
  2. login as sudo
  3. set LD_LIBRARY_PATH to point to right locations
  4. ldd of executable to show right library versions are picked up
  5. execute the workload by specifiy LD_PRELOAD env variable
  6. expect to see a trace file in my $HOME/ltt* directory
When I say FAIL, I mean that there was no trace file in my home directory ~/lttng*

I read - https://lttng.org/man/3/lttng-ust-cyg-profile/v2.12/
I didn't read - https://lttng.org/docs/v2.12/#doc-liblttng-ust-cyg-profile

I have not run any lttng commands besides what I already gave. If they are needed, I don't know what they are.

I tried experimenting with lttng commands create and list. The command to list "traceable" points returned an error as included below.

root@RocrLnx23:~/git/compute/out/ubuntu-18.04/18.04/bin# ls ~/ | grep -i ltt
root@RocrLnx23:~/git/compute/out/ubuntu-18.04/18.04/bin# lttng create my-kernel-session --output=~/my-kernel-trace
Session my-kernel-session created.
Traces will be output to /home/user1/git/compute/out/ubuntu-18.04/18.04/bin/~/my-kernel-trace
root@RocrLnx23:~/git/compute/out/ubuntu-18.04/18.04/bin# lttng list --kernel
Error: Unable to list kernel events: Kernel tracer not available
root@RocrLnx23:~/git/compute/out/ubuntu-18.04/18.04/bin# 

A grep for lttng related processes shows me a daemon service running.

root@RocrLnx23:~/git/compute/out/ubuntu-18.04/18.04/bin# ps -ef | grep ltt
root      1002     1  0 12:16 ?        00:00:00 /usr/bin/lttng-sessiond
root      1054  1002  0 12:16 ?        00:00:00 /usr/bin/lttng-sessiond
root      3145  2861  0 12:51 pts/0    00:00:00 grep --color=auto ltt
root@RocrLnx23:~/git/compute/out/ubuntu-18.04/18.04/bin# 

Regards,
Ramesh


On Wed, Mar 31, 2021 at 12:42 PM Jonathan Rajotte-Julien <jonathan.rajotte-julien@efficios.com> wrote:
Hi,

On Wed, Mar 31, 2021 at 10:51:03AM -0500, Ramesh Errabolu via lttng-dev wrote:
> I am trying to capture the list of functions being called by an app. The
> app relies on a couple of shared libraries (libhsa-runtime64.so and
> libhsakmt.so).

ok.

>
> My experiments all *FAIL *i.e. there are no log files of the output.

Not sure what you mean here. But let's continue first.

> The
> link on lttng-ust-cyg-profile does not tell me where I can get them.

Could you share the "link" in question?

> Instrument the build files for the two libraries to allow function tracing
> by the gcc/clang flags -finstrument-functions and run workload as follows
>
>    - Instrument the build files for the two libraries to allow function
>    tracing by the gcc/clang flags *-finstrument-functions* and run workload
>    as follows

Okai. I expect that you have read this:
https://lttng.org/docs/v2.12/#doc-liblttng-ust-cyg-profile

and this
https://lttng.org/man/3/lttng-ust-cyg-profile/v2.12/

> I am using LTTng version Ubuntu: LTTng Stable 2.12 PPA
>
>    - apt-get install lttng-tools
>    - apt-get install lttng-modules-dkms
>    - apt-get install liblttng-ust-dev
>

Looks good.

> I noticed no kernel modules with substring "ltt" in it.

Okai so this is where we need much more information.

First of all, what are the lttng commands used for your experiments? (lttng create, lttng enable-channel, lttng enable-event...)
Please provide a sample script of your experiments.

Second, you are mostly performing userspace tracing here, lttng-modules ( the
kernel tracer) might not even be needed here unless you also want to do kernel
tracing.

What do you mean by "there are no log files of the output."? LTTng produces
traces encoded in CTF (Common Trace Format) that must be read by a reader
(Babeltrace most of the time).

Cheers

--
Jonathan Rajotte-Julien
EfficiOS