Hi,
Did you try to write a pyperf benchmark and run it with:
$ MEMORY_PROFILER_LOG=warn LD_PRELOAD=./libbytehound.so python3 mybench.py -o -v --inherit-environ=MEMORY_PROFILER_LOG,LD_PRELOAD
By defauly, pyperf removes most environment variables, you should have explicitly specify which ones are inherited.
pyperf spawns ~20 processes.
Does it work?
Victor
On Mon, Feb 7, 2022 at 9:00 PM Christos P. Lamprakos cplamprakos@microlab.ntua.gr wrote:
Hi there,
I apologize in advance for any potential dumbness in my question.
bytehound is a cool profiler that works like this:
$ export MEMORY_PROFILER_LOG=warn $ LD_PRELOAD=./libbytehound.so ./your_application
What I'm after is to plug it in every run of the benchmarks in pyperformance. It seems like the steps to achieve this are:
Fork pyperf, since it is the actual benchmark-running engine. Modify pyperf so as to make command prepending possible somehow. Install this modified pyperf. Install pyperformance on top of the modified pyperf.
I do not have the knowledge or experience to tackle step 2 on my own. Could I have your opinion on the whole endeavor, and maybe some advice?
Thanks a lot, Christos Lamprakos
Speed mailing list -- speed@python.org To unsubscribe send an email to speed-leave@python.org https://mail.python.org/mailman3/lists/speed.python.org/ Member address: vstinner@python.org
-- Night gathers, and now my watch begins. It shall not end until my death.