On Fri, Dec 01, 2006 at 10:13:55AM +0100, Bernardo Innocenti wrote:
While I welcome reducing the number of dupe packages, I'm
worried by the impact of this change on the size and
performance of many core programs.
It shouldn't be that bad.
libncurses is much bigger than libtermcap, and also has
oddly large .bss and .data sections:
bender:/[1/0]# size /lib64/libncurses.so.5 /lib64/libtermcap.so.2
text data bss dec hex filename
319006 56608 3592 379206 5c946 /lib64/libncurses.so.5
10483 788 112 11383 2c77 /lib64/libtermcap.so.2
this is going to impact very negatively on the RSS of several
critical programs such as bash and python.
$ ps -o rss,comm
RSS COMMAND
1428 bash_termcap
1480 bash_curses
Not sure it proves anything.
I'm also worried that the overall time required spent for a
fork may increase considerably.
Note that termcap has everything in one big file. A simple program
doing just tgetent() and tgetstr() is significantly faster with
ncurses.
$ time ( a=0;while [ $a -lt 1000 ]; do a=$[$a + 1] && ./testtermcap <
/dev/null &> /dev/null; done )
real 0m2.078s
user 0m1.137s
sys 0m0.936s
$ time ( a=0;while [ $a -lt 1000 ]; do a=$[$a + 1] && ./testncurses <
/dev/null &> /dev/null; done )
real 0m1.464s
user 0m0.496s
sys 0m0.962s
--
Miroslav Lichvar