[bf1942] quick server questions

Tim J Shackleton tim at timshackleton.com
Wed Jun 15 16:39:55 EDT 2005


Thanks for that information Andreas.

I was under the impression that the server code for BF2 was going to be
an absolute cycle hog, but my experience so far has been to the
contrary.

Example - I found an old hack machine, a dual Pentium 3 933 Compaq that
was gathering dust, dropped debian 3.1 on it, and the bf2 demo server.
1GB of ram.

Expecting it to choke badly, I got together 16 people to jump on there
and vmstat at no stage indicated the machine had anything less than 85%
idle time.

The players saw no lag, the system remained responsive.  The libc
version is 2.3.2, including linuxthreads0.10 and libthread_db, but not
the native posix stuff.

Before anyone asks, I do have SMP aware binutils ;)

Pretty happy with that.  I'll give people more notice over the weekend
and see what it does with double the players.

-t

On Wed, 2005-06-15 at 16:31 +0200, Andreas Fredriksson wrote:
> On 6/15/05, Luke <luke at techfreak.org> wrote:
> 
> > 1) When launching the 32-bit Linux server TOP shows five instances all
> > using 95MB of RAM. Is this normal?
> 
> These are threads. Older Linux installations use a pthreads layer
> called LinuxThreads which creates additional processes in userland to
> represent threads. These show up as artefacts in proc-utils such as
> top and ps.
> 
> The reason I chimed in is that you will generally see much better performance
> on threaded code if you switch to an NPTL-based thread library (via glibc).
> 
> NPTL-aware proc-utils also have the added advantage of knowing about
> threads and not showing them as processes. NPTL also improves the
> signal handling of LinuxThreads.
> 
> To see whether you're using LinuxThreads or NPTL; execute libc as a binary.
> 
> Here's the output from a machine without NPTL:
> 
> [andreasf at sauron ~]$ /lib/libc.so.6
> GNU C Library stable release version 2.3.5, by Roland McGrath et al.
> Copyright (C) 2005 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.
> There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
> PARTICULAR PURPOSE.
> Compiled by GNU CC version 3.4.3 20050227 (Red Hat 3.4.3-22).
> Compiled on a Linux 2.4.20 system on 2005-04-07.
> Available extensions:
>         GNU libio by Per Bothner
>         crypt add-on version 2.1 by Michael Glad and others
>         linuxthreads-0.10 by Xavier Leroy
>         The C stubs add-on version 2.1.2.
>         BIND-8.2.3-T5B
>         NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
>         Glibc-2.0 compatibility add-on by Cristian Gafton
>         GNU Libidn by Simon Josefsson
>         libthread_db work sponsored by Alpha Processor Inc
> Thread-local storage support included.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/libc/bugs.html>.
> 
> And here is the output from an NPTL-based glibc:
> 
> andreasf at muddy andreasf $ /lib/libc.so.6
> GNU C Library 20041102 release version 2.3.4, by Roland McGrath et al.
> Copyright (C) 2004 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.
> There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
> PARTICULAR PURPOSE.
> Compiled by GNU CC version 3.3.5-20050130 (Gentoo 3.3.5.20050130-r1,
> ssp-3.3.5.20050130-1, pie-8.7.7.1).
> Compiled on a Linux 2.6.8 system on 2005-05-13.
> Available extensions:
>         GNU libio by Per Bothner
>         crypt add-on version 2.1 by Michael Glad and others
>         Native POSIX Threads Library by Ulrich Drepper et al
>         The C stubs add-on version 2.1.2.
>         GNU Libidn by Simon Josefsson
>         BIND-8.2.3-T5B
>         NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk
> Thread-local storage support included.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/libc/bugs.html>.
> 
> I find that many people don't know about NPTL, so that's why I thought I
> would chime in here.
> 
>  // Andreas
-- 




More information about the Bf1942 mailing list