[Future Technology Research Index] [SGI Tech/Advice Index] [Nintendo64 Tech Info Index]


[WhatsNew] [P.I.] [Indigo] [Indy] [O2] [Indigo2] [Crimson] [Challenge] [Onyx] [Octane] [Origin] [Onyx2]

Ian's SGI Depot: FOR SALE! SGI Systems, Parts, Spares and Upgrades

(check my current auctions!)

Melting the ICE

ICE, which stands for 'Image Compression Engine', is the O2's dedicated processor for accelerating image and video operations; it could theoretically be used to accelerate audio processing too.

Here is a summary of those operations and actions which are accelerated by ICE (info supplied by Max Waterman of SGI):

This naturally leads onto the question of which operations are currently not accelerated by ICE:


The list given above is a general description of ICE support for different operations. But what about on a more practical level? What can one do that will be very fast because of ICE and what can one not do, or at least only do at traditional main-processor speeds because ICE support has not yet been included or been fully optimised? Here are some examples:


When I first wrote this page, IRIX 6.5 had not yet been released. Much to my delight, 6.5 introduces major changes to the imgview program; many of the changes I had hoped for have indeed been incorporated into the new version of imgview:

Note that imgview uses texture tiling for these functions, not ICE, just like the 'roam' demo; but it's a major change to imgview and so must be mentioned.

On systems without hardware acceleration, the same interface controls are used, but one is not forced to wait for all of the image to be updated before making a further change in position, zoom, rotation, etc.; thus gives a good level of interactivity on systems that cannot hardware accelerate the texture mapping, eg. Indy, Indigo, etc. And if one does not like using the slider bars, then alternative controls are also available (rotational pointer, numeric zoom factor, etc.)

For enhanced image clarity, imgview offers a selection of filtering functions to prevent pixelisation. Though some methods are slower than others, simple bilinear filtering does not slow down the pan/roam/zoom functions at all, obviously because the texturing process can use the mipmapping aspects of the CRM graphics hardware. Of course, PCs could theoretically use this tecnique too, but they would not be able to offer the advantages O2 has due to its UMA architecture, ie. being able to manipulate large images.

Bicubic filtering gives better results, and one can choose from several bicubic algorithms (different types of image benefit from different filtering techniques). Of course, on very fast systems such as Onyx2, even the most complex functions will be performed in real-time.

In addition to the above, 6.5 imgview has a series of new control panels for manipulating image features such as brightness, contrast, sharpness, etc. ICE is used to accelerate these functions, with slider buttons as the means of manipulation - excellent! And again, for systems without hardware acceleration, one does not have to wait for all of the image to be updated before making further changes, giving a good level of interactive feedback.

If you're using a system which does have hardware acceleration, try turning it off (type CTRL+C in imgview and use the Edit menu to toggle hardware acceleration) and then use the various image manipulation features - you will see the way the image is altered using a tiling technique, which I suspect is ImageVision at work.

As I said on this page before 6.5 was released:

imgview could still be improved, especially when one has altered an image but wishes to perform further roam/zoom/pan operations. I expect further improvements will be made in the future.


Finally, here is a summary of the differing connections between the GUI-based tools and the low-level command line programs available to the user:


The Wish List

Ideally, ICE support should be added for the following operations:


Ian's SGI Depot: FOR SALE! SGI Systems, Parts, Spares and Upgrades

(check my current auctions!)
[WhatsNew] [P.I.] [Indigo] [Indy] [O2] [Indigo2] [Crimson] [Challenge] [Onyx] [Octane] [Origin] [Onyx2]
[Future Technology Research Index] [SGI Tech/Advice Index] [Nintendo64 Tech Info Index]