JanitorTechnology / dockerfiles

popular development environments as containers
https://hub.docker.com/u/janitortechnology/
53 stars 20 forks source link

[ubuntu-dev] install perf #188

Open jankeromnes opened 6 years ago

jankeromnes commented 6 years ago

Installing Linux's perf tool could be useful to benchmark various software.

I was able to install it in a container by doing this:

sudo apt-get update -q
sudo apt-get install -qy linux-tools-generic
cd /usr/lib/linux-tools
cd `ls -1 | head -n1`
sudo rm -f /usr/bin/perf
sudo ln -s `pwd`/perf /usr/bin/perf

Note: By default, apt installs a dumb bash script in /usr/bin/perf which totally fails to find the perf binary that was installed at the same time. This is why I replace it with a direct symbolic link (also, I pick the first available folder in /usr/lib/linux-tools, which is a bit hacky).

Alternatively, we may want to build and install a more recent perf from source (it's fairly easy, and we have to hack Ubuntu's installation anyway).

Also maybe it would be cleaner to add the installed linux-tools folder to the path instead of creating a symlink.

jankeromnes commented 6 years ago

Cc @whimboo

jankeromnes commented 6 years ago

Building from source should be much better (no need for Ubuntu's broken script and kernel-specific packages, latest stable perf should work great with any kernel).

I'd also like to know if perf is actually useful for projects like Firefox, in which case we'd definitely want to install it.

whimboo commented 6 years ago

Might be worth asking in the mozilla.dev.platform mailing list.

ishitatsuyuki commented 6 years ago

On OVH1, you have to switch to the stock (non-OVH) kernel so we can install a correct version of perf tools.