[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#202835: /lib/libc-2.3.1.so: Want i686 optimized build



On Fri, 2003-07-25 at 16:49, Jeff Bailey wrote:
> On Fri, Jul 25, 2003 at 03:39:34PM +0200, Johan Walles wrote:
> 
> > I would like to have an i686 optimized glibc package.  The reason is
> > glibc is what is taking up the most time (23%) during my boot
> > sequence:
> 
> Can you contrast this against an i686-optimised version of glibc? 

I built a libc configured using the following command line:

CC=gcc-3.2 CFLAGS="-finline -fno-inline-functions -march=i686 -O2
-fno-strict-aliasing" ./configure --enable-add-ons=../linuxthreads/
--prefix=/tabort --enable-kernel=2.4.20

All libs in /tabort/lib are from that build.

Overview:

1675       2.1674  0.0000 /usr/lib/bubblemon/bubblemon-gnome2
2048       2.6501  0.0000 /bin/bash
2546       3.2945  0.0000 /usr/X11R6/bin/XFree86
5193       6.7197  0.0000 /tabort/lib/libpthread-0.10.so
6076       7.8623  0.0000 /usr/bin/perl
10361     13.4071  0.0000 /lib/ld-2.3.1.so
12331     15.9563  0.0000 /usr/src/kernel-source-2.4.20/vmlinux
16312     21.1077  0.0000 /tabort/lib/libc-2.3.1.so

The total boot time has gone down by three and a half percent, from
roughly 8000000 samples to 773000 samples.  The largest contributors
seem to be libc and libpthread.

The libc numbers are as follows:

000759f0 330      2.04246     __cfree
000792f0 414      2.56236     index
0006ae90 436      2.69852     getc
0007c0b0 441      2.72947     memset
00057e40 522      3.2308      _IO_vfscanf_internal
00075830 552      3.41648     __malloc
0007c6f0 640      3.96113     memcpy
00076670 1244     7.69945     _int_malloc
00079460 1603     9.9214      strcmp
0007c020 3521     21.7924     memmove

Inside of libc, strcmp(), memcpy(), __malloc() and
_IO_vfscanf_internal() have all improved notably.  memmove() on the
other hand actually seem to do worse now (both as an absolute time and
as a percentage).

  Cheers //Johan




Reply to: