Messages in this thread | | | Date | Fri, 12 Mar 2004 14:44:58 -0600 | From | Matt Mackall <> | Subject | Bloat report 2.6.3 -> 2.6.4 |
| |
I'm working on an automated scheme to measure the growth of the kernel from release to release. The current methodology is to do comparisons from x to y, with the default config for x in both cases. This is automated with bloat-o-meter from linux-tiny and my kpatchup script (http://selenic.com/kpatchup) plus a couple glue scripts. I intend to post these reports regularly with new releases so comments on improving the content are appreciated.
Here's a current sample report [with some explanatory comments interspersed].
2.6.3 -> 2.6.4
text data bss dec hex filename 3313135 660247 162472 4135854 3f1bae vmlinux-2.6.3-c2.6.3 3342019 664154 162344 4168517 3f9b45 vmlinux-2.6.4-c2.6.3
[ Results of size <a> <b>. -c2.6.3 means both kernel images were built with the 2.6.3 defconfig. The dec column tells us that the 2.6.4 kernel image has grown by almost 1% in one release. Output from bloat-o-meter follows.]
add/remove: 241/88 grow/shrink: 380/265 up/down: 44772/20838
[ A quick summary of modifications. 241 new symbols in 2.6.4, 88 disappeared, 380 functions grew, 265 shrank, and total growth and shrinkage of listed symbols]
[ Next we list the growth and shrinkage of given functions, sorted by delta. Symbols that aren't present in a given version are reported as - and treated as size zero. I'm currently only listing the top 15 gainers and decliners in the report to keep things manageable, though bloat-o-meter will generate a complete list. ]
function old new delta n_tty_receive_buf 1991 4450 +2459 _csr1212_read_keyval - 1253 +1253 hpsb_allocate_and_register_addrspace - 1139 +1139 iso_stream_schedule - 820 +820 do_shmat - 767 +767 csr1212_append_new_cache - 519 +519 csr1212_generate_csr_image - 510 +510 iso_stream_init - 505 +505 csr1212_new_icon_descriptor_leaf - 409 +409 early_serial_init - 398 +398 inet_confirm_addr - 374 +374 csr1212_parse_dir_entry - 350 +350 setup_early_printk - 349 +349 do_unblank_screen - 348 +348 csr1212_generate_tree_subdir - 342 +342 ... iso_stream_find 495 199 -296 parport_parse_params 321 - -321 parport_setup 749 419 -330 itd_stream_schedule 342 - -342 nodemgr_read_text_leaf 348 - -348 rpc_proc_read 350 - -350 svc_proc_read 361 - -361 read_businfo_block 436 - -436 nodemgr_scan_root_directory 470 - -470 acpi_boot_init 684 157 -527 nodemgr_scan_unit_directory 541 - -541 ide_end_taskfile 589 - -589 sys_shmat 767 - -767 ohci_init_config_rom 955 - -955 n_tty_receive_char 2037 - -2037
[ Note that renames like sys_shmat to do_shmat show up in the top and the bottom. ]
-- Matt Mackall : http://www.selenic.com : Linux development and consulting - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |