way cool: linux fork speed

Dean Gaudet (dgaudet-list-linux-kernel@arctic.org)
Tue, 22 Apr 1997 14:27:09 -0700 (PDT)


Just something I had to share... I just completely rewrote apache's
restart signal handling, to finish the "graceful restart" option that
doesn't toss connections in progress while restarting (they clean up after
they finish and notice that the generation counter is different). One of
my tests is a "while 1 kill -USR1" loop (USR1 is the graceful restart
signal).

On a rather heavily loaded dual-p133 linux 2.0.30 system I was getting 10
to 15 restarts per second. Last night under less load I saw it do 25
restarts in a second.

On a completely unloaded Ultra 2 running solaris 2.5.1 I could only get 8
restarts per second.

That's an impressive statement on linux's fork() speed, which is the major
cost in these restarts (along with killpg(), and cleaning up the
children).

Dean

P.S. I think people will like this new restart code... even while
restarting it 10 times per second I was able to surf the site in question
without broken links, and a 40Mb .mov file kept on coming without
interruption.