[net.micro.mac] Mac line drawspeed

saldana@cernvax.UUCP (saldana) (08/09/85)

I made a benchmark to find out how many pixel/sec a Mac
could draw. I also ran the same benchmark on the Apollo
workstations we have.
 
Algorithm:
/* draw 8000 vectors of 200 pixels long with a skew. set by offset */
 
x1 = 100 - offset;
y1 = 100
x2 = 100 + offset
y2 = 300
 
for (i = 0; i < 20; i++) {
        PenPat(black);
        for (j = 0; j < 200; j++) {
                MoveTo(x1, y1);
                LineTo(x2, y2);
                x1++;
                x2++;
        }
        PenPat(white);
        for (j = 0; j < 200; j++) {
                MoveTo(x1, y1);
                LineTo(x2, y2);
                x1--;
                x2--;
        }
}
 
 
 
results:
 
Mac (68000, Aztec C)            offset = 0     121000 pix/sec
                                       = 1       8500 pix/sec  !!!
                                       > 1       8500 pix/sec  !!!
 
Apollo DN300 (68010, domain C)  offset = 0      83000 pix/sec
                                       = 1      69500 pix/sec
                                       = 20     68500 pix/sec
                                       = 100    60000 pix/sec
 
Apollo DN550 (68010+graph.processor)   = 0     327000 pix/sec
                                       = 1     327000 pix/sec
                                       = 20    327000 pix/sec
                                       = 100   327000 pix/sec
 
Offset of 100, in this case (of vectors of 200 pix), is the maximum
offset, every pixel must be calculated, there are no vert parts anymore 
that can be drawn quickly.
 
Conclusions:
 
The Mac is very fast drawing vertical (or horiz.) lines (out
performs a $15000 Apollo DN300), but as soon as the lines are a
little tilted it gets into trubbles. Why? Bad algorithm?!
Because even with an offset of 1 it looks like it already
starts interpolating all the pixels between begin and end point,
instead of dividing the line into two vert. (or hor.) parts.
 
Is it really a matter of a not optimized Quickdraw routine? Or
is something else happening. What do you people out there think?

By the way, Apollo should be ashemed of the max. drawspeed of
straight lines on their DN300.

-- 


Fons Rademakers

p-mail: EP Division
        CERN
        CH-1211 Geneva 23
        Switzerland
e-mail: ...{seismo,philabs,decvax,...}!mcvax!cernvax!saldana