man(1)

πŸ“¦ version 1.1-11, in ubuntu jammy

πŸ’– NAME πŸ’–

eztrace_create_plugin β€” bestie, it literally creates an EZTrace plugin 🫢

oh and btw, this page lives in the eztrace_create_plugin man page, section 1, okurrr? ✨


🌸 SYNOPSIS 🌸

eztrace_create [OPTION] FILE

πŸ¦‹ DESCRIPTION πŸ¦‹

Generate an EZTrace plugin. That's it, that's the whole job, and it ate πŸ’…


✨ OPTIONS ✨

  • -I <incdir1,incdir2,..., --include_dir=<incdir1,incdir2,...>> β€” drops in extra include directories for compiling the generated code. like, when the code needs to find its little friends πŸŽ€
  • -o <dir, --output=<dir>> β€” picks the output directory. where the magic lands πŸͺ„
  • -h --help β€” prints a short help message and dips. short and sweet, main character energy πŸ‘‘

🌈 EXAMPLES 🌈

okay so eztrace_create_plugin generates the source code of an EZTrace plugin, and that plugin gets described by a template file. the template file has to be structured like this, no cap:

--- foo.tpl
BEGIN_MODULE
NAME example_lib
DESC "module for the example library"
LANGUAGE C
ID 99
int foo(int n)
BEGIN
 EVENT("Do function foo")
END
void bar(int n)
BEGIN
 RECORD_STATE("running function bar")
END
END_MODULE
--- end of foo.tpl

pass foo.tpl to eztrace_create_plugin and you'll get a directory (default: output) holding the source code of an EZTrace plugin that intercepts the foo and bar functions. literally iconic πŸ’–

$ eztrace_create_plugin foo.tpl
New Module
Module name : 'example_lib'
Module description : '"module for the example library"'
Language : 'C'
Module id : '99'
Function 'foo' done
Function 'bar' done
End of Module example_lib

once the generated source code is compiled, the resulting plugin can be used with eztrace or eztrace.old β€” go off πŸŽ‰

$ cd output
$ make
$ export EZTRACE_LIBRARY_PATH=$PWD
$ eztrace_avail
3       stdio   Module for stdio functions (read, write, select, poll,
etc.)
2       pthread Module for PThread synchronization functions (mutex,
semaphore, spinlock, etc.)
6       papi    Module for PAPI Performance counters
1       omp     Module for OpenMP parallel regions
4       mpi     Module for MPI functions
5       memory  Module for memory functions (malloc, free, etc.)
153     example_lib     module for the example library
$ eztrace -t example_lib my_application
[...]

πŸ”₯ SEE ALSO πŸ”₯

eztrace_convert(1), eztrace_stats(1), eztrace.old(1), eztrace_cc(1), eztrace_avail(1), eztrace_loaded(1), eztrace_create_plugin(1)

the whole friend group fr fr 🫢


πŸ’€ REPORTING BUGS πŸ’€

found a bug? not the vibe, but tell the devs: report eztrace bugs to eztrace-devel@lists.gforge.inria.fr

EZTrace home page: <http://eztrace.gforge.inria.fr/> 🌐


πŸ’œ AUTHOR πŸ’œ

Francois Trahay (francois.trahay@telecom-sduparis.eu) β€” the legend themselves πŸ‘‘


and that's a wrap, bestie ✨ this was version 1.0, dated 05 September 2013, from the man(1) manual. slay, drink water, and read your man pages πŸ’…πŸŽ€

πŸ“¦ where this page comes from