bryan@geo-works.UUCP (Bryan Ford) (08/12/89)
In article <21047@cup.portal.com>, Thad P Floryan writes: >Re: Bryan Ford's comments about UNIX "requiring" at least a 68020 ... > >Besides the Sun-2 (with a 68010 and custom MMU), we find: > >[several Unix machines with custom MMU's] As I mentioned before, it was a bad assumption, I stand corrected, and I'm sorry if it caused confusion. However, this doesn't seem to have much to do with my original question, about (relatively) high-speed networking in software. (By Relatively, I mean something that takes lots of the Amiga's CPU time.) I've gotten more replies on my mostly unrelated folly than on the networking thing itself. Now, another question. Which method would take the least amount of CPU (so the local user doesn't 'lose' the system too much): transmitting a packet at a time, at the highest speed the hardware can handle (i.e. 280,000 bps), and disallowing multitasking in between characters, or transmitting at a much slower speed, and using interrupts for each character? Which would provide better sustained throughput? Thanks for your help, Bryan -- _______________________________________ _/ Bryan Ford - bryan@geo-works.uucp \_ _/ ..!utah-cs!caeco!i-core!geo-works!bryan \_ / ..!uunet!iconsys!caeco!i-core!geo-works!bryan \ \_____________Author: Chroma Paint______________/
shadow@pawl.rpi.edu (Deven T. Corzine) (08/15/89)
On 11 Aug 89 18:48:49 GMT, bryan@geo-works.UUCP (Bryan Ford) said: Bryan> Now, another question. Which method would take the least Bryan> amount of CPU (so the local user doesn't 'lose' the system too Bryan> much): transmitting a packet at a time, at the highest speed Bryan> the hardware can handle (i.e. 280,000 bps), and disallowing Bryan> multitasking in between characters, or transmitting at a much Bryan> slower speed, and using interrupts for each character? Which Bryan> would provide better sustained throughput? My instinct is that the best solution is to disable multitasking, and *maybe* interrupts, during a packet, and keeping the packet size small. If you disable interrupts, to keep near the recommended max of 250ms, you'd need to make the packet size about 10 bytes. Too small to be very useful, though you could do larger logical packets, and send in bursts. Assuming you can safely allow interrupts, (questionable) you could Forbid() and send a 1K packet in about 1/30 of a second. That, I see as reasonable. In fact, just giving the receiving task (if implemented as such) the highest priority in the system, (say, 127) and the sending side a lower priority, but higher than any compute-bound tasks, should get you reasonable performance. Worth a try! :-) Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.