1. Introduction 1.1 Background and Rationale 1.2 Abbreviations Used 2. As-Standard Hardware 3. Earlier vs. Later (Older vs. Newer) Indigo2 Technologies 3.1 Background 3.2 Earlier (Older) Indigo2 Technologies 3.2.1 CPUs 3.2.2 Graphics 3.2.3 Video 3.3 Later (Newer) Indigo2 Technologies 3.3.1 CPUs 3.3.2 Graphics 3.3.3 Video 4. Summary For Old vs. New 5. Other Expansion Options 6. Why Indigo2? Strengths and Advantages 7. Limitations and Considerations 7.1 Disk Bandwidth 7.2 Connectivity 7.3 Upgrade Paths 7.4 Graphics Issues 7.5 Video Issues 7.6 Performance/Feature Tradeoffs 7.7 Environmental Factors 8. Example System Configurations for Different Applications: 8.1 General Applications, Net Surfing, Web Design, Server Tasks, etc. 8.2 Application Development 8.3 Audio, Music, Midi, etc. 8.4 Beginner's 3D graphics 8.5 Advanced 3D graphics 8.6 Video I/O and/or Editing 8.6.1 Entry level 8.6.2 Advanced 8.7 Games 8.8 Miscellaneous 9. General Advice 10. Conclusion 11. Credits and Thanks
There are some aspects of SGIs that I have little knowledge of, eg. MIDI and audio topics, so over time I will add to this page the knowledge of others, with full credit given.
SGI introduced the Indigo2 in 1993 as a mid-range workstation. At the time, the older IRIS Indigo was the low-end system, while Crimson was the high-end system, with Onyx to follow soon after. Indy was released in late 1993 to replace Indigo.
Indigo2 offered phenomenal CPU speed, expandability and 2D/3D power for its time, as well as features not available from any other vendor. PCs didn't offer any sort of proper 3D support for several more years.
In addition to various performance advantages, when Indigo2 was new it offered a degree of reliability, stability, ease of maintenance, efficient software/system management, driver support (real plug and play), responsiveness and feel, etc., that was utterly unmatched by PCs of the day, and it remained that way for a long time, though it goes without saying that Indigo2s were pretty costly (but not as much as one might think compared to 'top-end' PCs of that era). For example, my main Indigo2 system I used for many years has never crashed (I bought it 2nd-hand in May 1997 for 700 UKP). Hence, Indigo2 can still be a useful system in some ways (raw performance is mainly where it suffers compared to the later Octane, Fuel and Tezro systems).
Lesser configurations are ideal for learning UNIX and general tasks such as application design, email, light servers, general 2D/3D work, etc. Higher spec systems are suitable for advanced 2D/3D work, animations, art and design, audio processing, etc., though obviously if one is dealing with really large models and/or more 'up-to- date' computational tasks, such as full-size movie processing and frame rendering, then the basic CPU speed and 3D power of Indigo2 may not be enough (and certainly nowhere near that of a modern PC). In general though, for someone looking for a 2nd-hand SGI, some kind of Indigo2 configuration may be the ideal system. However, a buyer often has a budget that's high enough to get an Octane, and in some cases the equivalent spec Octane can be cheaper for various reasons, but do bare in mind that expansion options for Octane may be a lot more expensive than those for Indigo2.
In the field of video, later Indigo2 technologies offered video options at a quality level that did not become available on PCs for many years, though some of the options are hard to find now. In later years a combination of SGIs and Linux PCs became increasingly common for those who sought something better than Windows, but also fast CPU speed for key offline processing tasks such as movie conversion. Today of course, Windows PCs have moved on somewhat, with applications such as After Effects making PCs a productive platform in manner not available back when Indigo2 was current.
Software issues often determine whether one has to use a PC or not, but if there is flexibility then Indigo2 can still be useful (eg. OpenOffice), and nobody needs a 3GHz CPU to perform office tasks, though sadly sometimes such open source apps are not kept up to date which today has begun to limit the practical use of old SGIs in some cases. Recently a newer version of Firefox has been made available for MIPS4-based SGIs (version 3.0.19) which has made a significant difference in allowing old SGIs to access the web in a reasonable manner, though such package builds do need a good CPU to run at an acceptable speed (an R10K/195 Indigo2 is about the minimum I'd want to use for such tasks).
Today I use a 900MHz Fuel as my main daily-tasks SGI, but if someone were to ask me which SGI was my favourite overall, I'd have to say Indigo2. It had a degree of integrated design, functionality, robustness and reliability which was never qute matched by later SGIs, though that's just my own opinion. Is Indigo2 the right system for you? Should you buy one?...
The purpose of this page is to describe Indigo2, outline the various technologies available for the system, explain it's strengths and weaknesses, give examples of suitable configurations for various applications, and lastly present a guide with general advice that should be useful when seeking to buy a 2nd-hand Indigo2.
hw = hardware sw = software gfx = graphics Indigo2V = Indigo2Video COSCOM = CosmoCompress Indigo2V-FI = Indigo2Video-for-IMPACT IMPVID = IMPACT Video IMPCOL = IMPACT Colour Space Conversion daughter card for IMPACT Video IMPCOM = IMPACT Compression GE = Geometry Engine (performs geometry/lighting calculations) RE = Raster Engine (performs pixel filling and other effects) CEP = Capture/edit/playback (with respect to video processing)
2 x Fast SCSI-2 channels (one internal, one external - see below) 2 x 3.5" SCSI bays (devices reside on a metal sled) (%) 1 x 5.25" SCSI bay (device resides on a metal sled) (%) 12 SIMM sockets (72 pin, full parity, 36bit, 60/70ns, gold-edge) (#) 3 or 4 EISA slots (*) (@) 2 GIO64 channels, with 3 or 4 slots (@) Socket for one CPU (R4000, R4400, R4600, R8000 or R10000 series) Internal speaker Audio daughter card (external connections listed below) NVRAM Dallas chip (real-time clock, system environment variables) PROM chip (boot EPROM, controls system startup) External sockets and ports Mono microphone socket Stereo headphone socket Stereo line out socket Stereo line in socket Stereo digital in/out socket (allows for 4-channel mode) Fast SCSI-2 port (50way MicroD) for SCSI Channel 1 10BaseT JR45 Ethernet port AUI Ethernet port (on the same channel as the 10BaseT port) Parallel port (standard PC-type 25-way) 2 MiniDIN serial ports PS2 Keyboard port PS2 Mouse port (use a 3-button mouse or equivalent) 13W3 monitor output (support for sync-on-green signal required) Stereo glasses port (eg. CrystalEyes) (%) Indigo2 uses metal disk sleds as a means of holding internal SCSI devices in place. The sleds slide in and out of the appropriate bay, making it easy to move devices around, swap with other devices, etc. The cost of 2nd-hand sleds varies depending on supply and demand. Remember though that it is possible to use an external disk on SCSI Channel 1 as the boot system disk (simply by changing the PROM settings), so an Indigo2 with no disk sleds can stil be used just fine. (#) Max RAM is 384MB in systems with R4K series CPUs, 640MB in R8000 systems, and 1GB in R10000 systems. Note that tin-edge SIMMs will work ok, but keep them clean! (*) If a GIO64 slot from the bottom 3 slots is used, the EISA slot sitting alongside will be inaccessible. If the use of an EISA slot is required, then the GIO64 boards are moved up as high as is necessary. However, it is possible for an EISA card to function just fine in the top slot with a 3-card GIO set situated below (conventional wisdom has it this wouldn't work, but it does, and is essential in fact for system configurations such as XL24+Indigo2Video+CosmoCompress+10/100). (@) Older (earlier) backplanes have 4 EISA slots and 3 GIO slots. Newer (later) backplanes have 3 EISA slots and 4 GIO slots. Only two logical GIO devices can be used in any Indigo2. Fig 1. Internal standard hardware features
The above is just a basic summary without technical details such as port bandwidths, etc. For SGI's general descriptions of Indigo2, see the Indigo2 Extreme and Indigo2 IMPACT product guides. More details of a technical nature can be found in the Indigo2 and POWER Indigo2 Technical Report. Note that I do not yet have an IMPACT Technical Report. Here is a list of the more important Indigo2-related documents on my site - I recommend you consult these as and when is necessary while reading this page.
Indigo2 IMPACT Product Guide Indigo2 and POWER Indigo2 Technical Report SGI Graphics Performance Comparison Tables (graphics primitives) SGI General Performance Comparisons (general real-world tests) 195MHz R10000 SPEC95 comparison between O2, Indigo2, Octane, etc. Indigo2Video IMPACT Video IMPACT Compression Comparison of O2 and Indigo2 Comparison of Indigo2 and Octane TRAM Information for IMPACT graphics IMPACT Texture, Graphics and OS Information "Silicon Graphics Indigo2: Extreme Computing" Silicon Graphics Indigo2, Personal Computer World, May 1993
See the main SGI index for other references and links to further sites.
When originally sold as new, an Indigo2 would normally come with several other items. Here is a list of some of the items which might contribute to a 'complete' system. These are dicussed in more detail in Section 9. Suffice to say here that most 2nd-hand Indigo2s come with only one or two of these items, mainly because the original owners often threw them away, or lost them over time, etc., though I do include as many items as I can with the systems I sell, based on system value.
Keyboard and mouse Power cable Manual(s), eg. Indigo2 Owners Guide (or Indigo2 IMPACT Owners Guide) CD media Mono microphone cable and clip Foot stands (to allow the unit to be positioned vertically) 50-way MicroD SCSI Terminator Metal locking bar (slides through the front of the system) Mouse mat
The minimum I would recommend obtaining with an Indigo2 is a keyboard, mouse and power cable.
Full Name Abbreviation CPUs: R4000SC 100MHz (1MB L2) R4K/100 R4600SC 133MHz (512K L2) R4600SC/133 R4400SC 100MHz (1MB L2) R4400/100 R4400SC 150MHz (1MB L2) R4K/150 R4400SC 175MHz (1MB L2) R4K/175 R4400SC 200MHz (1MB or 2MB L2) R4K/200 1MB/2MB R4400SC 250MHz (2MB L2) R4K/250 Graphics (all options are 24bit and utilise the GIO64 bus): 2D tasks: 24bit XL, 1 slot; (good for 2D/video, slow for 3D) 3D tasks: GR2-XZ, 2 slots; 2 GEs, 1 RE GR3-Elan, 2 slots; 4 GEs, 1 RE Extreme, 3 slots; 8 GEs, 2 REs Video: Indigo2Video (I/O, display, no hw [de]compression, IndyCam support) Cosmo Compress (hw [de]compression, IndyCam support, I/O to Indigo2V) Galileo Video (digital/analogue, I/O, display, no hw [de]compression) Fig 2. Earlier (Older) Indigo2 CPU, Graphics and Video options
There are significant architectural differences between the various CPUs one can use in Indigo2. Do not judge their performance based on clock speed alone. Although clock speeds increased over time, design improvements greatly increased efficiency, cache behaviour and performance per clock, offering better performance at lower clock speeds for CPUs such as the R8000 and R10000 (though there are important caveats with the R8000). Plus, the various CPUs were designed to be good at different things, focusing on different target markets. For example, R4600 was designed more for integer tasks (general applications), whereas R4400 was a more balanced CPU between integer (int) and floating point (fp) tasks. R10000 was a newer design, while R8000 was specifically aimed at 64bit fp processing with large caches (alas its basic int speed is not so good). NOTE: the R5000 CPU (a cut-down R10000 aimed at single-precision 32bit fp calculations commonly used in 3D graphics) was never used in Indigo2.
The early CPU and graphics options in teal Indigo2s have much in common with IRIS Indigo and Indy, except Indigo2 can have faster/better versions of certain components which were never available in Indigo or Indy, mainly because of cost, size, heat output and target market constraints in the other systems. However, the later components available for Indigo2 are much faster than the performance levels offered by Indigo or Indy, and can even beat O2 and certain older Octane configurations.
NOTE: It is important to distinguish between Indigo2 and the older IRIS Indigo - they are completely different machines. It's easy for someone unfamiliar with Indigo2 to drop the '2', but this is a big mistake that can cause much confusion on forums. This is especially important when asking questions on Nekochan, for example. So, never refer to Indigo2 as 'Indigo'.
The R4000 was the first CPU for Indigo2, at 100MHz. Early releases had no L2 cache to save on costs, but the performance tradeoff from this was too severe, so 1MB L2 was quickly added. I've not yet come across an R4000PC/100 Indigo2. R4K/100 is ok for doing basic tasks under 6.2, but for anything serious it's too slow, though remember that 3D gfx tasks don't depend so much on the main CPU, so something like an R4K/100 Extreme is just fine for doing medium-complexity non-textured 3D modelling. R4K/100 modules from Indigo2 can be used in Indigo.
The R4400 CPU followed, clocked at 100, 150, 175, 200 and 250 MHz. 150MHz systems are generally ok, and will run 6.2 well. They're slightly sluggish for 6.5 though. An Indigo2 R4K/150 module can also be used in Indigo, giving Indigo the best CPU it can have; there is a screw thread mismatch, but one can always swap over the spacer supports as well as the CPU. I can't comment on R4400/100 since I've never come across one; I should imagine they're better than R4000SC/100 by a noticeable margin, but not as good as R4K/150.
R4K/175 systems are rare. I've not come across one yet. R4K/200 and 250 systems are perhaps the most common older Indigo2 systems one finds for sale. Both came with either 1MB or 2MB L2. I have acquired an R4K/200 2MB system but have not yet benchmarked it. R4K/200 is definitely fine for running 6.5. An R4K/200 Extreme system is a good low-cost starter SGI system for any newcomer to SGIs who doesn't want to spend too much in the first instance but still wants to have good performance to begin with. Extreme has easily enough 3D power to enable a beginner to start learning OpenGL, rendering, modelling, etc. - with the exception of textured work though since Extreme does not have hardware texture mapping - the system will do it, but only in software, which is slow. For main CPU performance, R4K/200 is good enough to use GIMP and other tools without being annoyed by the waiting times.
R4K/250 is noticeably faster than R4K/200, giving good system response and feel even when using the latest 6.5 release; my main Indigo2 at home is an R4K/250 Elan with various extras.
There was one release of R4600 for Indigo2: 133MHz with 512K L2, just like the R4600SC/133 in Indy. Aimed at integer applications, it easily beats R4K/150 for such tasks, running 6.5 reasonably well in my opinion (its int performance is closer to an R4K/175). These systems are rather rare though; besides, faster R4K/200 systems are easier to find. NOTE: as far as I know, an Indigo2 R4600SC/133 module cannot be used in IRIS Indigo.
XL24 is designed for 2D tasks such as imaging and video. XL24 systems are quite rare; probably most people don't think of looking for them because they're more interested in 3D, eg. finding a cheap Indigo2 Extreme. However, for 2D and video tasks XL24 is much faster than any of the earlier 3D options. It has a very fast 2D pixel fill rate with a fast screen clear time, allowing for full-size/rate video display with scaling (one of the Galileo demos zooms an incoming video stream to full-screen). By contrast, the older 3D gfx options have a much lower raw pixel fill because it's more important for 3D tasks to have a hardware Z buffer and accelerated geometry/lighting processing, which XL24 doesn't have. Thus, for 2D tasks or video, use XL24. For 3D tasks, use one of the 3D options. A good example of the difference are the Doom benchmark results on the various options: XL easily outperforms XZ, Elan or Extreme because Doom uses a 2D engine (Doom is not a 3D game). In fact, for Doom, the results show XL matching the later HighIMPACT option. For 3D tasks though, the 3D options are faster.
However, the exception to this rule is texture mapping. None of the older gfx options support hw texture mapping, so the main CPU must do all the work. This means the process is very slow and CPU-bound (very definitely not real-time on any of the older options), but at least it does work. One can use 'move-as-wireframe' mode when working in 3D, drawing in textures only when an object is not moving; for a textured object drawn large on the screen though, it will take many seconds to draw a single frame. Still, for someone who can't afford an O2 or High/MaxIMPACT Indigo2, beginning with sw texture mapping is an alternative.
NB: Because of the way XL graphics works, sw texture mapping is faster on an XL24 system (though not that much faster) than any of the older 3D options. The exact reasons why are complex; full details can be found on my Hollidance Benchmark page. However, this is really just a hw-related performance curiosity - don't use XL for 3D textured work.
XL24 does have one other main advantage though in that it only uses a single slot, leaving lots of room for expansion, eg. an extra XL24 card for dual-head operation (ie. more than one monitor), SCSI cards, 10/100 Ethernet, and the various video options given in Fig 2. For example, in the past I have configured a system with XL24, Indigo2Video, CosmoCompress and a 10/100 Ethernet card - having as many as 3 extra option boards is not possible in an unmodified Indigo2 if any of the older 3D options are used because there's not enough space to include the other cards (the older 3D options use at least two slots).
A note on dual-head operation: it is not possible to use the 2D XL24 card and one of the 3D options in the same system. This is because the gfx libraries required for the different types of card set are also quite different.
The older 3D options (XZ, Elan and Extreme) vary in their geometry/lighting processing and pixel fill speeds. GE and RE chips perform these functions; Fig 2 shows how many GEs and REs each option has. Details on how these ASICs work are in the Indigo2 Technical Report.
The first 3D options to be released were XZ and Extreme. At the time, Extreme was the fastest desktop 3D gfx solution in the world. A little while later, due to customer feedback and improving costs, SGI doubled the number of GEs in the XZ option, but unfortunately this created some confusion because some of the marketing terms didn't change. Thankfully, the Indigo2 system itself does recognise the difference and so calls the later version Elan (hinv shows it as GR3-Elan) whereas the earlier version is shown as XZ. However, because Indy's only 3D gfx option is also called XZ, even though it is basically an Elan (same number of GEs/REs), even more confusion was caused. Thus, if referring to XZ, one should state which system it's in to avoid confusion, or instead clarify with the number of GEs involved.
Apart from doing geometry and lighting calculations in hardware, the other main difference between XL24 and the 3D options is the inclusion of a hardware Z buffer.
Because XZ and Elan both have just 1 RE, for many real-world 3D tasks the speedup from XZ to Elan is often not that large because pixel fill can often be just as important as geometry processing power (see my Inventor results for examples). There is usually a difference, but the difference varies. The greater the amount of shading required, the smaller the difference. A task with little shading, eg. a points-only data set, shows the greatest difference. Various examples of this can be seen on my Performance Comparisons Page.
Fig 2 shows the 'earlier' video options for Indigo2. All these options use 8bits per channel for video processing, or 4:2:2.
Software drivers for video options are installed separately from the main OS. For IRIX 6.2, the drivers are usually on a separate CD, with updates found on the latest patch set. For IRIX 6.5, the drivers are found in the 'unbundled' subdirectory on the 'Foundation 2' CD, with updates in the 'unbundled' subdirectory of the 'Overlays Part 3 of 3' CD of whatever particular update release one is using.
Indigo2Video [Indigo2V] is designed for video I/O display, blending and keying effects, and for use with the IndyCam digital camera. The 26-way socket presented at the back of the chassis is normally connected to a breakout cable or breakout box, providing 2 composite video inputs, 1 composite output, 1 SVideo input and 1 SVideo output. Next to the 26-way socket is an IndyCam socket for connecting an IndyCam digital camera (used in this way, the IndyCam socket is for digital video input only). It is possible to convert the IndyCam socket into a full CCIR601 digital video I/O port using a 3rd-party Miranda adapter, but these adapters are very rare.
The Indigo2V board does not have any kind of compression hardware. It is not designed for video capture/editing/playback (CEP), unless one has a disk array which can handle the bandwidth of uncompressed video. One can of course use the main CPU to attempt CEP tasks, but even with a good CPU one will not achieve much better than 15fps at half-size video (it would probably work quite well at quarter-size though, and so is suitable for 'Internet' movies). Some kind of video hw acceleration is required for proper CEP abilities, and in theory this is provided by CosmoCompress - more on this in a moment. Capturing single stills works fine though.
Theoretically it is possible to capture uncompressed video, but as mentioned this would require a disk array of some kind, and unfortunately Indigo2's SCSI channels are not really fast enough. One would likely need to have extra SCSI option boards to split the video stream across multiple channels and devices; not impossible, but definitely much easier to do with an O2 or Octane. There is a FibreChannel adapater for Indigo2 which would be ideal (details in Section 6) but it's very rare. However, there is a special version of the CDROM base tray which extends the internal SCSI Channel 0 to an extra socket at the back - one can then stripe disks across both built-in channels, which is just about enough for uncompressed video capture in certain lesser formats (hence the use of Indigo2 IMPACT systems for Discreet Flint).
Indigo2V is ideal for video conferencing, capturing stills for use as textures or backgrounds, sending onscreen graphics to VCR, TV or other display device for live recording, viewing or transmission. A range of video processing functions can be used to perform various video effects on one or more input streams (keying operations, wipes, fades and dissolves, etc.), with the results sent to a video output, or one can combine video with onscreen graphics. More obscure effects such as using a video input as a paint brush are also possible (supplied example demos show off these abilities). The output area can be a PAL or NTSC size area, or almost full-screen. Input streams can be zoomed or reduced by an integer fraction.
For more details on Indigo2V, see the Indy/Indigo2Video Application Brief. NB: if you have acquired an Indigo2V board but do not have a breakout cable/box, I can supply a home-made breakout cable (as pictured above) for 75 UKP. See my SGI Depot page for details.
As stated earlier, Indigo2V provides video I/O and display abilities, but does not include compression/decompression hardware, which is required for full-size/rate video CEP. CosmoCompress provides this hw acceleration, supporting full-size full-rate video CEP of JPEG compressed video. I tested a CosmoCompress Indigo2 during November 2001; its stability and reliability is very impressive, given that Indigo2 is 1993 technology. I was able to capture all of the movie, "Phantom Menace", some 2 hours 15 minutes of PAL video (768x576 at 25fps [50 fields/sec]) without a single dropped frame or picture artifact. The resulting file size was 11.4GB, giving a compression ratio of about 20:1 (even though the picture quality was superb!). One can force compression ratios as good as 4:1 (the closer to 1:1, the better the quality), but in practice it doesn't need to be anywhere near that good to represent the original signal very well (forcing it to around 7:1 is about the best it needs to be for practical high-quality work). For reference, this is the system spec and the video settings I used:
R4K/250 (2MB) Indigo2 with XL24 gfx, Indigo2V, CosmoCompress and 10/100 card. 128MB RAM, 4GB system disk, 18GB data disk. Video settings: Full-size PAL 25fps (50 fields/sec) QuickTime format SGI-JPEG Two field Constant bit rate (disk-based 3MB/sec) Lock to VTR ON, Synchroniser mode ON, Prefilter ON. Stop recording if frame drop occurs ON. Do NOT use constant quality (ie. the percentage quality setting). This is because making every frame the same percentage quality in terms of JPEG compression results in every compressed frame being a different size, whereas constant bit rate gives a much smoother and more even flow of data into the Cosmo engine. See the Cosmo release notes for full details. It also results in much smaller file sizes and better quality images. Fig 3. Example Indigo2 with CosmoCompress.
CosmoCompress has two IndyCam-type ports. With the Cosmo board placed above the Indigo2V board, one of these IndyCam ports will be above the same kind of port on the Indigo2V board. Cosmo is linked to Indigo2V via a short cable that connects these two ports together, providing a direct connection for video transfer. This is one reason why Cosmo works so well: the data does not go via Indigo2's main memory subsystem; instead it uses a private video bus. There are some tradeoffs involved though, details of which are in the Cosmo release notes. The second IndyCam- type port on the Cosmo board is, unsurprisingly, for use with an IndyCam camera (since the connector cable uses the one on the Indigo2V board). If you cannot find an original link cable, in theory one could create such a cable by using the connectors from two IndyCams, but keep the cable length as short as possible.
There are certain limitations one must bare in mind with the use of CosmoCompress, mainly software-related. These are as follows:
One interesting aspect of using a CosmoCompress Indigo2 for video capture is its immunity to being interupted during processing. I tried to force frame drops by running up Netscape sessions and copying large files around during the capture, but no frame drops occured. Even more impressive than this, and something I've never seen on any PC, is that while CosmoCompress is capturing the data, the video displayed onscreen is still shown at full frame rate, even when one runs other tasks at the same time. Abilities such as this are a testament to Indigo2's superb design, and an example reason why it was so expensive when new (as were the video options). It's no wonder Indigo2 was so widely used for movie production, animation and broadcast (and continued to be used long after Indigo2 was replaced by Octane, eg. some Indigo2s were used for the film Gladiator).
Galileo Video is the more professional version of Indigo2Video, offering D1 CCIR601 digital in RGB and Y/R-Y/B-Y formats as well as SVideo and composite, all in PAL/NTSC/etc. I haven't used Galileo Video myself so I can't discuss it much from personal experience. For full details on Galileo, see Section 1 of the Indigo2 and POWER Indigo2 Technical Report and also the Indigo2 Extreme application brief. Here is an extract from the Silicon Studio technical report which summarises Galileo (in essence, it adds digital I/O and underlay abilities, plus some other features, to all the features offered by Indigo2V):
Galileo has these features: Video Stream in the Galileo Video system is 4:2:2 YUV (Y,B-Y,R-Y) in 24bit resolution (8bits per component) Full-size video windows in NTSC (640x486) and PAL (768x576) formats Alpha blending of video and graphics in real time at rates as high as 60 fields/second Video-to-graphics conversion with anti-aliasing: - Thirteen zoomed and decimated sizes (1/7 to 1:1 to 7:1) - Pan - Selectable de-interlace filtering Computer-generated graphics filtered to NTSC and PAL video: - Anti-aliasing - Selectable flicker reduction - Output may be NTSC- or PAL-sized or nearly full-screen Keys generated from chroma/luma of the video signal or from pixels in graphics window X-Y pixel-wipes and fades generated in real-time Two 24bit-resolution non-overlapping video windows, or one 24bit-resolution and two 12bit-resolution non-overlapping video windows on screen simultaneously. Frame buffer for synchronizing video signals, storage of video frames, or transfer
Such later systems are normally referred to as 'newer', 'later', 'IMPACT' (after the name of the new graphics options) or R10K (after the name of the new R10000 CPU) systems, or some combination. Be wary of these terms though, especially the phrase 'IMPACT system', since it's possible to have a system with an older CPU but newer graphics, or vice versa (the former are quite common, while the latter are very rare but did exist).
'IMPACT-ready' usually refers to an Indigo2 that in some sense includes elements of the later technologies, though the term is a bit vague sometimes and some unscrupulous sellers may use it in a misleading way. At the very least the system should have a later PSU that supports IMPACT graphics and R10K CPUs, though even then there are several different versions.
Here is a summary of the later Indigo2 technologies:
Full Name Abbreviation CPUs: R8000SC 75MHz (2MB L2) R8K/75 R10000SC 175MHz (1MB L2) R10K/175 R10000SC 195MHz (1MB L2) R10K/195 Graphics: SolidIMPACT, 1 slot; 1 GE, 1 RE, 0 TRAM HighIMPACT, 2 slots; 1 GE, 1 RE, 1MB or 4MB TRAM High-IMPACT-AA, 2 slots, 2 GEs, 1 RE, 1MB or 4MB TRAM MaxIMPACT, 3 slots; 2 GEs, 2 REs, 1MB or 4MB TRAM Video: Indigo2Video-for-IMPACT (identical in function to old Indigo2Video) IMPACT Compression (compression support, includes I/O) IMPACT Video (digital solution) IMPACT Colour Space daughtercard for IMPACT Video (video-as-texture) IMPACT Channel Option (ICO) (multiple output channels for VR/HMDs/etc.) Fig 4. Later (Newer) Indigo2 CPU, Graphics and Video options
The newer R10000 CPU (R10K for short) was a better design than R4400, giving much faster performance (especially for 64bit fp tasks) even though the clock speed is lower than some R4xxx CPUs, eg. an R10K/175 is at least 2X faster than an R4K/200 for 64bit fp processing, but can be as much as 5X faster for some codes. Integer speed is typically 2X faster too.
There was also the R8000 CPU (really a chip set of several ASICs), which was designed specifically for complex 64bit fp processing - it was expensive because of the multi-chip design and large L2 cache, difficult to code for, but could be very fast if properly exploited. R8000 systems are quite rare - the only version released for Indigo2 ran at 75MHz with a 2MB L2 cache, offering integer CPU speed similar to an R4400/175, but fp speed more like that of an R10K CPU. Note that R8K Indigo2s can often be good bargains because a seller may assume a low value due to the low clock speed number.This is a good example of where efficiency of design can lead to a confused market place; I suspect some people think in terms of PC CPUs when deciding on a price, but the R8K is definitely no Pentium (for complex fp tasks, it can be ten times faster than a Pentium at the same clock speed). Alas, having optimised code is critical to get the most out of an R8K - running a program compiled for an R4K on an R8K which normally not give an immediate speedup.
The 'main' version of R8000 in use at the time in POWER Onyx and POWER Challenge ran at 90MHz with 4MB L2; very expensive, but giving performance equivalent to a Cray YMP at a fraction of the cost (at 90MHz, R8K can be as much as ten times faster than a P90 for 64bit fp tasks). R8000 Indigo2 Extreme systems were commonly used for desktop CFD tasks in oil and gas markets, etc. I saw a room full of them many years ago at a launch show in SGI Falkirk (Scotland) - they certainly were fast! R10K Indigo2s are much more common than R8K Indigo2s in the 2nd-hand market though. There was originally going to be a 150MHz R8K, but the R10K CPU was easier/cheaper to make, much easier to clock up to higher raw MHz speeds and easier to code for, so faster R8Ks never happened.
In addition to CPU performance increases, the new R8K/R10K designs increased the maximum RAM in Indigo2 from 384MB to 640MB/1GB with R8K/R10K respectively via the use of a new motherboard. Early documents said the limit was 640MB [256+256+128] for R10K, but this was only due to heat concerns about the early 64MB SIMMs. Later 64MB SIMMs had fewer chips on them, allowing 768MB to work just fine with R10K (3 x 256MB kits, ie. 12 x 64MB SIMMs), but in mid-2002 Bert Heise discovered that 128MB SIMMs also work (but only with R10K systems, and only by using two of the three banks, ie. 8 x 128MB), giving a maximum of 1GB RAM in Indigo2. The memory structure of Indigo2 prevents more than 1GB being used.
Note that all R8K and R10K CPUs have some L2 cache, so there's no need to use the SC suffix when discussing them on forums, though sometimes people do. It's worth mentioning with R8K systems though since an R8K Indigo2 will always have 2MB L2, vs. 1MB L2 for all R10K Indigo2s.
When considering an R10K Indigo2, remember that fp processing power would usually be much higher if one used an Octane with the same CPU, but Octanes can be more expensive to maintain and upgrade (it depends on what extra options one has to add to the Octane; if none, then an Octane is probably a better idea on purely performance grounds). If you need the absolute best possible fp speed, then a dual-CPU Octane might be a good idea (or indeed a Fuel, Tezro, O300, O350, etc.) If not, then an Indigo2 is much easier to deal with and generally cheaper to upgrade to better components, although Octane spares prices have dropped so much in recent years that buying a good CPU upgrade for Octane is not very expensive anymore. Just remember that the best R10K in Indigo2 is 195MHz, whereas Octane can utilise up to a dual-R14K/600MHz with 2MB L2. More details on these issues are on the Indigo2 vs. Octane Comparison page.
The GE and RE ASICs used in IMPACT graphics options are completely different designs to the earlier chips used in XZ/Elan/Extreme. The IMPACT ASICs are faster, offer more features and in certain configurations support hardware texture mapping for real-time manipulation of textured models or accelerated image processing applications; all older Indigo2 gfx options lack hw texture mapping and thus force such tasks to be done in software, which is very slow.
IMPACT options support 32bit RGBA colour (older options were limited to 24bit RGB), offering proper Alpha transparency support for 2D/3D imaging and video.
TRAM means Texture RAM, ie. memory used for storing texture data for hardware texture mapping or accelerated 2D imaging. A system without TRAM does not support hardware texturing. For full details on TRAM issues, please see the TRAM Info page. The most important point is that a system with just 1MB TRAM is limited to 16bit colour for textures, which in practice means having horrible colour banding effects on textured surfaces. Games like Quake2 look rather nasty with only 16bit colour.
SolidIMPACT includes hardware acceleration for non-textured tasks (shaded, wireframe, points, etc.), aimed at CAD markets, animation, etc. It is not possible to add hardware texturing to a SolidIMPACT card, but it does have the advantage of only using one slot, giving plenty of room for expansion, eg. a dual-head system with Solid + High + 10/100 card.
HighIMPACT, which uses two slots, is the same speed as SolidIMPACT for any non-textured task, but includes hardware texture mapping support, with either 1MB or 4MB TRAM. Thus, modelling with textures on HighIMPACT is a real-time interactive process, unless the models are large or the amount of texture data causes severe memory swapping between TRAM and main RAM (intelligent software coding can lessen many of these issues though, eg. scene culling and clever texture paging such as that used by the ELT demo which allows real-time manipulation of a 50MB image).
HighIMPACT supports more resolutions than SolidIMPACT, though this depends on the type of monitor you're using, eg. resolution support is rather limited on a GDM20D11, whereas many more resolutions are possible on a GDM20E21 or later monitor.
There is a rare version of HighIMPACT, called HighIMPACT-AA, which has 2 GEs instead of 1 (everything else the same), but there is no performance difference because the GEs used in the AA version are just early versions which are a different design - the overall performance is the same. Besides, in practice it's often the pixel fill rate which is more important, ie. if you need more speed then get MaxIMPACT. My thanks to Sean Caron for reminding me of the HighIMPACT-AA, which I had forgotten about. My performance comparisons page has some Inventor results for the HighIMPACT-AA.
MaxIMPACT, which uses 3 slots, is twice as fast as HighIMPACT for everything. It is also, therefore, twice as fast as SolidIMPACT for tasks such as CAD which don't need texturing. Unfortunately, there never was an option for Indigo2 with the speed of MaxIMPACT but without hardware texturing; by contrast, Octane can have SSI, which is like a MaxIMPACT with no hw texture, though Octane's IMPACT-type graphics options don't have a 1MB TRAM equivalent. Thus, if you don't use textures, but want faster shaded/wireframe performance than SolidIMPACT, then use MaxIMPACT with 1MB TRAM (and if cost is a problem then you're probably better off with an Octane SSI or SSE).
MaxIMPACT supports even more resolutions than HighIMPACT. Note that if you already have a SolidIMPACT Indigo2 and wish to upgrade, it may be cheaper to buy an Octane SSI/SSE and then sell off the Indigo2 instead of upgrading the Indigo2 to MaxIMPACT. These kinds of issues are closely related to supply and demand though; if supplies of Octanes dry up, then prices rise.
36bit RGB (12bits/channel) is possible on a HighIMPACT or MaxIMPACT system with 4MB TRAM. If you need better than this, such as 48bit RGBA, then you should use Octane. Typical application areas which can take advantage of such high quality visuals are medical imaging, visual simulation, broadcast and video, post production, digital prepress, GIS, etc.
As a technology, IMPACT offers much faster shaded and points performance than the older XZ-era technology, and of course hardware texture support means texture mapping can be as much as 100X faster on High or MaxIMPACT (this texture comparison also applies to Solid vs. High/Max too since Solid does texturing in software), though note I don't yet have a benchmark which demonstrates this difference. The tests involving texture on my Performance Comparisons page only use a single small texture. A model containing a large number of textures, or very large textures, would show much greater differences in the tests. At some point I shall construct a benchmark like this, eg. converting a Doom level to Inventor might be one possibility.
The graphics option one selects determines the available expansion possibilities. The more slots one uses for the graphics, the fewer slots will be available for other options such as video cards, SCSI, 10/100 Ethernet, FDDI, etc. It's probably possible to hack an Indigo2 chassis so that EISA options can be positioned elsewhere, but for most this isn't. So, barring some home hardware reconstruction, here are some example configurations based on the amount of space taken up by the graphics sets (in these examples, Indigo2V- FI could easily be replaced by IMPACT Compression [IMPCOM] instead, but IMPCOM cards are very hard to find):
Solid + Solid + Indigo2V-FI + 10/100 High + High High + Indigo2V-FI + 10/100 Max + 10/100 Max + Indigo2V-FI Max + IMPCOM Max + IMPVID High + Indigo2V-FI + SCSI Solid + SCSI + SCSI + 10/100 <etc> Fig 5. Example Indigo2 configurations
Thus, when deciding on what system to get, bare in mind not only what you want the system to be able to do in terms of graphics, but also what you might want to do in the future. However, an alternative expansion path is to switch to a different system as one's needs change, eg. O2 or Octane, etc., selling off the old system to help pay for the upgrade. It's also possible that if you want a particular feature set, then Indigo2 might not be the right machine for you (depends what you want to do); for example, having MaxIMPACT-level performance + video compression + 100MBit Ethernet is not possible on an unmodified Indigo2 (not enough physical space) in which case one must tradeoff and use HighIMPACT instead, or Octane (which does have the added advantage of Gbit Ethernet support, faster VPro gfx options, etc.); O2 offers much of this as-standard of course, though with performance tradeoffs (MaxIMPACT's basic pixel fill is much higher than O2's CRM graphics). More on these issues later.
Indigo2V-FI is exactly the same as Indigo2V, except it's designed to work with IMPACT graphics options instead of the older XZ/Elan/Extreme. If you don't need compression, ie. you don't want to capture movies and edit them, then this is a good solution. Example uses include live graphics to VCR, recording animations and demonstrations, real-time demos, broadcast, video conferencing, underlay/overlay/blend/wipe/fade effects, etc. This option was made available because IMPCOM was a lot more than many users needed, offering quality levels not possible on a PC at the time, while Indigo2V-FI was considerably cheaper. See the Indigo2V section above for full details on Indigo2V-FI's abilities.
Note that CosmoCompress cannot be used with Indigo2V-FI if the system's CPU is an R8K or R10K. This is because the CosmoCompress software was compiled for R4K systems and never supported the later CPUs. I don't know whether Cosmo would work in an R4K IMPACT system with Indigo2V-FI - it might do, though someone I asked said it didn't (I'll try this out sometime). If it does work, then something like HighIMPACT + Indigo2V-FI + Cosmo is possible. Although this functionality is also possible (at much better quality levels) with IMPCOM, it is probably a lot easier to find an Indigo2V- FI and CosmoCompress set than an IMPCOM card. Certainly cheaper, that's for sure. IMPCOM is very rare.
IMPACT Video [IMPVID] is an all-digital video device, focussing on 10bits per channel studio-quality video processing, ie. up to 4:4:4:4 quality. Most users will not need this level of quality, but remember it was mainly aimed at professional users, eg. Discreet Flint systems. Also, capturning uncompressed video using IMPVID requires the use of a disk array of some kind (this task is much easier to achieve with Octane, for various reasons).
IMPVID is rather like Indigo2V in that it does not include hardware compression, but the difference is the I/O channels are all digital, supporting a variety of PAL and NTSC digital formats with higher fidelity. Similar effects are also possible, including overlays, dissolves, fades, wipes, chroma keying, luma keying, shadows, etc. If you want to do professional and studio quality video on Indigo2, then this is the card to go for, but you'll obviously need the appropriate digital video decks and other equipment to go with it, especially the IMPVID breakout box/cable.
The IMPACT Colour Space Conversion card [IMPCOL] is an optional daughter card for IMPVID which offers high-quality, 10-bit color space conversion in real-time between YUVA and RGBA. More importantly for broadcast and 3D graphics applications, IMPCOL supports video texture mapping - the ability to use a video signal as a texture map on any 3D object. This makes possible a wide variety of live real-time 3D video effects, all in very high quality, up to 10bits/channel 4:4:4:4. Although O2 has this ability built in because of O2's UMA architecture, O2 only supports up to normal broadcast-quality 8bit 4:2:2 video.
Unfortunately, due to the rarity of IMPCOL daughtercards, deciding to go for IMPVID + IMPCOL could involve a long wait; so far, I've only been able to obtain a single IMPCOL card, and I'm keeping that one. :D I've never seen another for sale. In general, unless you need the digital super-high quality of IMPVID, then you're probably better off with an O2 for doing live video effects, Besides, O2 has other advantages (even though it's raw 3D pixel fill is lower), such as virtually unlimited texture capacity (limited by main RAM size) which can be very useful in performing complex effects such as multiple movies-as-textures in 3D scenes. However if you do need the quality of IMPVID with the features of IMPCOL, but cannot find an IMPCOL card, then use an Octane MXI/MXE with Octane Digital Video instead, which might cost more (depends on supply/demand issues) but would make other aspects easier to deal with, such as uncompressed video capture, and permits better CPU performance, much more main RAM, etc. Indeed, oOne could say that later technologies like IMPVID began to reveal the limitations of Indigo2, ie. CPU power, RAM capacity, and especially its disk I/O speed and default networking (I'll never understand why SGI did not replace the built-in Ethernet port with a 100Mbit port when they released the newer motherboard for R10K systems; ditto changing the SCSI to UW or U2W).
IMPACT Compression [IMPCOM] is probably the most sought after of the later video options. Although Indigo2V-FI offers I/O display and live effects, the lack of compression limits its long-term usefulness, unless one never needs editing abilities - many users just need stamp-to-tape. Even if Cosmo does work with IMPACT graphics (not sure yet, though general opinion says no), it would still mean that the best possible combination in an unmodifed Indigo2 would be High + Indigo2V-FI + Cosmo, ie. a major tradeoff of 3D speed against video abilities.
By contrast, IMPCOM is a single card that has I/O ports on the back edge of the card aswell as built-in compression hardware. Thus, it has the abilities of both Indigo2V-FI and Cosmo, but also includes more advanced features, including:
- Better quality compared to COSCOM, as good as 2:1 (COSCOM is 4:1 at best) - Support for 10bit 4:4:4:4 video (designed to partner with IMPVID) - No need for a breakout box or cable. All I/O ports are presented at the back of the system on the card edge.
Some users may find the final option for IMPACT very useful, if their work involves visual simulation or VR. The IMPACT Channel Option (ICO) allows one to use multiple monitor or HMD outputs, or other projection devices, to support a variety of VR and stereo applications. The card includes support for full-scene anti-aliasing at VGA, SVGA and NTSC resolutions. ICO is very rare though - I've not yet seen one for sale.
Here is a summary of the older vs. newer Indigo2 components, but remember that it's possible to have mixed systems, eg. R4K/250 SolidIMPACT is quite common, while R10K/195 XL24 is possible but unusual.
Older (Earlier) Newer (Later) CPUs: R4000SC 100MHz (1MB L2) R8000 75MHz (2MB L2) R4600SC 133MHz (512K L2) R10000 175MHz (1MB L2) R4400SC 100MHz (1MB L2) R10000 195MHz (1MB L2) R4400SC 150MHz (1MB L2) R4400SC 175MHz (1MB L2) R4400SC 200MHz (1MB/2MB) R4400SC 250MHz (2MB L2) Graphics: XL24 SolidIMPACT GR2-XZ HighIMPACT GR3-Elan MaxIMPACT Extreme Video: Indigo2Video Indigo2Video-for-IMPACT Cosmo Compress IMPACT Compression Galileo Video IMPACT Video IMPACT Colour Space daughtercard IMPACT Channel Option Fig 6: Older (Earlier) vs. Newer (Later) Indigo2 Components
FastSCSIndigo2 EISA Phobos G160 GIO 10/100 FastEthernet Phobos E100 EISA 10/100 FastEthernet 3Com 3c597 EISA 10/100 FastEthernet (see my info page) [Image 1] [Image 2] FDDI Single-Attach GIO FDDI Dual-Attach GIO Prisa NetFX-GIO64 FibreChannel Adapter FORE ESA-200E EISA ATM VME Expansion board ('bit3' cards for industrial Indigo2s) Presenter Adapater Multi-port serial expansion board "TIME DRIVER" GIO DSP Accelerator (for applications such as Avid, etc.) Roland RAP-10 board (see the Device Drivers Programmers Guide) Ciprico UltraSCSI GIO Adapter SCRAMNet real-time shared-memory expansion card HIPPI GIO64 network card (up to 100MB/sec) ISDN? (not sure about this yet) Fig 7. Further Expansion Options for Indigo2
The Prisa NetFX-GIO64 FibreChannel Adapter
FORE ESA-200E EISA ATM Adapter
Thanks to Atro Tossavainen <atossava[HAT]cc.helsinki.fi> for this information. He told me:
http://boulder.noaa.gov/noc/fore/lib/techpubs/docs/manuals/adapters/pdf/s0072_01.pdf The FORE ESA-200E EISA ATM adapter came in two versions, one with a fibre interface, one with a RJ45 copper interface. We've got this stuff on several Indigo2's and it works great. ...
The TIME DRIVER DSP Accelerator Card
The ATLIGHTSPEED TIME DRIVER board is an ultra-acceleration plug-in board for the Indigo2 and Indigo2 IMPACT series of workstations. ATLIGHTSPEED Ultra-Acceleration combines the speed of hardware with the open flexibility and versatility of software. Its reprogrammable hardware can be reconfigured "on-the-fly" to deliver supercomputer speed to the desktop. And, through its ever-growing library of software algorithms, ATLIGHTSPEED continues to offer ultra-fast image processing with increased functionality.
The ATLIGHTSPEED board is seamlessly integrated into Avid's Media Illusion graphics and effects software for film and video. Media Illusion image processes like keying, compositing, color correction and image transforms are accelerated with extraordinary speed. ATLIGHTSPEED installs into any Indigo2 or Indigo2 IMPACT with one open GIO-64 slot and shares a logical GIO-64 slot with the IMPACT video card."
I have one of these boards; here is a picture of it.
The SCRAMNet Card
Very rare I expect, but rather interesting. From:
Shortform Catalogue [original copy] EISA Card Summary [original copy] Part Number Listings [original copy]
The GIO64 HIPPI Card
If you know of any other expansion options which exist for Indigo2, please email me.
Much thanks to Michiel Roos <email@example.com> for locating information about the more obscure option cards described here.
With a good CPU (R4K/250 or better IMO), Indigo2 is a very responsive system, though I definitely recommend an R10K if one is using any version of IRIX 6.5.
Comparisons with modern PC CPUs are quite common in SGI discussion forums. It never ceases to amaze me the way PC users keep comparing modern PC components to SGIs that in some cases are now almost two decades old; but wait a minute, even the now ancient Geforce256 was based on SGI's high-end IR technology, so of course they're going to beat SGI's old desktops! One would be much more surprised if, after almost twenty years, PCs hadn't surpassed systems like Indigo2 in many ways; somehow PC people manage to ignore the fact that they're comparing CPUs which are an order of magnitude apart in clock speed and decades apart in design (in the early 1990s, concepts such as MMX hadn't been invented yet). If anything it's a compliment to SGI that people keep using their old systems as some kind of benchmark.
PC users should bare in mind that many of the things SGI desktops like Indy and Indigo2 could do when they were 'current' systems were completely impossible on PCs at the time and remained impossible for years. Indeed, the reliability of an old SGI like Indigo2 is hard to match even with a modern Windows PC (one must turn to Linux on a PC to obtain the equivalent degree of OS stability).
Of course a modern PC is going to outperform an SGI from 1995 for CPU- intensive tasks (massively so), but raw CPU speed is not why people who prefer to use 2nd-hand SGIs do so. Factors such as reliability, stability, security, an easy-to-use and friendly OS, feature-rich systems (like O2 and Indy), etc. can be more important. Besides, as mentioned above, an old system like R4K/250 or R10K Indigo2 feels fast, whatever the theoretical performance numbers may be. Then there's the sheer amount of hardware that's included as standard on SGIs, eg. Indy, with built-in video, ISDN, SCSI, Ethernet, full 4-channel 16bit stereo sound, stereo glasses port, digital camera port, etc. PC users who keep ranting on the newsgroups about PC vs. SGI should try and take a typical PC from 1994 and see how far they get speccing it up to include all the things Indy has built-in. PCW said that, at the time, to do so would have cost twice as much as an Indy and would result in a PC that was nowhere near as reliable, stable or easy to use.
However, one unfortunate result of low prices for Indigo2s is the almost complete disappearance of low-spec Indigo2s from the market, which is a pity for those looking for a real beginner's system. The obvious train of thought is, why buy an R4K/100 XZ when just a moderate increase in budget will probably be enough for a SolidIMPACT system? Or even a low end Octane? This may be true, but it's bad for those with strictly limited budgets. Companies don't make enough on a low-spec sale for the effort to be worth it; they can make more by selling off the parts of low spec machines separately instead (RAM, disk, disk sled, motherboard, backplane, PSU, chassis, skins, etc.)
Some people simply may not have enough to get an Indigo2 with a great spec, especially now that certain parts such as MaxIMPACT have become much more valuable (this was not the case when I last did a major update of this page in the early 2000s). If one only has $200 then something like an R4K/150 Indigo2 Elan is ideal for learning UNIX, C, 3D graphics, etc. One can always upgrade later, or buy something better and sell off the old system. Transferring components is common too (RAM, disk, CDROM, etc.) If one has no 3D demands at all, or very little, then an R4000SC/100 32MB/1GB GR2-XZ should be very cheap indeed. And sometimes one can get lucky, eg. eBay bargains (though do research carefully before buying - if a system comes with no OS, disk or sled, then further costs will be involved to get the system up & running).
Although the base configuration uses older limiting technologies in certain areas (Ethernet, SCSI, etc.) there are often ways to get round such issues, and as long as parts for Octane are so costly in many cases it may make more sense to use an Indigo2, though an O2 is another option, or indeed Fuel. Setups such as dual-head, good quality video, reliable rendering/animation work, etc. are easy to organise with one or more Indigo2s, though the performance of several R10K Indigo2s can of course be easily beaten by a single quad-CPU O300. O350 or Tezro. However, some people choose Indigo2 just because it's interesting to use.
For those with a moderate budget, an R4K/250 Extreme system is a good solution: a decent CPU and 3D non-textured gfx that's fast enough to learn 3D/animation and produce some serious work, especially when combined with Indigo2Video. I used to use a system such as this for most of my main day-to-day tasks, though I downgraded it to Elan in order to make enough space for a 10/100 card and a SCSI breakout port that connects to channel 0. Later I had a much faster R10K/195 MaxIMPACT, but there's no need to use it for most tasks, which also saves on power consumption.
These days though, spending just a little more (often as little as an extra $40 - just sacrifice a few beers!) means one can get an IMPACT system, typically a SolidIMPACT. The notes above explain the advantages this has. If there is a desire to do mostly 3D work, then starting with SolidIMPACT if possible is a good idea. There isn't any need for the CPU to be an R10K, and in fact sometimes for 3D tasks an R4K/250 will beat an R10K/175 just because of the way 3D tasks work (single-cycle loads and stores, level 2 cache issues, etc.), though do bare in mind that only MIPS4 systems like R10K can make use of the latest MIPS4 Nekoware freeware applications.
Modern-day caveat (Dec/2013): since 2010 the value of R4K/250 CPU modules has increased significantly, due to demand from companies who help maintain medical scanner systems based on R4K/250 Indigo2s. As a result, what used to be an ideal entry into the 2nd-hand SGI world, ie. an R4K/250 Indigo2, may now be hard to find or expensive. Thus, an R10K Indigo2 may actually be cheaper, and is certainly the better choice if one has the option.
Others may have a luxury of a larger budget. If you want to go all-out for 3D power, then MaxIMPACT is a great solution, though it can be rather expensive now due to short supply and high demand. MaxIMPACT has much faster raw 3D speed than O2 and can be used for serious work even today. HighIMPACT is obviously going to be cheaper and would be the better choice if there is a desire for other options to be included such as 10/100, video, extra SCSI ports, etc. - refer to Fig 5. Again, if the focus is 3D, one does not need an R10K in the same system since it's the gfx system that does most of the work - an R4K/250 would suffice, saving on costs. However, an R10K would help with any application overhead, numerical processing, etc.
If the focus is CPU speed, or if one desires all aspects of the system to be as good as possible, then go for an R10K Indigo2, even if that means starting with SolidIMPACT to minimise costs (upgrade later). R10K/175 systems might be cheaper but I dont think the cost saving is worth it; just get an R10K/195, though this trend may reverse if supplies dry up. An alternative is Octane of course, which at least gives an upgrade path beyond R10K/195 and MaxIMPACT, although upgrades maybe be more expensive for Octane. The price differences between various CPU and graphics options for Indigo2, Octane, O2, etc. vary all the time, strongly influenced by supply/demand, yet there's always the chance of an eBay bargain, luck of the draw, etc.
Lastly, it's worth pointing out that, as far as an integrated system is concerned, Indigo2 can at least have an internal CDROM and extra SCSI device such as a DAT, Floptical or disk. Indy can have an extra internal disk or Floptical, but not a CDROM or DAT. O2 has a built-in CDROM, but 2nd-hand models often have an older 4X or 12X CDROM and R10K O2s can only have one internal disk; there is no space for something like a DAT or Floptical. Thus, an Indigo2 with internal 32X CDROM and a modern DAT drive is an excellent all-in-one system, though the extras will add to the weight of course.
Conclusion: obviously, there are tasks for which Indigo2 is not suited (more on this in the next section), but for many users Indigo2 may be ideal.
7.1 Disk Bandwidth
Indigo2 uses FastSCSIndigo2, which is limited to 10MB/sec per channel. This is more than enough for most tasks, but if one is dealing with large files or considering video processing, then it could be an issue. The obvious solution is to include one or more extra SCSI cards, though these are not that easy to find. Alternatively, one can stripe across both standard channels to give 20MB/sec maximum speed, perhaps even customising the system so that there is an external port for channel 0; my system has such an external port, though it is an original system which was already like this, using a different version of the CDROM base tray.
Also, 2nd-hand 50pin narrow disks are now quite hard to find and expensive, although thankfully one can always use a 68pin disk or 80pin SCA plus a converter module (this is what I do with Indigo2s I sell, typcally fitting them as standard with a 36GB SCA + adapter). So, it is possible to scale up Indigo2's disk bandwidth if required - it's just more complicated than using a system such as O2 or Octane which already has UltraSCSI (40MB/sec) or better, or indeed Fuel which has U160.
If one intends to do uncompressed video properly, then O2 is a better choice, while those with a bigger budget should consider Octane's higher- end options (XIO-based 4-port USCSI, FC options, QLA12160, etc.) O2 is a good interim solution for fast disk speed, but it is limited to two external SCSI ports. Octane can have many more via XIO or PCI option cards, but remember that PCI on Octane requires the presence of the PCI expansion card cage (unless one is content with using single-slot XTalk adapters) and video options for Octane may be expensive, though they're probably easier to find than equivalent options for Indigo2.
If one can find SCSI option cards though, then Indigo2 can have its disk bandwidth scaled up to at least 40MB/sec. Some companies offered custom solutions of course, eg. a GIO card connected to an external disk array.
There is a FibreChannel card for Indigo2 (100MB/sec bandwidth), made by Prisa (full details in Section 6); however, I've never seen one for sale, so it's probably unrealistic to expect to be able to find one. I talked to someone who had such a card, he was able to get 87MB/sec via an FC disk array, and he used the same card to connect the Indigo2 to a Gbit networking switch. It's a shame this card is not more widely available.
Indigo2 comes as standard with 10BaseT Ethernet. This is often the most limiting factor for those wishing to use Indigo2 for animation and video. It doesn't affect one's initial work at all - creating a model, rendering an animation on the same system, editing a video, etc. - but it becomes very limiting as soon as one wants to exploit other systems for offline rendering, movie format conversion, or other processing tasks. Thankfully, and due to the efforts during 2001 of a number of individuals, it is now relatively easy to upgrade an Indigo2 to 100Mbit FastEthernet, namely by acquiring an EISA 10/100 3Com 3c597 standard PC network card. These were available as a rebadged card from Phobos for an enormous sum ($600!) but now it is known that just the generic version found in PCs will work fine when used with modified Phobos drivers - the drivers are changed so that the card is not rejected just because it's not an original Phobos card. I have a page with full details on this card, and the other 10/100 cards available for Indigo2.
EISA cards do incur some CPU loading, so there is also the option of finding a GIO-based 10/100 card, but they're more expensive and harder to find. However, I am very happy with the 3c597, observing up to 5.5MB/sec network speed. Some people tell me they get as high as 7MB/sec. It makes a big difference for doing video work when using multiple systems, and suddenly ideas such as sending files to other systems for offline processing become much more realistic.
Aswell as the normal 2nd-hand SGI sources, look on PC advert newsgroups to find the 3c597, eg. uk.adverts.computer, and of course eBay (I once found an original 3Com box this way, containing three never-used cards!). The cheapest I've heard someone pay for a 3c597 was 5 UKP, found in a PC junk shop, though the typical market value in the world of 2nd-hand SGIs is about $20 to $40. Thus, it's also worth going to PC swap meets, car boot sales, etc. - the naff PC going cheap might just have a 3c597 in it. Plus, such older PCs might also have compatible 72pin parity RAM one can use (486s, Pentiums, etc.) or even 50pin SCSI disks.
As with disk bandwidth, Ethernet is not a problem with later systems such as O2 and Octane since they already come supplied with 10/100 Ethernet as standard. And if you want real future proofing, remember that Octane can use Gbit cards too. Note that Tezro was the only SGI workstation to come with Gbit Ethernet as standard
7.3 Upgrade Paths
For those who seek maximum performance, an R10K/195 MaxIMPACT is a great machine. But at the end of the day, that's the best it can be. Equivalent Octane prices might be higher, but the compromise of getting a lower spec Octane (eg. SI+Texture) may be worth it if that means one can upgrade later to something much faster such as R12K/400 or a V8 gfx set. Also note that unlike a SolidIMPACT Indigo2, an Octane SI can have hardware texture added to it via the inclusion of a 4MB TRAM module - SolidIMPACT is the same technology as SI, but SI was redesigned to allow the inclusion of texture without having to replace the main gfx set. To do the equivalent in Indigo2, one must replace the Solid board with a HighIMPACT set with 4MB TRAM. Octane clearly has an advantage here, but remember that texture modules for Octane may be priced quite differently to those for Indigo2, though the Octane modules are definitely easier to find.
Sometimes a person considering an Indigo2 often talks about getting an Octane instead simply because they want better main CPU speed than R10K/195 in order to help with movie processing, etc. But if this better speed is just for doing things like rendering, movie processing, etc. then a better approach may be to get an SGI of the appropriate type for the main task, and then use a fast Linux box (in the real sense of the phrase) for the offline processing, or another SGI, eg. multiple Indigo2s or Octanes. However, systems such as R10K/250 and R12K/300 Octane are much cheaper now, so starting off with a good CPU is not so difficult anymore. In the Indigo2 market, finding an R10K system is also easier than it used to be.
7.4 Graphics Issues
Like any older system, there are inherant physical limits to the complexity of data that Indigo2 can handle. Available geometry processing speed, RAM capacity and other factors could be important for certain tasks, though it never ceases to amaze me how surprised people are when Indigo2 cannot handle a 'modern' problem, as if Indigo2's reputation would be sufficient to somehow make the system faster than it really is.
Sensible use of software, intelligent model design, etc. will help, but there are still hard limits. MaxIMPACT is definitely a great graphics system, but don't expect it to be able to throw around a million-polygon mesh in Blender - look at the published specs which were released at the time to check what problems one could reasonably expect Indigo2 to handle. Research what particular configurations can do before deciding if the system is right for you and, if so, which components are appropriate. Make use of the 'real- world' performance comparisons I have done, eg, for 3D work, look at which model best represents the levelof complexity you will be working with and then compare the results to find the right solution. This will also help ensure you don't buy something that is much faster (and thus more expensive) than is necessary.
MaxIMPACT's geometry performance is still good enough for many tasks today, which is great for basic CAD work, general animation/design, data visualisation and other non-textured tasks (but don't expect it to have the degree of sharp response and feel that's possible with a good Octane or Fuel, because it won't). For other areas though, the main limitation is texture capacity. There are ways round the 4MB limit, including sensible use of software as mentioned above (eg. 16bit instead of 32bit textures, careful use of decal textures, not using unnecessarily large textures, etc.) and some applications use special techniques to page textures in a manner that makes possible the manipulation of larger datasets (eg. ELT software). But for some, the 4MB limit may be a problem. If this is the case, then O2 may be a more appropriate system even though O2's raw 3D performance is much lower than MaxIMPACT. Models such as VRML worlds, urban environments, etc. often have low polygon counts but a lot of texture - these will run fine on O2 (texture RAM limited only by main RAM size) but will almost certainly cause TRAM swapping on High or MaxIMPACT. Alternatively, just use an Octane with VPro graphics, which offers up to 24MB TRAM with V6/V10, or up to 120MB TRAM with V8/V12.
Sometimes though, a lot of texture RAM just isn't required, eg. CAD design may use environment mapping to help surface visualisation, but that only needs just a few textures, for which 4MB is plenty. Likewise, using texture to aid the modeling of molecular surfaces does not need a lot of TRAM. Some tasks may benefit a lot from hardware texture mapping but might not inherantly be real-time interactive tasks, eg. animation rendering. For image processing and image manipulation, the geometry engines can be used to give real-time performance on operations such as brightness, contrast, etc., while the texturing hardware accelerates pan, zoom and rotate operations.
For most users though, unless the 4MB texture limit is an issue, MaxIMPACT (and Extreme for lesser tasks that definitely have no texture) is a great solution.
7.5 Video Issues
For sending on-screen graphics to video, displaying video on-screen and live video effects, Indigo2V can be a good solution, a board which is not that hard to find these days and not particularly expensive. Similarly, if one can find the right combination of boards then Indigo2 can be excellent for video editing, eg. XL24 + Indigo2V + Cosmo, or HighIMPACT + IMPACT Compression, assuming the use of appropriate software.
However, the boards which support hardware [de]compression, which is required for real-time MJPEG editing, are not generalised video processing systems. In other words, they're ideal for capture, edit and playback of movies in the formats they were designed to handle (ie. MJPEG or uncompressed), but they do not give hardware acceleration for other formats such as AVI or MPEG. If this is a problem, then O2 would be a more appropriate solution since it has a more flexible video system. Indeed, in general I normally recommend O2 for basic video editing.
Plus, the [de]compression boards for Indigo2 are quite hard to find, and when they are available they tend to be expensive. If you can find the right boards though, and tasks such as playing back MPEG in hardware are not relevant, then Indigo2 is a good video solution. Just be sure you know what you want to do. Again, using another system to handle offline processing tasks is a possibility, and is what I do: a combination of systems so that I can always choose the right tool for each task (which I might add includes the use of modern PCs for number crunching - I have a 5GHz 2700K, 4.7GHz 3930K, etc.)
Also note that DivX and QuickTime5 support on Indigo2 is not available. OpenDivX exists but native DivX support in the Digital Media Tools is not included (support for DivX, QT, MP4, etc. works very well with any VPro SGI such as Octane2, Fuel or Tezro, but of course VPro is not available for Indigo2). This is why, after doing initial editing work on an SGI, having something like a PC for converting to other formats is a good idea, and this is what I do.may be something worth considering. This is especially true today where various video applications for PCs allow one to exploit GPU acceleration (2nd-hand GTX 580 is excellent for this). One can of course make a good argument now for using a modern PC for all of the video tasks (both sw and hw have moved on a lot since I first wrote this page more than a decade ago), but hey, were talking about having fun with vintage SGIs here; where's the joy in using a Win7 PC ;D I use an O2, Indigo2 and Octane2 for CEP, and I have various modern PCs for video conversion using Handbrake and other sw tools (I do have a Tezro, but that's more for performance research than proper work - it's overkill for the video work I do, and it doesn't have a compression option).
Note that years ago I recommended the use of a 'Linux box' for offline video conversion, but my experiences of trying to do this were not pleasant. In reality, it's much easier to setup a Win7 PC for converting video data; sites such as videohelp.com make it easy to locate appropriate sw tools, and there are numerous forums for discussing hw issues.
One other area that is quite difficult to setup on Indigo2 is live 3D/video effects which use video texture mapping. This is not because it's not possible; rather, it's because it's very hard to find the right boards. One needs IMPVID with IMPCOL and possibily IMPCOM, likely costing a lot because they're rare. Thus, for 3D/Video effects where texture is involved, O2 is a better solution because it's much cheaper and a lot more flexible, offering hardware MPEG support and easy manipulation of images, graphics video for live effects. Or use Octane if you need visual quality better than that offered by O2.
Like any 2nd-hand SGI, if a particular video solution matches your requirements, then go for it. The point is to make sure that what you want to do is possible with the system you're considering buying. I know people who use Indigo2V for sending graphics to video and they're delighted with the system they have, whereas I've persuaded others to use O2 instead because they wanted to do video editing with support for hardware MPEG playback.
7.6 Performance/Feature Tradeoffs
Indigo2 has a wide range of impressive and powerful option boards available, but because of space limitations in the machine there are certain combinations one might wish to have which are not possible, at least not without some custom modifications. For example, if one has a MaxIMPACT system and wishes to add video abilities then that can be done with an IMPCOM board, or Indigo2V-FI if editing is not required. However, this leaves no room for other options such as a 10/100 card or extra SCSI card. Thus, unless one is willing to customise a chassis or something, then a tradeoff between performance and features may be necessary, eg. in this case using HighIMPACT instead so that an extra slot is free. Whether or not such tradeoffs result in a system that is still an acceptable solution is something that only the buyer can decide. In some cases, the compromise may be too much and a different system may be more appropriate as a result, eg. O2, Octane or Fuel. Other times, it may not matter, eg. for tasks which benefit greatly from any degree of hardware texturing, HighIMPACT may do just fine.
Years ago I downgraded my Indigo2 from Extreme to Elan in order to make room for a 10/100 card, but I planned to later cut a hole in the chassis for the extra SCSI port so that I can put the gfx back up to Extreme again (alas in the end I couldn't find a cost-effective way to do this, so I never did). For my MaxIMPACT system, I wanted to construct a custom chassis that hold a 10/100 card on other side of the backplane, thus allowing MaxIMPACT+IMPCOM+10/100, but again I've not done this yet, and perhaps I never will now that I have an Octane2 aswell.
7.7 Environmental Factors
Indigo2 is a heavy system compared to O2 and Indy. If space is a problem and portability desirable, then - for example - it may be better to go for an Indy R4K/200 XZ instead of an Indigo2 R4K/200 Elan, unless an upgrade path is required.
Noise can also be an issue, though this can be solved by using a more modern disk and replacing the fan with a low-noise version. Sometimes heat output can also be a problem, eg. a MaxIMPACT system generates quite a lot of heat, so sensible ventilation should be considered if ambient temperatures are high. At least there is the option of placing the unit on foot stands for vertical positioning, thus allowing one to place the unit further away to reduce noise, etc. NOTE: if you want to setup an Indigo2 like this but also wish to use an internal CDROM, then look for a CDROM type which has a central raised cylinder that securely holds a CD in place, thus allowing the CDROM to operate correctly when vertical, or even upside down.
In all cases where I give an example disk capacity, in reality I definitely reommend using something newer like a 36GB 15K SCA + adapter. This is because 50pin disks are old, can be expensive, hard to find, loud and are not that reliable. It might sound surprising, but later 15K drives are often much quieter than old 50pin drives, This isn't true of all 15K drives, but there are numerous suitable models, Note there's no reason why one can't use a 68pin disk + adapter, but it'd hard to the correct type of 50/68pin adapter (most of the adapters on eBay and elsewhere have the wrong pinout).
The examples below are what I refer to as 'suitable' configurations. These should not be regarded as minimum specifications. Instead, they mean a setup which one would not have to upgrade in order to perform the required tasks adequately, at least in the context of one having ruled out using other SGIs for whatever reason. Many users will want to go for a higher spec even when it isn't strictly necessary, but that is up to the individual to decide. Besides, if one can afford an R10K system just to surf the net, then why not? :) My goal is simply to state what would perform each task to a satisfactory degree, with the intention of making it clear that, for example, a cheap R4K/150 Indigo2 with 64MB RAM, 1GB disk and IRIX 6.2 is a perfectly useable system, ie. a system isn't bad or unusable just because it's cheap.
A note on performance: IRIX manages multitasking much better than Windows, especially when comparing systems from that era which, on paper, appear to have similar processing power. In other words, beware of over- speccing the system just because you may be used to poor UI performance on old Win98 PCs.
8.1 General Applications, Net Surfing, Web Design, Server tasks, etc.
For these sorts of tasks, fast graphics usually isn't important, and neither is a lot of RAM. Similarly, with no requirement for application development support or hefty 3D tasks, a small disk would do fine, eg. 4GB; even a 2GB would be ok to begin with - it's amazing just how much one can fit onto a 2GB disk with IRIX. Note that for this application area, IRIX 6.2 is perfectly adequate. Thus, an example suitable system would be a teal Indigo2 with:
R4K/150 CPU 64MB RAM 4GB disk Any graphics option (doesn't matter)
A minimum 6.2 spec for general applications, etc. would be 32MB RAM and 1GB disk, but I don't recommend going that low, though one could always buy such a cheap system and then upgrade (I guess that applies to anything). IRIX 6.2 more or less runs ok with 32MB, but not much is left for general tasks - applications like Netscape will quickly grab all the RAM and cause disk swapping. Similarly, a 1GB disk isn't really big enough to put on a good useable OS in terms of available applications. As soon as the disk is 2GB or more though, there's enough space to put on the Netscape release for SGIs, CosmoWorlds, CosmoCreate, Java, the C and C++ compilers, graphics/digital media/X11 and other development systems, various freeware applications, graphics demos, and so on. Note though that if you wish to use the later Firefox application which is part of the MIPS3 Nekoware, and thus need IRIX 6.5.22 or later, then a faster system with more RAM, etc. is wise, though if that's the case then I'd suggest just going for an R10K system minimum in the first instance.
One caveat: if web design tasks include making VRML models, then better graphics might be needed, especially if textures are involved. Depending on the complexity of the models, a system geared more towards 3D design might be better (Extreme, SolidIMPACT, HighIMPACT, etc.), though do bare in mind my earlier comments about O2 with respect to these issues.
Also note that, though not strictly necessary, a faster CPU will make for a more responsive system in terms of waiting times for applications to startup, etc. For some people, the extra luxury may be worth the expense. The apparent responsiveness of a system can be a very subjective topic. Personally, I've probably become so used to my 900MHz Fuel, I doubt I could go back to using an Indigo2. :D
8.2 Application Development
Developing applications usually means a lot of compiling. Thus, a fast CPU is desirable to minimise compile times, as is a good disk (36GB 15K SCA + adapter recommended). A decent amount of RAM is also sensible since some compilations can use quite a bit, and then there is the overhead used by application development tools such as RapidApp, debugging tools, cvd, etc. Theoretically a large disk isn't required, but serious application development often means retaining archives of older versions, etc. Whether decent graphics is required depends on the application, ie. if it's a 3D- related application then a suitable level of graphics power will be required, but remember that to develop the application one may not need the same degree of speed as the end user.
Thus, a suitable configuration might be as follows:
R4K/250 CPU 128MB RAM 2GB disk Whatever gfx (application-dependent)
and if the budget allows then preferably the following:
R10K CPU (either speed will do) 256MB RAM 4GB disk Whatever gfx (application-dependent)
If 3D abilities are required, Extreme or SolidIMPACT should be sufficient, unless the development concerns a field involving hardware imaging or textures, in which case HighIMPACT would be adequate. Use more RAM if you want the system to have IRIX 6.5.x instead of 6.2.
8.3 Audio, Music, Midi and General Sound Applications
A fast CPU is essential here, so go for an R10K system, although an R4K/250 will do surprisingly well too, and even a lowly R4K/150 will play back a MIDI file just fine, but when it comes to processing long audio tracks, complex filters, normalisations, using the various synth applications, etc. then the better speed of a decent CPU helps a lot, especially since there can also be a lot of windowing operations. Indeed, normally I would recommend an Octane2 or Fuel for this, but Indigo2 can still be ok if properly specced.
Fast graphics is unnecessary, unless one wishes to run midikeys full- screen. :) On a teal Indigo2, Elan should be fine, though if the windowing operations get tiresome remember that Extreme has 2X better pixel-fill than Elan. On an IMPACT Indigo2, Solid should be ok. Of the older gfx options, XL24 would be the best for coping with lots of GUI panels.
Whether a decent disk is required depends on the kind of audio work being done. Audio data doesn't take up that much space, especially MIDI, but if you need archive space, and if you're working on long tracks, then a minimum of 2GB and preferably 4GB (double this if using IRIX 6.5.x). Remember one can always use an external drive too though, ie. later expansion.
Most audio work isn't that RAM intensive, but if one starts doing a lot of synth work and parametric operations on large tracks, then an application may start grabbing RAM for temporary files, undo buffers. 128MB is ok for starters, 256 for complicated tasks. I originally specced this example as 256MB RAM, but Sean Caron <firstname.lastname@example.org> told me:
"The system requirements, at least for the sort of work that I'm doing, are actually pretty light. Even under IRIX 6.5, an Indigo2 with 128M RAM and a 4.5G hard disk is pretty sufficient for doing something halfway productive alone with a 200 or 250 MHz CPU (although I bet a 150 MHz would work pretty well also). I've got an Extreme boardset in my machine and the graphics scream -- I suppose almost any graphics board would work great."
Thus, a typical system would be:
R4400SC 250MHz CPU (2MB L2) 128MB RAM 4GB disk Extreme gfx (or any graphics really; infact, XL24 would likely be best)
or go for an R10K if working with more complicated effects and longer tracks.
On using an Indigo2 for audio work, Sean had this to say:
"I'm kind of into amateur audio production on SGIs, so perhaps I can shed some light on this particular aspect of things: I think Indigo2 machines are really wonderful deals when it comes to playing around with audio creation. IRIX 6.2 and 6.5 include a REALLY nice suite of tools, including a multitrack editing program, recording software, and a REALLY nice software synthesizer. I figure that I saved a few hundred bucks on a digital synth to experiment with by having my Indigo2 around! IRIX is also nice because it includes support for pretty much any sort of Macintosh compatible MIDI interface over the serial port right in the default OS distribution. When so configured, the SGI can be used to control other devices in a MIDI chain, and also, other devices on the MIDI chain can control the software synth on the SGI. Within the next month, I'm planning to hook up a Roland PC-70 MIDI controller keyboard to my Indigo2 and really start to get some work done!
I must confess, I have a synth of my own ready to hook up, but so far I haven't had time to deal with it.
8.4 Beginner 3D gfx
The main CPU is not that important for 3D gfx since most of the processing is done in hardware. The critical issue is whether or not you want to work with textures. Those just starting out learning 3D gfx may be happy at first to live with software texturing on a cheaper teal Indigo2 system. If so, then Elan or Extreme is fine. Given the tiny cost difference these days, go for Extreme. However, R4K SolidIMPACT systems are typically not much more than a teal Indigo2, so if budget permits then go for a SolidIMPACT. This won't give hardware texture, but it will provide for full 32bit colour and a better upgrade path.
RAM doesn't really matter that much. For learning gfx one isn't deliberately going to try throwing large models around. For an IRIX 6.2 system, 64MB is fine. For a 6.5, 128MB is adequate, though more does help with 6.5 to allow it to run while leaving plenty spare for general tasks.
A 4GB disk is ok to hold the OpenGL/IrisGL development environments, and even a 2GB disk can have all the necessary items fitted on if one knows how.
Thus, for a beginner, this should be ok:
R4400SC 200MHz CPU (1MB) 64MB/128MB [6.2/6.5] Elan or Extreme graphics, SolidIMPACT if budget permits 4GB disk
8.5 Advanced 3D gfx
Definitely at least a HighIMPACT system and preferably MaxIMPACT if the budget permits. HighIMPACT does have hardware texture, but IMO one would only choose it instead of Max because of budget reasons or expansion space reasons such as requiring video I/O aswell as 100Mbit Ethernet.
A bigger disk probably isn't necessary, unless the models are becoming large (remember that if a lot of texture is involved then O2 is probably a better choice, or a VPro system). Whichever is used, definitely get the 4MB TRAM version - without the extra TRAM, colour depth is limited which can become quite annoying.
R10K isn't necessary for fast gfx since the gfx hardware does most of the work, but it can help if there's a lot of application overhead. It depends on the task. The gfx set is more important though with respect to performance. The only other reason to use R10K is in order to have access to the MIPS4 Nekoware - this may be a key factor for some people.
Assuming 'advanced' means one may be working with higher-level APIs (Performer, Cosmo3D, Optimizer, Volumizer, etc.), a bigger disk is preferable in order to hold all the extra software subsystems, even if the 3D models one is dealing with are not that large.
Extra RAM is wise since working with higher-level APIs will presumably mean loading larger libraries.
Thus, a suitable configuration might be:
R4400SC 250MHz CPU (2MB L2) (R10K instead to aid high non-gfx demands) MaxIMPACT gfx (High instead if expansion needed) 256MB RAM 4GB disk
8.6 Animation Design and Rendering
Animation design is different from general 3D gfx because the scene graphs in most animation packages are quite complex, requiring a good CPU to handle the overhead.
For those learning the basics, the following would do just fine:
R4K/250 (2MB) Extreme Indigo2Video 128MB 4GB
One might not find the video option at first, but that can always be located later (for recording animations to VCR, etc.)
Remember that most animation design does not require real-time texturing. Wireframe is often more important, so Extreme is ok, though go for SolidIMPACT if possible (32bit support, better expandability, etc.)
It's wise to go for an R10K if possible. This is because a good work flow in design depends partly on something I've heard people refer to as 'snappyness', ie. the responsiveness of the system. A prompt feedback response from the user interface is definitely beneficial. Thus, begin with an R4K/250 if necessary, but an R10K is far preferable for serious work. This is why so many studios used to use Octane systems: even today, the responsiveness of Octane is often better than PCs. The Lord of the Rings movies were done with a large number of Octane2s.
Since most animation designers will want to be able to send displayed animations to video, it is likely that a video option would be required, such as Indigo2V-FI. If no other expansion options are required, then there's still enough space for MaxIMPACT. Otherwise, go for HighIMPACT instead. Remember my comments earlier though about these issues. IMO, it's better to have two different systems, eg. an R10K IMPACT for animation design and then an O2 for video. Although Indigo2 can have video editing options, they're rare, expensive and not that flexible. The only desirable item for a 2-system setup would be a 100Mbit card to allow movie/data files to be rapidly transfered - this might mean having to have HighIMPACT instead of MaxIMPACT, unless one was willing to customise the Indigo2.
Assuming one will want to render frames and deal with movie files too, a decent disk is wise. 4GB is ok to begin with, but aim for 9GB or higher if possible, though preferably as my introductory note explains, just get a 36GB 15K SCA + adapter and live happy with the better speed, low noise, etc.
Some animation packages can use a lot of RAM, so decent RAM is a good idea. Thus, a good configuration for advanced work would be:
R10K/195 MaxIMPACT (or HighIMPACT if 10/100 also needed) Indigo2Video for IMPACT (or IMPACT Compression if you can find it!) 384MB RAM (or higher) 9GB disk (36Gb 15K + adapter if possible)
My own system is an R10K/195 HighIMPACT with 1GB RAM, 2x73GB disk, CDROM, EISA 10/100 and IMPACT Compression. I have an O2 and other systems for general video tasks.
One note on animation/rendering: although these old SGIs are great, at the end of the day the CPUs are old. They will show really their age when trying to do complex renderings or movie conversion tasks. Thus, one other option to consider (as mentioned in the detailed discussions earlier) is to have a separate fast PC for offline processing. This will also allow one to continue with design work while, for example, a PovRay render or movie conversion is underway. Alternatively, use other SGIs, and this can work very well for frame rendering if one can find a multi-CPU system such as an ORIGIN or use several indys, etc. Indeed, entry Octane systems are now so cheap that having an Octane cluster, or even just a few 2-CPU systems working separately, is also a possibility.
8.7 Video Editing
This discussion assumes that you have already decided O2 and Octane are not the best choice, for whatever reason.
I would class the following type of tasks as being 'entry' level video tasks:
- Display on-screen - Send to VCR - Live video effects involving fades, wipes, etc. - Software-based capture/edit for internet-size movies
By Internet-size movies I mean no larger than half-size PAL or NTSC. An R4400SC/250 can more or less cope with this, so a suitable system would be:
R4K/250 XL24 gfx 128MB RAM Indigo2Video 4GB disk or larger if necessary
The above assumes the use of a teal Indigo2. Note the reference to XL24 gfx - this is because XL is much faster than the old 3D options for 2D/video tasks. Unfortunately, XL24 Indigo2s are not that common, in which case either go for an Elan instead or use an IMPACT system with SolidIMPACT. Note that I do have several XL24 boards available at the moment though.
8.7.2 Advanced Video Tasks
This includes full-size/rate capture, editing and playback, better colour quality, more advanced video effects, etc.
For an older Indigo2 this means finding COSCOM, while for an IMPACT Indigo2 one must acquire an IMPCOM board, which may be difficult and probably expensive. However, assuming they are available, a suitable setup would be as follows:
Older Indigo2: as above, but include COSCOM, extra RAM and bigger disk Newer Indigo2: R10K CPU (whatever speed) HighIMPACT IMPACT Compression 10/100 card 256MB RAM 9GB disk (or larger if possible)Both Cosmo boards are great for capturing full-size/rate video and playing it back (use dmrecord and dmplay; IMPCOM has better quality and can sustain higher bitrates), but unfortunately MovieMaker does not have software hooks for either type of board, ie. one cannot use either type of Cosmo board to accelerate editing using the supplied MovieMaker tool. However, because the capture and playback quality/reliability is so good, an alternative is to use a simple O2 for editing, and then use the Cosmo Indigo2 for final playback - this is what I did, though later I upgraded to the equivalent Octane configuration.
In general, the supplied tools on O2 are not as reliable as the tools for the Cosmo boards. Please note that all of these issues have nothing to do with the capabilities of the hardware; there's no reason why someone couldn't write their own code to use the Cosmo boards for editing, but alas nobody ever has.
With respect to space issues in the system, if you fancy customising your Indigo2 then MaxIMPACT may be possible instead. Whether High or Max though, always go for the 4MB TRAM version. SolidIMPACT is ok if you don't need texturing and don't intend to do video-as-texture effects; having a Solid board also means it's possible to have a dual-head Solid/Solid system with IMPCOM and 10/100.
A note about disks: it will probably be impossible to find a 50pin disk that's larger than 9GB these days (the only one I know is an 18GB Seagate, but they're very rare), so consider instead going for a 68pin or SCA drive and using a converter - 80pin is easier to configure, and indeed this would really be my default recommendation for any Indigo2, if only for reliability and noise reasons (a later 15K makes much less noise than an old 50pin). This will work fine, and does allow one to conider much larger drives such as 36GB or 72GB. Indeed, one could go as far as to have two internal 300GB drives. At present my own system has two 73GB 10Ks.
A final note on storage: it is possible to use SSDs with old SGIs such as IRIS Indigo, Indy and Indigo2 via the use of a SCSI adapter and an ACARD ARS-2160 SCSI/SATA bridge box. I've tested this with Indy and it works fine (successful results with OCZ Vertex2E, Vertex3, Vertex4, Vector, Samsung 830 and Samsung 840 Pro). Thus, assuming the use of IRIX 6.5, it's perfectly possible to fit an Indigo2 with a couple of high-capacty SSDs, even the 1TB Samsung 840 EVO. There is a degree of speed improvement with an SSD, but not that much because of the limited FastSCSIndigo2 bandwidth, and it's also CPU- dependent. Indeed, given the SCSI bus speed limitation, one would probably not notice the difference between a 500GB mechanical 7200rpm 2.5" SATA and a 512GB Samsung 840 Pro, though an SSD would be more reliable. Lastly, bare in mind that the fx partitioning program has a 32bit limit, so do not try to use a SATA device larger than 2TB because it won't work. Anyway, these options do show that even today, Indigo2 continues to be surprisingly expandable, but of course such options are not exactly cheap (the ARS-2160 costs about 160 UKP).
Obviously Indigo2 is not a games machine, although one could certainly design some very nice games for High or MaxIMPACT systems. The only games that I know of which are available that are worth playing are Doom, Doom2, Ultimate Doom, Quake, Quake2 and Quake3. There's also the CertainIMPACT flight combat demo by Paradigm (part of the Indigo2 demos) but it's not very sophisticated. There are various other games around, including a port of Hexen, but so far I've not looked into this much; they're part of the MIPS4 Nekoware, so if you want to explore these then definitely get an R10K Indigo2, and of course obtain the best graphics possible (HighIMPACT is reasonably ok for Quake2, but MaxIMPACT does make a nice difference, always with 4MB TRAM). MaxIMPACT is the only viable option for Quake3, though really one should use a VPro SGI for Quake3 - it runs much better on VPro systems.
The Doom games do not use a 3D engine, so more or less any Indigo2 with a reasonable CPU [R4K/200 or better] will run them just fine (especially if the gfx is XL).
The Quake games can run in software, for which R4K/250 is definitely a minimum, though realistic resolutions are still rather low. High or MaxIMPACT is best for the Quake games, with 4MB TRAM essential, running at 1024x768. Consult the README files with these games to see what options are available to speedup the frame rate, eg. for Quake1 use the -nodetail option. 128MB RAM is fine, though perhaps 256MB is better for Quake3. See my Doom, Quake1 and Quake2 benchmark pages to see what frame rates you will achieve with different configurations.
Other tasks might include CDRW authoring, device control, etc. Just about any Indigo2 will do since the devices are SCSI, and the reliability is excellent. I've tried as a test several times to make an 8X CD-write session fail by running lots of other tasks activate at the same time, but I've never observed a problem. My main daily-use Indigo2 used to be an R4K/250 Elan (256MB/9GB) with 10/100, external SCSI port for channel 0, external 8/8/24 Yamaha CDRW, external DDS4 DAT drive, internal 32X CDROM and internal Floptical drive. It was a great system (the first I ever bought) and never crashed on me in over 4 years of use. I eventually had to move up to an Octane though due to issues concerning MIPS4 software which wouldn't run on an R4K, and a desire to use Mozilla which was too slow on an R4K/250. I upgraded again when I had the opportunity at a sensible cost, so today my main SGI is a 900MHz Fuel with various optional extras, including SAS drives and several SSDs.
Note however that at 16X write speed, an Indigo2 is definitely pushing just a bit too close to the maximum safe sustainable speed of its 10MB/sec FastSCSIndigo2 bus (this is a very different issue from reliability on PCs where it is the poor Windows OS which makes multitasking so unreliable). It will work ok if one doesn't stress the system with other tasks, and it helps a lot if one turns off the web server. The desire to use 16X write speed authoring while still being able to do other things was another reason for my moving to Octane years ago. For most people though, 8X speed should be ok.
Ask to see a hinv output from the system. Check to make sure this matches what the seller claims the system contains. It is wise to obtain a hinv output that is generated from logging into the system when it's up and running - the output from the Command Monitor doesn't list some things, eg. items such as video option boards which aren't recognised by hinv until the system is running and the drivers loaded. Plus, if they seller says a certain board is present, eg. Indigo2Video, yet a hinv after login doesn't list it, then one should ask why not - are the drivers installed? If not, are the drivers included on the original CD? If there are option boards like Indigo2V, can the seller supply results of diags or other tests to show the boards are working ok? And so on.
Ask to see a '/usr/gfx/gfxinfo' output from the system (must be fully up and running and logged in to obtain this information). This will allow you to check things such as stated TRAM size in IMPACT systems, whether a teal Indigo2 with XZ gfx has two or four GEs, etc. hinv should also give this information, but gfxinfo gives it in greater detail.
Examine the output from sysinfo (if present, lmhostid will give the same output). Check the system ID it reports with the label on the back of the machine. Are they the same? If not, then maybe the system ID has been altered at some point, or the motherboard replaced.
What extra miscellaneous items come with the system? All SGIs were originally shipped with a variety of other bits and pieces besides the keyboard, mouse, locking bar (if applicable) and power cable. Indigo2 had fewer such extras than Indy, but it's still worth asking if they're included. The obvious items are the owners guide, any CD media, microphone cable and clip, mouse mat, foot stands (for vertical positioning), and anything related to additional option boards such as driver CDs and cables. The degree to which these items are missing may be an indication of how well the system has been cared for during its life, and the absence of any CD media could be important if you have any plans to reinstall the OS, though I can do you a complete duped 6.2 or 6.5.22 CD set if required.
NOTE: with respect to the use of foot stands, although positioning the unit vertically can be very useful (saving space, keeping the system out of the way, improving cooling, and it looks cool!), it can sometimes cause problems, specifically when the unit includes an internal CDROM. Some models of CDROM do not behave very well if they are vertical. If you are considering an Indigo2 system which includes an internal CDROM and are thinking of setting the unit up in a vertical stance, remember to ask if the CDROM works ok when vertical. Some CDROMs have a special raised center pillar which firmly holds the CD in place (this type of CDROM is great - they'll even work upside down!), whereas other models have the CD just sitting loose in the tray; the former type is definitely preferable for an Indigo2 that is to be positioned vertically using foot stands.
If the Indigo2 has an Indigo2V board (or Indigo2V-FI), then are the breakout cable (or breakout box) and IndyCam digital camera included? Most people I know who buy Indigo2V boards get them for general video I/O, rather than for the use of an IndyCam, so if the IndyCam is missing it often doesn't matter that much to the buyer, and a modern analogue camera can give a better picture anyway. If the camera is included, make sure the sliding camera cover is still present. Check the lens for scratches. Test that the lens can still be rotated for focussing. Move the cam up and down to see how stiff the movement is. Check for cracks in the cam casing. And obviously be sure the camera works ok. Note that Galileo Video should include a much larger breakout box.
Is the SCSI terminator included? The SCSI port on the back should normally be terminated, though in practice it tends not to matter if channel 1 isn't being used, and if it is then one can always activate termination on the device attached to the port anyway, usually via jumper settings or an external switch.
What about the microphone cable? Indigo2s always shipped with a mono microphone lead. It's no disaster if the lead has been mislaid, but remember to ask anyway. It would certainly matter if you wanted the Indigo2 for video conferencing, though buying your own microphone would not cost very much, and one can always use the line-in ports instead and some other kind of lead.
Is there a Floptical drive in the machine? A Floptical can certainly be useful, but be wary of a seller asking too much just because of the presence of a Floptical. The main use of a Floptical would be PC/SGI file transfer, but in practice an external SCSI ZIP100 is more effective due to the larger capacity disks (a reasonably recent 6.5.x OS version is best for using ZIP drives). Although a Floptical can use 21MB optical disks as well as ordinary floppies, I'm not sure whether PCs support floptical disks. Plus, it's very easy now to connect an SGI and a PC together via Ethernet: a 4-port HUB is cheap, as are a couple of short CAT5 cables. Having said all that, I used to have a Floptical in my old R4K/250 system and it was very useful to me because I used it to transfer files to/from my laptop (these days, with my Fuel, I just use ftp via Ethernet). NOTE: parallel ZIP/JAZ drives are not supported on SGIs.
If you are able, examine the back of the machine carefully. Ask the owner to remove all the cables and then note the following things to watch for:
Are the securing bolts for the monitor and parallel sockets still in place? It's easy to lose these if cables have been frequently removed and replaced. It's not a disaster if the bolts are missing, but it's something to think about, ie. cables falling loose while the system is in use. If any bolts are missing, that could be an indication of lack of previous-owner care. Are the bolt sockets rusty? If so, then maybe the unit has been exposed to a corrosive environment, eg. industrial conditions or near the sea, so look out for signs of corrosion elsewhere (and if such is present, perhaps that's a chance to ask for a lower price).
Does the AUI Ethernet port still have its original locking plate and securing screws? Make sure the plate isn't just stuck on with blu-tak! And test to ensure the plate has a firm left/right sliding action, though if you're not going to use it then it doesn't matter.
Check the pins on all the cables. Are they bent or still in good condition?
Ask to see the inside of the Indigo2.
Is the small vertical locking bar that holds the graphics and other option boards in place still present? It doesn't matter that much if not, but if it's missing then that could be an indication that the graphics board and/or other boards using the EISA/GIO slots have been removed at some point.
Are all the screws present on all the boards? Examine the main CPU board (remove the CDROM base tray to check this) and the plates at the back of the system which hold the monitor socket, etc. Are there any blanking plates missing? If so, this may suggest the system had extra boards in the past.
How many memory banks are used? Indigo2 has 3 banks with 4 slots per bank, ie. 12 slots total. The first bank is closest to the CPU, so this should always be filled. Thus, a system with 64MB in one bank should have 8 empty slots. In general, for upgrade reasons, the more empty banks the better.
What type of power supply is in the system? For most users this doesn't really matter, but if you're intending to include a lot of extra internal items then a later PSU will be better able to reliably supply the required power. For an IMPACT system, there are several different PSUs - the best is the one which has an entry on the label that says '48A'; the older IMPACT PSU says '36A' or '40A'. Either will drive most systems just fine, but the 48A is best if one intends to upgrade the system to something like R10K/195 MaxIMPACT, extra disks, etc.
Is the audio module present? This sounds like an obvious question, but one should check anyway. The audio board is a small board that sits on the motherboard at the rear-left of the system. If it is present, then the Indigo2 will have 5 visible 3.5mm jack sockets on the lower back of the chassis. I've come across a couple of systems that were sold to me without audio boards because they had been removed to provide spares for other systems, but the seller didn't know and didn't check. So, just a quick glance inside or out will reassure. It will also show up in hinv of course.
Check the SCSI ribbon cable that connects to the CDROM base tray. Is it intact? Make sure it's not damaged. Examine the tray itself: you might be lucky and find a version of Indigo2 which has an extra socket on the base tray which allows SCSI channel 0 to be connected to an external port via a ribbon cable that sits over the EISA backplane. My own Indigo2 is like this; it's very useful to be able to have external devices on channel 0. Note that one can always solder on an extra ribbon cable to an ordinary base tray.
What is the general state of the machine? Has the owner bothered to keep it in good condition and free of dust? A poorly kept machine is more likely to fail from internal corrosion, especially if it was originally used in a hostile environment. Check for corrosion on the metal chassis. However, Indigo2 is a very resilient machine. Even apparently badly corroded systems will usually work just fine.
Examine and remove the top lid (be careful how you do this!). Are the rear lower catches intact? These are the main two catches which hold the top lid to the system base - if they're broken, the top lid can be a bit loose. Are the small angled catches along the back edge of the lid intact? If the rear lower catches are broken, then having the back edge catches intact means the lid will still have some grip on the base. NB: never lift an Indigo2 by its lid - it puts too much strain on these catches. Always grip the base, or underneath the chassis somewhere, eg. the recess where the monitor socket is.
Was the top lid hard to remove? Examine the front part of the lid to see if it has been incorrectly used. If the lid has been put on without the appropriate catches engaging, parts of the inside-front of the lid will rub against areas it otherwise wouldn't touch, causing stiffnes in the lid and possible mild damage. It's usually not serious, but it can make the top lid hard to remove, and the rear catches are more likely to be broken if the top lid isn't attached properly.
Are there a lot of scratches on the top-lid? Some buyers want a top lid in good condition, but this isn't necessarily an indication of a system that has been well-treated (what if the system has always been used on its vertical stands?) Plus, most people place the monitor on top of the system anyway, so what scratches there are tend to be hidden.
Indigo2 has a front panel which covers the power button and three bays. The front panel normally has a front flap attached to it. Is there a front panel? If so, does it have a front flap? If there is a front flap, what condition is it in? Does the front flap have both hinges intact? Are the top catches of the front flap intact? If one is broken, that's not so bad, but if both are broken then the front flap will typically not stay upright. What condition is the front panel/flap in?
If the unit does not have an internal device in the top-right bay or CDROM bay, are the relevant blanking plates still present? Check the SCSI sleds that any internal devices are sitting on; are the lever catches intact?
Examine the mouse. Is it in good condition? Remove the base plate and mouse ball. Is the ball damaged at all? What is the condition of the rollers? If they're covered in gunge and dirt, that could also indicate a history of poor maintenance. Ask to use the mouse in person - how does it feel? Test the buttons (remember the system confidence tests). And make sure it's a 3-button mouse!
Examine the keyboard. Is it dirty or in good condition? Is there a dust cover? (if the existing owner has a dust cover, that's a positive sign that the system has probably been well looked after). Do any of the more commonly-used keys produce strange noises when pressed? (ESC, SPACE, Shift, Enter, etc.) Odd noises made by a key could be a sign of an old keyboard which may be unreliable in the medium term. Check to make sure the ESC key works on bootup so that you can access the System Maintenance menu. Better still, run the system confidence tests for the mouse and keyboard.
Does the system come with a mouse mat? Hey, every litte extra helps.:)
All this information put together will help you make a more sensible decision as to whether the machine is being offered at an acceptable price. And don't forget to check the Nekochan for-sale forum to gain some idea as to the typical hobbyist value of the machine you're considering (but don't expect company prices to be remotely similar).
Since Jan 2002, the main rewrite was done over three days in Dec 2013.