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

Re: Software For Book Writing



On Tue, Nov 11, 2008 at 05:42:00PM -0500, Douglas A. Tutty wrote:
> On Tue, Nov 11, 2008 at 07:57:15AM +0100, NN_il_Confusionario wrote:
> > Surprisingly, from a very limited test on beige G3 mac machines (the
> > above tests were instead on a pentium mmx 200 machine), I expect that
> > lenny should NON be slower than etch or sarge (for console only use and
> > with the tunings above), provided that the ram (and disk space) is
> > sufficient.
> 
> There also seems to be a problem with the ideal of "provided that the
> ram is sufficient".  A direct comparison would be with identical ram.

The above comparation between sarge and lenny was on the same beige G3
machine wih 256Mb of ram (I dist-upgraded from sarge to etch to lenny). 

Also the comparation between OpenBSD 4.4, FreeBSD 7.1-BETA2 and lenny
was on the same machine: p200mmx cpu, 192Mb ram, 20GB ide HD with mbr
partitions (slices) of 4Gb for each system, plus ext2 partitions for
data exchange. Be warned that OpenBSD does _not_ support ext2
filesystems with "modern" features turned on (see [defaults] in
/etc/mke2fs.conf), and I am not speaking about the journal which can be
easily disabled.

Sure, a basic console woody on a p166 with 96 Mb ram is noticeably
faster than all the above systems. If you have saved Bunk's additional
packages from woody's times, you can even run a 2.6 kernel with woody
(or a 2.2 or a 2.4 kernel. I have not checked potato's 2.0.38 kernel or
a true 386 with woody, but given the versions of glibc and gcc in woody,
and the fact that debian permits dist-upgrades with the kernel of the
previous distribution, I suspect that they might still work).

Note that I do not use C++ programs, except apt* when needed, and that
my (non-server) installs do not run at startup cron or a smtpd o inetd
or atd or ... Obviously udev, hal, fam, hotplug, and the like do not
even exist on my disks. However I tried running together sshd, pdnsd and
thttpd with no problems on all the above systems (except woody). 

On both the G3 and the p200mmx I even once tried 

startx /usr/bin/evilwm -- -depth 16  

and then from a xterm I started denemo, audacity, xpdf, xdvi, qiv,
links2, dillo, w3m(-img). 

All them seemed (not amazingly fast, but perfectly) usable and about the
same speed on lenny and FreeBSD. No X is installed in my OpenBSD, which
moreover does not have all the above precompiled packages. 

No deep test was done, however.

> don't know how much ram Lenny's installer will need.

I do not know either, but the install manual usually has such
information.

I do not use the debian installer; I used it only in old times when
debootstrap did not exist, and I use it for the first install on a new
architecture when I have no disc to copy an existing, already
customized, install from nor a live system to use debootstrap from.

Oldworld macs do not have a free way to boot from cd, so I had to use
the debian floppy installer (with all the legal problems of miboot) of
sarge, when it was still testing. A true pain since it is no more the
simple linear installer that was at debian 1.1 times, and which OpenBSD
still is. 

>  Etch's needed more
> than 32 MB but 64 MB was barely adequate.  I just installed Etch on a
> box with 96 MB, base install only, then ran top in one VT with aptitude
> in another.  I noticed during package install that dpkg hits swap.

My guess is that aptitude is using so much ram that anything will hit
swap. However, apt-get uses less memory and a different dependency
resolution algorithm which I prefere: with apt-get I am able to have
much more control at the expense of more, but not so much more, work.

Since sarge, the number of packages that exist in debian (and the fact
that apt* is written in C++, and the fact that the compiler is no more
gcc 2.x, and unicode support, and a bigger libc*, and libselinux/whatever
incuded in the base system, and ...) makes apt* noticeably slow on old
hardware, even when the ram is sufficient to avoid using swap. A bigger
number and size of files might also have its role by eating ram used for
disk cache.

Moreover, I suspect that Linux kernels post 2.2.x have default internal
optimizations which make them better adapted to systems with more ram,
but I suspect also that tuning of Linux for small memory systems is
still possible. But possibly not with the 2.6.x precompiled debian
kernel (and surely not in pure lenny which is without yaird and so has
huge initrd even containing udev, unless one uses yaird from sid as I
do).

> At some point I'll put OpenBSD 4.4 on that box and see what happens with
> pkg_add.

I can assure you that pkg_add does not have such a slowness problem.
None of the above reasons for slowenwss apply, plus the fact that only
very simply minded dependencies (like slackware) are used, not the
refined debian-style dependencies. 

However, when installing with dpkg only a single manually downloaded
package, dpkg is still reasonably "fast" (but in mean sligtly slower
than pkg_add since it could run many more installation scripts with more
pre/post installation phases. And in lenny also triggers ...). 

apt* are usable, but only with patience, and this since sarge times. The
amount of needed patience has grown in etch and then in lenny, but the
required amount is still reasonable. The only really unreasonable cases
are some _rare_ "intelligent" dependency resolutions by aptitude.

FreeBSD pkg_add is roughly of the same kind as OpenBSD and dpkg, but
with portupgrade and the like we are roughly back to debian's apt*
improved features and decreased speed (but even the slow aptitude is
much faster at rebuilding its cache in comparation to portupgrade).

###

What follows is the output of some commands on lenny on p200mmx as above,
inmediately after boot:

# ps fauxwww
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         2  0.0  0.0      0     0 ?        S<   07:15   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [ksoftirqd/0]
root         4  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [watchdog/0]
root         5  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [events/0]
root         6  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [khelper]
root        43  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [kblockd/0]
root        65  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [kseriod]
root       106  0.0  0.0      0     0 ?        S    07:15   0:00  \_ [pdflush]
root       107  0.0  0.0      0     0 ?        S    07:15   0:00  \_ [pdflush]
root       108  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [kswapd0]
root       109  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [aio/0]
root       309  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [ata/0]
root       310  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [ata_aux]
root       353  0.0  0.0      0     0 ?        S<   07:15   0:00  \_ [kjournald]
root       588  0.0  0.0      0     0 ?        S<   07:16   0:00  \_ [kpsmoused]
root       604  0.0  0.0      0     0 ?        S<   07:16   0:00  \_ [kstriped]
root       611  0.0  0.0      0     0 ?        S<   07:16   0:00  \_ [ksnapd]
root         1  1.0  0.0    164    92 ?        Ss   07:15   0:02 init [2]  
pdnsd      727  0.0  0.3  34860   652 ?        Sl   07:16   0:00 /usr/sbin/pdnsd --daemon -p /var/run/pdnsd.pid -c /usr/share/pdnsd/pdnsd-recurse.conf
root       887  0.0  0.1    896   212 tty12    Ss+  07:16   0:00 /bin/sash
root       894  0.1  0.6  27120  1332 ?        Sl   07:16   0:00 /usr/sbin/rsyslogd -c3
root       909  0.5  0.5   5192  1144 ?        Ss   07:16   0:00 /usr/sbin/sshd
www-data   934  0.0  0.3   2112   728 ?        Ss   07:16   0:00 /usr/sbin/thttpd -C /etc/thttpd/thttpd.conf -i /var/run/thttpd.pid
root       939  0.0  0.2   1864   488 ?        Ss   07:16   0:00 /usr/sbin/gpm -m /dev/psaux -t autops2 -Rraw
root       953  0.0  0.2   1644   512 tty1     Ss+  07:16   0:00 /sbin/getty 38400 tty1
root       954  0.0  0.6   2492  1176 tty2     Ss   07:16   0:00 /bin/login -f     
root       960  1.2  1.2   3592  2380 tty2     S    07:16   0:01  \_ -bash
root       998  0.0  0.4   2300   864 tty2     R+   07:18   0:00      \_ ps fauxwww
root       957  0.0  0.6   2492  1168 tty3     Ss   07:16   0:00 /bin/login -f      
user1      961  1.0  1.3   4108  2656 tty3     S+   07:16   0:01  \_ -bash

## note that on this machine I have not yet switched user shell from bash to mksh
## but /bin/sh is already /bin/dash

# free
             total       used       free     shared    buffers     cached
Mem:        191612      33548     158064          0       3272      16796
-/+ buffers/cache:      13480     178132
Swap:       128508          0     128508

# uname -a
Linux sargemudi 2.6.26-1-486 #1 Thu Oct 9 14:22:52 UTC 2008 i586 GNU/Linux

## yes, this is an upgrade of an old demudi install

# netstat -anp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      727/pdnsd       
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      909/sshd        
tcp6       0      0 :::80                   :::*                    LISTEN      934/thttpd      
tcp6       0      0 :::22                   :::*                    LISTEN      909/sshd        
udp        0      0 127.0.0.1:53            0.0.0.0:*                           727/pdnsd       
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   PID/Program name    Path
unix  2      [ ACC ]     STREAM     LISTENING     601      939/gpm             /dev/gpmctl
unix  2      [ ACC ]     STREAM     LISTENING     280      727/pdnsd           /var/cache/pdnsd/pdnsd.status
unix  6      [ ]         DGRAM                    425      894/rsyslogd        /dev/log
unix  2      [ ]         DGRAM                    593      957/login           
unix  2      [ ]         DGRAM                    592      954/login           
unix  2      [ ]         DGRAM                    549      939/gpm             
unix  2      [ ]         DGRAM                    471      934/thttpd          

# lsmod
Module                  Size  Used by
ipv6                  225172  12 
ext2                   52616  2 
ide_cd_mod             27652  0 
cdrom                  30240  1 ide_cd_mod
dm_snapshot            14240  0 
dm_mirror              14720  0 
dm_log                  8192  1 dm_mirror
dm_mod                 45384  3 dm_snapshot,dm_mirror,dm_log
s3fb                   15616  1 
svgalib                 8832  1 s3fb
vgastate                7680  1 s3fb
psmouse                32016  0 
ne                      6084  0 
8390                    8064  1 ne
dmfe                   16408  0 
snd_emu8000_synth      11140  0 
snd_emux_synth         28544  1 snd_emu8000_synth
snd_seq_virmidi         4736  1 snd_emux_synth
snd_seq_midi_emul       5376  1 snd_emux_synth
snd_util_mem            3968  2 snd_emu8000_synth,snd_emux_synth
snd_sbawe              27200  1 snd_emu8000_synth
snd_opl3_lib            9344  1 snd_sbawe
snd_sb16_dsp            8448  1 snd_sbawe
snd_sb16_csp           16768  1 snd_sbawe
snd_sb_common          14848  3 snd_sbawe,snd_sb16_dsp,snd_sb16_csp
snd_hwdep               6148  3 snd_emux_synth,snd_opl3_lib,snd_sb16_csp
snd_mpu401_uart         6400  1 snd_sbawe
snd_rawmidi            18720  2 snd_seq_virmidi,snd_mpu401_uart
snd_pcm_oss            32544  0 
snd_pcm                60808  4 snd_emu8000_synth,snd_sbawe,snd_sb16_dsp,snd_pcm_oss
snd_mixer_oss          12288  1 snd_pcm_oss
snd_seq_dummy           2692  0 
snd_seq_oss            24832  0 
snd_seq_midi_event      6528  2 snd_seq_virmidi,snd_seq_oss
snd_seq                40784  8 snd_emux_synth,snd_seq_virmidi,snd_seq_midi_emul,snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_timer              17668  3 snd_opl3_lib,snd_pcm,snd_seq
snd_seq_device          6412  8 snd_emu8000_synth,snd_emux_synth,snd_sbawe,snd_opl3_lib,snd_rawmidi,snd_seq_dummy,snd_seq_oss,snd_seq
snd                    45092  18 snd_emu8000_synth,snd_emux_synth,snd_seq_virmidi,snd_sbawe,snd_opl3_lib,snd_sb16_dsp,snd_sb16_csp,snd_sb_common,snd_hwdep,snd_mpu401_uart,snd_rawmidi,snd_pcm_oss,snd_pcm,snd_mixer_oss,snd_seq_oss,snd_seq,snd_timer,snd_seq_device
soundcore               6112  1 snd
snd_page_alloc          7816  1 snd_pcm
ext3                  103432  1 
jbd                    35092  1 ext3
mbcache                 6656  2 ext2,ext3
ide_disk               10496  5 
ata_generic             4612  0 
libata                141088  1 ata_generic
scsi_mod              129804  1 libata
dock                    8076  1 libata
ide_pci_generic         3844  0 [permanent]
piix                    6532  0 [permanent]
ide_core               95144  4 ide_cd_mod,ide_disk,ide_pci_generic,piix
evdev                   7808  0 
thermal_sys            10784  0 

-- 
Chi usa software non libero avvelena anche te. Digli di smettere.
Informatica=arsenico: minime dosi in rari casi patologici, altrimenti letale.
Informatica=bomba: intelligente solo per gli stupidi che ci credono.


Reply to: