baum@apple.com (Allen Baum) (04/24/91)
In article <1991Apr23.152155.2298@zoo.toronto.edu>, henry@zoo.toronto.edu (Henry Spencer) writes: > > Anybody who caches a frame buffer is crazy. Especially if the cache isn't > write-through, in which case your frame-buffer updates show up on the screen > some arbitrary time later! > Not so. If you can use the burst transfer into the cache, and throw away the line (i.e. burst dump it) when finished, its a very large win. Of course, you need cache management instructions, and your graphics algorithms have to have a pretty good idea of how much of a cache line they're going to munge. For moving windows around, for example, you have a very good idea, and it pays.
henry@zoo.toronto.edu (Henry Spencer) (04/25/91)
In article <51903@apple.Apple.COM> baum@apple.com (Allen Baum) writes: >> Anybody who caches a frame buffer is crazy... > >Not so. If you can use the burst transfer into the cache, and throw away the >line (i.e. burst dump it) when finished, its a very large win... If you can't use burst transfers except by trampling on your cache, your processor-memory interface is defective. (More precisely, it has been optimized for the typical case without due consideration of important atypical cases.) Of course, if you're using your cache as a substitute for having an adequate number of registers in your CPU, then you may not have a choice... -- And the bean-counter replied, | Henry Spencer @ U of Toronto Zoology "beans are more important". | henry@zoo.toronto.edu utzoo!henry
torek@elf.ee.lbl.gov (Chris Torek) (04/25/91)
In article <1991Apr24.173843.13659@zoo.toronto.edu> henry@zoo.toronto.edu (Henry Spencer) writes: >If you can't use burst transfers except by trampling on your cache, your >processor-memory interface is defective. (More precisely, it has been >optimized for the typical case without due consideration of important >atypical cases.) The SparcStation-1 cannot do 16-byte bus cycles for memory => cpu except via the cache. (It never does anything but 4-byte bus cycles for cpu => memory; its cache is write-through.) Yes, this is a pain. (Copy-on-write in the Mach VM is done using physical addresses, meaning that you have you map both pages in somewhere---there is a pair of special virtual addresses for this--- and do a block copy. For speed, the source page should be cached, which mean you potentially blow away one cache page.) On the other hand, SparcStation-1s cost less because of it. -- In-Real-Life: Chris Torek, Lawrence Berkeley Lab CSE/EE (+1 415 486 5427) Berkeley, CA Domain: torek@ee.lbl.gov