Sun386i DMA performance

leonid at TAURUS.BITNET leonid at TAURUS.BITNET
Tue Mar 14 10:48:47 AEST 1989


Dear folks,

I think I have discovered an interesting fenomena on my Sun386i/150. It
seems that while performing intensive DMA activity, all other CPU bound
activity is slowed up by much more than one would expect. Some numbers are
later on.  For comparison, a Sun-3/60 has been tested. I dont know yet
wheather this is a hardware (Intel?) or software bug, but these results
seem quite unreasonable.  *ANY* help/advise on this subject is
appreciated. Please send replies to me directly as I get the digests with
rather big delays.

Here is an elaborate description of the tests and results thereof. I have
written a rather simple program which is extremely CPU intensive (it does
mostly i++ ), and measures the performance of itself relatively to a test
period at its beginning.  At constant intervals this program will print a
real number which tells by how much is this program slower or faster. I
have also isolated the effect of other processes' CPU usage by using the
Virtual Timer function of SunOS.

Then I start this program and then do :

        dd if=/dev/rsd0b of=/dev/null bs=64k

which is the simpliest way I know to perform intensive DMA. The "loop"
program is being slowed down due to the fact that the DMA process steals
memory cycles from the CPU and thus from "loop" itself. So far everything
is within reason, except the following numbers: "loop" is slowed down by
70% ! It runs only 30% of its normal speed. Taking into account that the
disk transfer rate causes a 512kbyte/sec DMA rate, I approximated that
each one byte DMA cycle steals a whole 1.5 usec from the CPU per each byte
transferred. Just for comparison:  on Sun-3/60 same program with same "dd"
slows down by 15%-18% compared to 70% on the Sun386i.

This situation makes the Sun386 the worst Sun machine I ever seen, and not
suitable for any serious work. Whenever DMA is active almost all CPU
activity is halted. Again, any advise is welcome and appreciated.

Leonid Rosenboim                TEL: 972-8-421-640
System Engineer                 FAX: 972-8-421-644
Orbot Instruments, Yavne ISRAEL.
                                E-Mail: leonid at taurus.BITNET



More information about the Comp.sys.sun mailing list