[comp.sys.intel] 386 Xenix Comments

caf@omen.UUCP (Chuck Forsberg WA7KGX) (07/16/87)

Some comments on 386 Xenix and benchmarks.

My favorite benchmark is siev.c.  Not as representative as some others
but small enough to understand.  With 386 Xenix the object module _main
has a text size of 130 bytes, and the program runs in .53 seconds
(normalized to 10 loops).  Compiled for speed instead of space, the text
grows ten bytes and execution slows to .56 seconds.

Compiled for 80286 small model, program size is 109 bytes and execution
time is .82 seconds.  I attribute the 50 per cent difference to the
richer addressing modes in the 386's native mode, but have made no
analysis yet.

Recompiling a losing 286 huge model program for 386 is a moby win, and
is the only way one is going to get the 10x speedups usually mentioned
for the 386.

The "real" 386 Xenix should be shipping by now, and it does pretty much
what is promised.  The one main excpetion is software floating point,
which was supposed to be amlost as fast on a 386 as h/w FP on a 287.  It
isn't, no cigar, not even close.

Xenix to DOS XC still works, and the greater speed of the 386 passes
is most welcome.  The DOS clib needs to be grought up to MSC 4/5
level.  I haven't tried using the MSC 5 lib on Xenix yet.

There is a Parkinson's law situation going on here.  Now that I can edit
a 1.7 MB postscript file with vi, I'm running out of space in /tmp if
I'm not careful.  Emacs has a problem with such a huge file as Xenix
starts goes quadratic when a process allocates more then about 1.3 MB on
my 2.5 MB total machine.  Malloctst hit about 1.3 MB almost instantly,
but now it swaps like crazy for each extra 1k allocated.  Finally got
tired with it at 1.47 MB.  Sometime I'll let it run to completion to
find out.

But, I can call up four copies of a program that allocates a 1.2 MB
array without pain, so the virtual memory does seem to be doing its
thing.

BTW, SCO recommends against using 16 bit memory on Intel motherboards.
I tried using 16 bit memory some time ago, didn't crash anything, but 16
bit memory is so slow it's usually faster not to use it.

I haven't had a chance to really bang on this kernel yet with all my
tricks, but I do consider it more stable than any *nix 286 kernel I have
seen since Xenix 2.1 days.

I'm running an Intel motherboard, 2.5 MB total memory (32 bit), mono and
color boards, CDC wren drive, parallel daisy wheel, and AST 4 port
serial board.  I will put the EGA board in when I get the EGA graphics
driver that didn't get into the CGI library.

As Steve Dyer mentioned, the Prime virtue of 386 Xenix is all the programs
from Random J. Vaxhacker that mysteriously start operating properly.

Chuck Forsberg WA7KGX Author of Pro-YAM communications Tools for PCDOS and Unix
...!tektronix!reed!omen!caf  Omen Technology Inc "The High Reliability Software"
  17505-V Northwest Sauvie Island Road Portland OR 97231  Voice: 503-621-3406
TeleGodzilla BBS: 621-3746 2400/1200  CIS:70007,2304  Genie:CAF  Source:TCE022
  omen Any ACU 1200 1-503-621-3746 se:--se: link ord: Giznoid in:--in: uucp
  omen!/usr/spool/uucppublic/FILES lists all uucp-able files, updated hourly