Subject: Re: RFC: migration to a fully dynamically linked system
To: None <>
From: R. C. Dowdeswell <>
List: tech-userlevel
Date: 12/30/2001 18:52:43
On this thread a few people have made some assertions about the
performance impact of shared object libraries, but we haven't
actually started discussing numbers.  I thought that to start the
discussion, we should consider /bin/sh using lmbench on a couple
of machines both statically and dynamically linked.

I have run the experiment on two systems, my lapdog which is a Sony
Vaio PCG-Z505LS and an AlphaStation 200 4/233.  A bit more information
about the machines:

	Model:		Sony Vaio PCG-Z505LS
	CPU:		Pentium III Mobile 750MHz
	RAM:		256MB
	OS:		NetBSD 1.5ZA

	Model:		AlphaStation 200 4/233
	CPU:		Alpha 21064A 233MHz
	RAM:		80MB
	OS:		NetBSD 1.4.2_ALPHA

Results of `/usr/pkg/bin/lmbench/lat_proc shell' a few times:

		static		dynamic
Lapdog:		4134.0000	5979.0000
		4161.0000	5975.0000
		4102.5000	5984.0000
		4024.0000	5962.0000
		4019.0000	5978.0000

Workstation:	37961.0667	59417.8889
		38282.1071	59202.7222
		38296.2000	60216.8889

So, for preliminary results, it would seem that there is a
potentially significant performance impact to this change
that should be examined.


1.	Please note that I am not expressing either a desire for
	a statically linked or a dynamically linked root partition.

2.	I built the dynamically linked shell simply by:

	$ cd src/bin/sh
	$ vi ../
	GI# ^[ZZ
	$ make cleandir
	$ make depend
	$ make all
	$ su
	# make install

	This is not necessarily indicative of the actual performance
	of any of the proposed ideas.

3.	The shell was built from a cvs checkout from a basically
	random time [and different time] on both machines.

 == Roland Dowdeswell                      http://www.Imrryr.ORG/~elric/  ==
 == The Unofficial NetBSD Web Pages        http://www.Imrryr.ORG/NetBSD/  ==
 == The NetBSD Project                            http://www.NetBSD.ORG/  ==
 == Ponte, Inc.                            ==