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

Re: udev performance



Harald Hoyer wrote:
Harald Hoyer schrieb:
44.1% (1,6s) with /sbin/modprobe

modprobe is parsing its configuration/dependency files every time it is called.

12% (0.44s) with 60-net.rules

I am sure 60-net.rules does not have to call /etc/sysconfig/network-scripts/net.hotplug for _every_ "net" event.



A while back I did some experiments with systemtap and found that modprobe was doing a linear search through modules.deps:

http://sourceware.org/ml/systemtap/2007-q1/msg00140.html

I wrote a script that would prepend the modules that are actually used to the beginning of modules.dep to reduce the average length of search. This reduced the amount of data read (and time spent waiting for I/O) and slightly reduced the time to boot the machine. Bootchart samples process state periodically. Below is some of the data extracted from the bootchart samples:

		        all states	D state
            		modprobe    	modprobe
            		samples 	samples
normal    modules.dep    120        	73
reordered modules.deps    63        	27

Having to linearly through 250K of text in modules.dep each time a module is loaded doesn't seem very efficient.


-Will


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