leonid@TAURUS.BITNET (03/14/89)
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@taurus.BITNET