RE: Thread implementations...

Rik van Riel (H.H.vanRiel@phys.uu.nl)
Thu, 25 Jun 1998 19:51:17 +0200 (CEST)


On Thu, 25 Jun 1998, Amsden, Zachary wrote:

> Possibly. But according to Squid's own doc, the primary problems
> in Squid performance are
>
> 1) Not enough memory

Can indeed be alleviated by sendfile()...

> 2) Too slow disks

With a filesystem that can't handle the extreme dir sizes
that Squid uses. ReiserFS or another advanced filesystem
will speed up this bottleneck by more than just a considerable
amount...

> which as far as I can see aren't helped by sendfile. They also
> say "CPU limitations are rarely encountered except in very large
> caches".

This situation is also better handled by tree-based filesystems
and better buffer/cache administration.

> But too slow disks and not enough memory are directly
> related problems. If the kernel has frequently used
> disk files in the buffer cache, it still needs to copy
> the data to the user space server, then copy it back
> out onto a socket. With sendfile(), it can directly
> send data from the buffer cache without any user space
> involvement. In addition, we no longer need user
> space buffers in the server, cutting down on useless
> "memory duplication", allowing for more buffer cache.

This is very very true and might be able to speed up
large servers quite a lot.

Rik.
+-------------------------------------------------------------------+
| Linux memory management tour guide. H.H.vanRiel@phys.uu.nl |
| Scouting Vries cubscout leader. http://www.phys.uu.nl/~riel/ |
+-------------------------------------------------------------------+

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu