j.w.r.degoede@xxxxxx (Hans de Goede) writes: > I for one am still far from convinced what exactly are those effiecency > gains, numbers please. ok, I executed the following sequence: for i in `seq 0 10`; do for F in ds glibc diet; do echo "$F/$i" ; { time /tmp/tcpsvd.$F 127.0.0.1 1024 ~/tmp/r & } &>/tmp/res.$F.$i ; ~/tmp/s 10000 50 127.0.0.1 1024; killall tcpsvd.$F; wait; done; done which * executes a static dietlibc linked 'tcpsvd.ds' (F=='ds'), a dynlinked dietlibc 'tcpsvd.diet' (F=='diet') and a glibc linked 'tcpsvd.glibc' (F=='glibc') * tcpsvd listens on localhost, port 1024 and executes program ~/tmp/r * ~/tmp/s makes 10000 requests as fast as possible but not more than 50 at the same time * all this will be done 11 times for each $F * results will be stored into /tmp/res.{diet,ds,glibc}.$RUN This gives the following numbers (values of static linked dietlibc are assumed as 100%): user-time: res.ds.* res.diet.* res.glibc.* 0m0.000s(#) 0m0.260s 0m0.356s 0m0.180s 0m0.308s 0m0.344s 0m0.220s 0m0.300s 0m0.348s 0m0.160s 0m0.328s 0m0.364s 0m0.212s 0m0.288s 0m0.404s 0m0.208s 0m0.296s 0m0.332s 0m0.148s 0m0.348s 0m0.280s 0m0.172s 0m0.308s 0m0.304s 0m0.224s 0m0.324s 0m0.292s 0m0.212s 0m0.312s 0m0.368s 0m0.212s 0m0.280s 0m0.352s -------------------------------------- 0m0.195s 0m0.305s 0m0.340s 100% 156% 175% sys-time res.ds.* res.diet.* res.glibc.* 0m0.000s(#) 0m1.516s 0m2.248s 0m1.212s 0m1.748s 0m2.124s 0m1.512s 0m1.412s 0m2.160s 0m1.296s 0m1.672s 0m2.204s 0m1.240s 0m1.764s 0m2.192s 0m1.340s 0m1.748s 0m2.132s 0m1.444s 0m1.716s 0m1.944s 0m1.612s 0m1.720s 0m1.980s 0m1.428s 0m1.808s 0m1.924s 0m1.492s 0m1.804s 0m1.968s 0m1.480s 0m1.640s 0m2.120s -------------------------------------- 0m1.406s 0m1.686s 0m2.090s 100% 119% 149% (#) ... socket was blocked by older process; ignored The 'real' times were omitted because they are having a very high variance; see http://ensc.de/diet/ for the values Comparing static sizes: $ ls -l tcpsvd.{ds,diet,glibc} -rwxr-xr-x 1 ensc ensc 38788 23. Feb 23:28 tcpsvd.diet 100% -rwxr-xr-x 1 ensc ensc 33308 24. Feb 00:26 tcpsvd.ds 86% -rwxr-xr-x 1 ensc ensc 47352 23. Feb 23:29 tcpsvd.glibc 122% $ ps u VSZ RSS VSZ% RSS% ... 132 44 pts/20 S+ 17:05 0:00 /tmp/tcpsvd.ds ... 100% 100% ... 324 160 pts/20 S+ 17:06 0:00 /tmp/tcpsvd.diet ... 245% 364% ... 1636 500 pts/20 S+ 17:14 0:00 /tmp/tcpsvd.glibc ... 1239% 1136% As you can see, the static dietlibc linked application outperforms both the dynamic linked and especially the glibc linked version significantly. Environment: FC4, P4 2.8GHz HT, 1GB RAM The 'r' and 's' programs were built with 'diet -Os gcc ...' and are available at http://ensc.de/diet/r.c and http://ensc.de/diet/s.c Enrico -- fedora-extras-list mailing list fedora-extras-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-extras-list