[pacman-dev] CVS update of pacman-lib/lib/libalpm (conflict.c)

Dan McGee dpmcgee at gmail.com
Wed Feb 14 01:30:55 EST 2007


So in case you guys were curious, we used 'valgrind --tool=callgrind'
to find some of these huge overuses of functions in the code. Between
Aaron's changes and mine we reduced the calling of strcmp during a
particular sync operation from at least 16 million calls to around 460
thousand.

Here is what that looks like in kcachegrind:
<http://www.archlinux.org/~dan/before_after.png>. The before is on the
left, and you can see the huge block (representing time) devoted to
strcmp. This block is non-existant on the right side in the fixed
version.

We haven't found any more of these, but if anyone else wants to tinker
and monitor their pacman operations using callgrind (it does make it
run significantly slower), go for it. If you notice something like we
did with setlocale and strcmp taking overdue amounts of time, then let
us know.

-Dan




More information about the pacman-dev mailing list