ParaToolsInc / taucmdr

Performance engineering for the rest of us.
http://www.taucommander.com
Other
29 stars 11 forks source link

10. Symbolication support for Mac #300

Open khsa1 opened 6 years ago

khsa1 commented 6 years ago

We need to test TAU Commander on the Mac with the new Symbolication support that is now part of TAU and see that we don’t build with -bfd=download on the Mac. I think this is the case, but we just need to verify that MPI and TAU work well with Mac. I recall seeing some issues with -opencl on the Mac with -framework opneCL that we should test.

zbeekman commented 5 years ago
  1. From Sameer's email
zbeekman commented 5 years ago

See also #235

zbeekman commented 5 years ago

Note to self: symbolication = translating addresses to function names

libbfd doesn't work on mac because mac is MACHO not elf.

Man sure we don't build with bfd. Use apple's built in symbolication library which is completely undocumented.... guess and hope for the best. It seems to work.

zbeekman commented 5 years ago

Apple doesn't put debug symbols into executable itself, but creates a separate directory along side and puts debug info there. Private framework internally used by apple to generate call stacks. core-symbolication framework. No headers available.

https://github.com/mountainstorm/CoreSymbolication

zbeekman commented 5 years ago

Note: on macOS the configure line for TAU is being passed compilers as /usr/bin/gcc and /usr/bin/g++ which are NOTE GNU compilers, but Apples llvm versions. The logic of how the compiler is picked for configuring and building TAU/PDT should be examined for this. Passing --source-inst never causes only a baseline measurement to be built & generated which can be helpful to get around this without having a completely bare initialization.