[Toybox] request for comments: pybloat.py
Tim Bird
tim.bird at am.sony.com
Tue Feb 21 14:10:13 PST 2012
On 02/20/2012 06:04 PM, Rob Landley wrote:
> On 02/15/2012 04:22 PM, Elie De Brauwer wrote:
>> Well, I promised a version which just uses getopt, and this one I tested
>> with python 2.6, so see attach. Next point is whether to send it
>> completely to /dev/null, or to modify it if needed to fit our needs (as
>> said comments welcome).
>
> I made a stab at it in bash (attached). Opinions?
It's cool that it's in bash. The delta column is not sorted.
You can get the final order to match bloat-o-meter by piping the result to
'sort -rn -k4,4'. It would be better to do this sort before emitting
the header and footer, obviously.
I'm not sure if it's worth it to replace '0' with '-', to match bloat-o-meter,
but that's probably easy with sed, if desired.
Below is the output for a kernel I was working with,
from both tools:
$ /home/tbird/work/toybox/blinky.sh vmlinux vmlinux-kdb
name old new delta
-----------------------------------------------------------------------
add_swap_count_continuation 0 368 368
add_swap_extent 0 376 376
add_to_swap 0 100 100
__add_to_swap_cache 0 300 300
add_to_swap_cache 0 4 4
Bad_file 0 21 21
Bad_offset 0 23 23
block_sync_page 60 84 24
clear_page_dirty_for_io 360 384 24
copy_page_range 1180 1280 100
__create_page_tables 208 156 -52
__delete_from_swap_cache 0 176 176
delete_from_swap_cache 0 68 68
destroy_swap_extents 0 72 72
discard_swap_cluster 0 200 200
do_sysinfo 240 276 36
do_wp_page 0 1856 1856
early_console 56 0 -56
early_console_write 12 0 -12
early_printk 68 12 -56
early_write 60 0 -60
...
wait_for_discard 0 16 16
zone_reclaimable_pages 16 52 36
-----------------------------------------------------------------------
21488 total
$ bloat-o-meter vmlinux vmlinux-kdb
add/remove: 103/15 grow/shrink: 51/11 up/down: 25008/-3682 (21326)
function old new delta
sys_swapon - 3308 +3308
sys_swapoff - 2724 +2724
shrink_zone 516 2732 +2216
do_wp_page - 1856 +1856
get_swap_page - 1264 +1264
get_swap_page_of_type - 1120 +1120
...
kernel_config_data 10995 10912 -83
__error_p 88 - -88
shmem_unuse 1044 952 -92
__error_a 108 - -108
handle_mm_fault 2924 1948 -976
static.shrink_inactive_list 1804 - -1804
=============================
Tim Bird
Architecture Group Chair, CE Workgroup of the Linux Foundation
Senior Staff Engineer, Sony Network Entertainment
=============================
More information about the Toybox
mailing list