From - Wed Jul 10 21:39:19 1996 Path: news.unizar.es!news.rediris.es!news.uoregon.edu!newsfeed.internetmci.com!sgigate.sgi.com!fido.asd.sgi.com!woodsy.asd.sgi.com!mjk From: mjk@woodsy.asd.sgi.com (Mark Kilgard) Newsgroups: comp.graphics.api.opengl Subject: Re: OpenGL on hardware level? Date: 9 Jul 1996 00:44:19 GMT Organization: Silicon Graphics, Inc. Lines: 162 Message-ID: <4rsa13$g29@fido.asd.sgi.com> References: <31D5C126.3934@magicnet.net> <4r5q7i$o1@news.eunet.ch> <31D89668.6041@magicnet.net> <4rk3jm$d49@news.microsoft.com> NNTP-Posting-Host: woodsy.asd.sgi.com In article <4rk3jm$d49@news.microsoft.com>, swright@microsoft.com (Stephen H. Wright) writes: |> |> I'm going to give you a moderately hard time and question the "slowness" |> issue |> too! While it is certainly true that a software solution will always be |> slower |> than some sufficiently expensive hardware solution, the combination of |> software |> tuning and powerful CPU's is giving us a Windows/Intel software solution that |> |> competes extremely well against low-end hardware solutions. |> |> We've just submitted CDRS viewperf numbers to SPEC/OPC that show our software |> |> renderer on current leading edge PC's to have well over 12x the |> price/performance of our implementation only 1 year ago. SGI no longer |> quotes |> low-end system viewperf performance, but if we look back at the last low-end |> |> numbers they did publish (Q1 '95), our $3K 200MHz P6 machine today |> outperforms |> (this is sheer *performance*, not price/performance) all the SGI Indy XL and |> XZ |> systems measured, up through a (at that time $26K) Indigo 2 XZ 200 system. This might be a good time to make a couple of important points about the performance of graphics workstations, in particular SGI workstations, relative to PCs. It has become routine to use SGI workstations as a de facto performance benchmark for 3D graphics. This is for a very good reason: SGI sets the pace for 3D graphics performance and is the uncontested leader in the industry. That said, there are a couple of points worth making about 3D performance comparisons (and these points are often missed by the press): o There is not a single machine called an "SGI workstation". SGI manufactures a broad product line that spans two orders of magnitude in price for its 3D workstation products (from Indy to Onyx). If someone compares their product to an "SGI workstation" and the comparison is to be taken with any seriousness, be sure you understand what model of SGI workstation they are comparing themselves to. If they don't (they sometimes do not!), don't take the comparison too seriously. o SGI continues to release newer and faster graphics models. It is generally the cases that comparisons by other vendors choose dated SGI hardware to compare with. For example, in the above comparison, the Indigo^2 XZ is a fairly old model. Comparing to today's equivalent model (an Indigo^2 Solid Impact for $22K) would again make Microsoft's implementation look quite slow. o Just as other vendors will compare themselves to SGI products that are several years old, they will also make their comparisons based on not-yet-released products. For example, the comparison above cites the performance of a not-yet-released OpenGL implementation. This also means that the results are unaudited. Comparing dated SGI products to not-yet-released products is not a good basis for comparison. o Other vendors often focus on the performance of a single benchmark. Because the vendor is "gunning" for performance on this benchmark, it is likely that the particular path for the benchmark may be fast, but other paths suffer. This can be particularly problematic for software-based implementations of OpenGL where non-benchmark paths fall back to fairly poorly tuned paths since all the effort went into overtuning the benchmark cases. SGI tunes for balanced performance on real applications, not particular benchmark paths. o Other vendors focus on yesterday's performance metric while SGI is focused on tomorrow's metrics that really push the limits of performance. For example, while many vendors are comparing performance rendering small smooth-shaded depth-buffered polygons, SGI is pushing the performance of trilinear mipmap textured, light, depth-buffered polygons and adding capabilities like 3D texture mapping and image processing operations like convolution. o A 3D graphics workstation is more than simply a polygon rasterization engine, SGI knows this, but other vendors do not. That is why *all* SGI workstations come standard with: + Overlay planes which can speed up menu and dialog box interaction, picking interactions, and annotation by reducing expensive redraws. + Stereo. + Multiple hardware colormaps to prevent colormap flashing. + Per-window instantaneous double buffering synchronized with buffer swaps for fast, artifact-free animation. + Direct rendering for fast immediate mode rendering. This means rendering commands are sent from the application directly to the hardware bypassing the X server or Win32 subsystem. Vendors often neglect to mention that their benchmarks are for display listed performance that minimizes rendering overhead, but is not typical for interesting 3D applications. + Fast hardware context switching meaning that multiple applications can be simultaneously performing interactive rendering with good interactivity. o Other vendors often neglect to consider differences in screen and color resolutions. PCs often have 8-bit color resolution, sometimes 12-bits, while SGI is pushing 12, 16, 24, and even 36 bits of color resolution. PC screen resolutions are often 800x600 or even lower. SGI has 1280x1024 resolution. In such cases, the PC is giving you 2.7 times fewer pixels. Be vary suspicious of side-by-side "full screen" demos since the screens may be at very different resolutions. o Vendors only make comparisons where they compare reasonably. For example, a texture mapping comparison may compare "nearest texel" texture mapping when comparing to an SGI, even though the SGI can do "linear mipmap linear" sampling (a signficantly higher texture sampling mode) at nearly the same performance level. o Other vendors often use price-performance to justify their systems relative to an SGI. The price of a complete system includes a monitor. A good monitor can be a signficant part of the system price. The computer monitor you use are like speakers on a stereo system. Just as you wouldn't put crappy speakers on a great stereo, SGI makes sure it supplies top-of-the-line monitors at large resolutions (like 19 inches or more). Make sure the comparing vendor is including the monitor price (SGI always does). And verify that the monitor is of comperable size, resolution, and quality. After all, are the one that has to look at it. Be careful of vendors that use a crappy monitor for the benchmark system price that is cheaper because it is cheaper. o Vendors often cite "primitive level" benchmarks where a special benchmark application is drawing as fast as it can. Particularly, in a software implementation, such a benchmark may leave the host CPU with *no* extra cycles to perform application code. SGI's architecture is to off-load graphics performance to the 3D graphics hardware. Typically, this means that 3D graphics rendering operations take place in parallel with host CPU operations. This makes it possible for SGI workstations to run interesting applications while they sustain their rendering performance. On an Intel box as described above, all the rendering operations take place on the host meaning that the rendering performance cuts into CPU time that could be better spent on your application. For a benchmark (where the application *is* the rendering) this may be fine, but not for real applications. As PCs try to acquire more 3D capabilities, you'll hear more and more claims about being "about equal to an SGI workstation" and such. Most of this is hype because that is what such vendors have to say to get people to even look at their products. When you really look at the total package, you'll find that SGI continues to be the innovation leader and that demanding 3D applications continue to look better and respond faster on SGI workstations. - Mark