wambacq@esat.kuleuven.ac.be (01/31/91)
Hi everyone, some people on the net already reported the slowdown of the IIsi when using colors instead of black and white. I think there is a very logical explanation for this. The fact is that the video circuitry uses part of the IIsi's normal memory for storing the image that is read out to the monitor. Whenever the video circuitry accesses the memory, the CPU has to wait when it wants to access the same memory bank. Now, when you use 8 bits video (color or greyscale, no difference), instead of 1 bit video (black and white), the amount of reserved memory for the video is much larger and the accesses are more frequent. I did some tests with different depths (1, 2, 4 and 8 bits), and there is a gradual slowdown when going from 1 to 2 and to 4 bits. The difference between using 4 and 8 bits is larger. There are however tricks to circumvent this slowdown. Therefore you have to know that in the IIsi, memory is divided in two banks : bank A contains 1Mbyte and is soldered on the motherboard, bank B consists of the SIMMs and varies in size (in most cases 4Mbytes). There runs a bus between the CPU and bank B, but this bus is not brought directly to bank A. There is a buffer between, which makes that the CPU can access bank B at the same time that the video circuitry accesses bank A. There would be no slowdown when the CPU would only use bank B. I did the following test: I installed a RAM disk of 1 Meg, which sets asides a portion of the memory. This turns out to be mainly bank A memory. Speed tests then show no slowdown, no matter the number of bits, and this because bank A is not used by the CPU as long as the RAM disk is not accessed. Disk access is however still slowed down, but I think this is because I have no exact control over the use of bank A and most probably some parts of it are still used by the system. Now, this brings me to my question: would it not be possible to have an init that makes part of the memory (in this case bank A) unavailable to the CPU, by juggling with the tables that the MMU maintains? Of course, the drawback would be that less memory is available to applications, but this is in many cases not problematic. Is there maybe something like this already? I also have another question: Apple's IIsi developer's note mentions that the IIsi is designed to provide future support for network booting. Using the control panel, one would set a flag in the ADB microcontroller that causes the system to start up over a communications network such as Ethernet or LocalTalk. Has anyone more information on this topic? Can this feature be used now with DEC's PathWorks for the MAC? Thanks, Patrick Wambacq Katholieke Universiteit Leuven ESAT-MI2 Kard. Mercierlaan 94 3001 Heverlee Belgium wambacq@esat.kuleuven.ac.be
bruner@sp15.csrd.uiuc.edu (John Bruner) (02/01/91)
In article <1991Jan31.123728.4540@esat.kuleuven.ac.be> Patrick Wambacq
describes the bus structure of the IIsi and some experiments he
performed to increase the processor speed. I confess that I have not
seen any hard technical information about the hardware of the IIsi.
Can the video circuitry access bank B? If I understand Patrick's
description correctly, it sounds like it can't. Isn't bank A located
at the bottom of physical memory (addresses 0..$FFFFF)? If so,
doesn't that put the frame buffer right in the middle of the
application heap?
If the processor runs fastest out of bank B, then it seems to me that
in virtual mode (using the MMU) the bank A memory should be dedicated
as much as possible to the video buffer, the disc cache, and other
memory objects whose access time is less critical to system
performance. In that case, running with the MMU would be faster than
running without it. Perhaps this will be another feature of System 7?
--
John Bruner Center for Supercomputing R&D, University of Illinois
bruner@csrd.uiuc.edu (217) 244-4476
cruff@ncar.ucar.edu (Craig Ruff) (02/02/91)
In article <BRUNER.91Feb1091621@sp15.csrd.uiuc.edu> bruner@sp15.csrd.uiuc.edu (John Bruner) writes: >In article <1991Jan31.123728.4540@esat.kuleuven.ac.be> Patrick Wambacq >describes the bus structure of the IIsi and some experiments he >performed to increase the processor speed. I confess that I have not >seen any hard technical information about the hardware of the IIsi. According to the IIsi developer notes and my poking around the MMU page tables, this is what takes place: Bank A memory resides from 0 to 64 Mb (physical). The video part starts at 0 physical and goes until the end of the screen is reached (in what ever screen depth you are in at the moment). Bank A memory is buffered from the CPU and Bank B. Bank B memory starts at 64 Mb (physical). The MMU is programed to place all of Bank B starting at 0 (virtual). The portion of Bank A that is used for the screen is placed to look like a NuBus slot ($E, I think). The remainder of Bank A is appended to the end of Bank B in the virtual space. The effects of this is that anything that is placed into high memory will end up in Bank A first. BTW, figuring out how to access physical memory (where the page tables reside) from the virtual space without screwing up the running program was an interesting exercise. The answer is left for the student to discover. -- Craig Ruff NCAR cruff@ncar.ucar.edu (303) 497-1211 P.O. Box 3000 Boulder, CO 80307
dagraham@vax1.tcd.ie (02/04/91)
In article <1991Jan31.123728.4540@esat.kuleuven.ac.be>, wambacq@esat.kuleuven.ac.be writes: > some people on the net already reported the slowdown of the IIsi when using > colors instead of black and white. I think there is a very logical explanation I also had *mega* slowdown problems; windows taking 5 minutes to draw, and stuff like that. It all seems to be related to the Personal LaserWriter NT on our AppleTalk network; when >1 person tries to print at once, one of the print jobs get done, and the others machines slow down very, very dramatically! At the same time, the LaserWriter know nothing about this; it's status light is steady, and somebody else can jump in and print while the other IIsi's are trying to print. If it's any help, we have 4 IIsi's, 2 IIcx's, 1 IIci, 1 IIfx, Personal LaserWriter NT, Shiva NetModem v.32 on our single zone. All Macs are running 6.0.7 International, except the IIci, which has 7.0b1. Thanks for any help, David Graham Glanmire Electronics Ltd: AppleLink: DUB.GE.RES * My opinions are nothing to do with my employer * And JF Comp Sci at Trinity College, Dublin: dagraham@vax1.tcd.ie