[comp.sys.mac] Blitters again

mo@seismo.CSS.GOV (Mike O'Dell) (03/10/87)

Note that I didn't say there weren't fast bit
blitters if you just look at some spec sheet about
how fast the hardware can run in some cases
the hardware does well.  The point is that
THEY USUALLY DON'T DO ALL THE CASES!!
Making up for the boundary conditions
in software is often slower than just doing it
with the CPU in the first place.  

And as for the speed of a 68K, my Macintosh
can paint rings around my SUN 3/160.  Maybe
it is the cruft getting to the pixrects,
but the end result is that my Macintosh
paints windows much faster per unit area.
And having seen an SE do it, it does it
faster than our SUN 3/260.

	-Mike

dillon@CORY.BERKELEY.EDU.UUCP (03/11/87)

>Note that I didn't say there weren't fast bit
>blitters if you just look at some spec sheet about
>how fast the hardware can run in some cases
>the hardware does well.  The point is that
>THEY USUALLY DON'T DO ALL THE CASES!!
>Making up for the boundary conditions
>in software is often slower than just doing it
>with the CPU in the first place.  
>
>	-Mike

	No, but they can get pretty close.  Citing the Amiga blitter as an
example:  It can do any logic operation on it's 3 sources and 1 destination.
That's 256 logic operations!  (I'm not starting a war, just giving you an
example of a real-life blitter).

	Certainly doing extremely simple operations can be done relatively
fast by the 68000/68010 (about 3 times slower than a blitter running at the 
same speed), but when you get into more complex equations, for instance:

	((C&A)|D)->D  (Take bitmaps A through template C and OR onto the 
			 destination bitmap)

	The problem suddenly becomes non-trivial... especially when three
of the four bitmaps are on different bit boundries.   (in the example above,
D is used both as a source and as a destination).  Were talking about 10x
slower at a minimum.  Even a 68020 with it's cache would have a time of it
(perhaps only 3x slower).

	A good example is the LIFE program on the Amiga using the blitter and
the LIFE program on the atari using the processor.  Of course, you cannot do
a life-entity calculation in one blit... it takes the Amiga about 12 I believe.
So the Amiga is actually doing 20*12 = 240 complete blitter passes over the
screen per second.  Even though it takes the blitter 12 passes per life
entity, it is still 3 times faster than the Atari version written in extremely
optimized assembly.

	There can be no question that having one or more blitters gives a huge
advantage when manipulating displays.

					-Matt

berger@datacube.UUCP (03/11/87)

Ok, I'll trade my Mac for your sun 3/260 :=)
				Bob Berger 

Datacube Inc. Systems / Software Group	4 Dearborn Rd. Peabody, Ma 01960
VOICE:	617-535-6644;	FAX: (617) 535-5643;  TWX: (710) 347-0125
UUCP:	ihnp4!datacube!berger
	{seismo,cbosgd,cuae2,mit-eddie}!mirror!datacube!berger

kevin@violet.berkeley.edu.UUCP (03/11/87)

This (now boring) thread began with a very simply question re: the
Macintosh II's blit (or non-blit) capabilities.  Obviously this has
deteriorated greatly and is possibly more appropriate in comp.graphics.

The Macintosh II motherboard has _no_ graphics at all. PERIOD.  Apple's
announced video adpater does not blit.  So what.  Before we know it every
add-on vendor and their relatives will offer a graphics controller with
and with-out graphics co-processors.  Take your choice.  Unfortunately
these boards will probably be available LONG before you or I can get
our little hands on the new Mac.  (Remember 1984 ....)

Kevin (waiting in line for the Mac II)

radford@calgary.UUCP (03/13/87)

In article <8703110056.AA23131@cory.Berkeley.EDU>, dillon@CORY.BERKELEY.EDU.UUCP writes:

> 	There can be no question that having one or more blitters gives a huge
> advantage when manipulating displays.

Your're right. Certain operations of moderate complexity - not too simple
like a memory copy, and not too complex, beyond what it was designed for -
can be done much more rapidly by a blitter than by a processor like the
68020. 

The real question is whether the blitter is worth its cost. Machines like
the Mac and the Amiga don't run at the limits of speed for the 68000 family.
Would you rather have a blitter, or have the processor run 30% faster for
all operations? The cost may be comparable.

And don't say you'd like both. :-)

     Radford Neal

ali@rocky.UUCP (03/14/87)

In article <828@vaxb.calgary.UUCP> radford@calgary.UUCP (Radford Neal) writes:
>The real question is whether the blitter is worth its cost. Machines like
>the Mac and the Amiga don't run at the limits of speed for the 68000 family.
>Would you rather have a blitter, or have the processor run 30% faster for
>all operations? The cost may be comparable.

That's true only if you're not multitasking. In a multitasking OS
the CPU might get a lot of use, even if it is faster. The blitter will
assure that the CPU will not be interrupted for various simple but
necessary tasks (such a windowing, sizing, menu operations, etc...).
Of course, if you get a Mac II just to run Mac software than the 68020 is
fast enough such that you won't need a blitter. But, a blitter will be
necessary when running multiple Mac applications under A/UX (if such a thing
will ever be possible).

Ali

dillon@CORY.BERKELEY.EDU.UUCP (03/14/87)

>
>> 	There can be no question that having one or more blitters gives a huge
>> advantage when manipulating displays.
>
>Your're right. Certain operations of moderate complexity - not too simple
>like a memory copy, and not too complex, beyond what it was designed for -
>can be done much more rapidly by a blitter than by a processor like the
>68020. 
>

	Those 'Certain operations' you so glibly discard with a wave of your
Overview comprise about 60% of all video operations.  If you include blitter
aided text display, the figure is around 95%.  Although the 'processor
offloading' aspect doesn't apply as much to the Mac due to it's lack of 
multi-tasking, you still get a pretty hefty gain in speed.  And when your
talking about 8 bit planes for the Mac II, and super-large windows, a blitter
makes all the difference in the world.

>The real question is whether the blitter is worth its cost. Machines like
>the Mac and the Amiga don't run at the limits of speed for the 68000 family.
>Would you rather have a blitter, or have the processor run 30% faster for
>all operations? The cost may be comparable.
>
>And don't say you'd like both. :-)
>
>     Radford Neal

	This may be true in some systems, but as far as the Amiga goes, both
its processor and its blitter can run at full speed simultaniously, and
video refresh doesn't slow down the processor until you get beyond 4 planes
320x(200/400) or 2 planes 640x(200/400).

	As for the Mac II, since the video cards have their own video memory,
it would be very easy for a third party developer to stick on a blitter with
relatively little interference with the processor.  The *real* question is:
"Would QuickDraw Support hardware aided operations???"

					-Matt

shap@sfsup.UUCP (03/18/87)

In article <188@rocky.STANFORD.EDU>, ali@rocky.STANFORD.EDU (Ali Ozer) writes:
> In article <828@vaxb.calgary.UUCP> radford@calgary.UUCP (Radford Neal) writes:
> >The real question is whether the blitter is worth its cost.
> 
> That's true only if you're not multitasking...
> ... But, a blitter will be
> necessary when running multiple Mac applications under A/UX (if such a thing
> will ever be possible).
> 
> Ali

My preference is to put certain carefully chosen graphics operations in
hardware. It is worth pointing out, however, that so long as the main
processor doesn't need to worry about actually doing the screen output
(i.e. some dedicated hardware takes on the job of pumping the dots), one
does not *need* a blitter. Ever. In lower display densities one doesn't
even need dedicated dot-pumper.

A blitter is desirable for many applications. Some will view it as a
necessity. But it is a matter of cost, and many people will deem the cost
unjustifiable. I want a blitter. I don't want everyone else to have to buy
my choice.

Please, instead of talking religion (e.g. "This machine MUST have a
blitter), can we talk about the merits/demerits of one choice or the other?

I think that Apple's decision not to put a blitter on the main board
was sound. It means that graphics hardware vendors can build there hardware
according to their needs, and different kinds of hardware have different
needs.

Jonathan S. Shapiro