unix

Trancept Systems TAAC-1 (1987)

  • by

TAAC-1 is an interesting and little-known piece of history. Its creators call it the first board-level GPGPU (a programmable graphics card). This thing was designed to accelerate scientific and medical visualization. It could render 30,000 3D Gouraud-shaded and Z-buffered polygons per second. In addition to that, it could also be programmed to accelerate volumetric rendering and ray tracing. The board could even be programmed in C and allowed to do more than just graphics.

The large double-plane VME board filled three slots and a half of it was covered with memory chips. There were 8MB of frame-buffer memory and the 200bit GPU logic ran at 8MHz, producing up to 1024×1024 pixels in true color. TAAC-1 was used with Sun 3 systems based on Motorola 68020 (16.67MHz).

Trancept Systems Inc. was founded in 1986 by three people. One of them was Tim Van Hook. The same person that later worked for SGI as a Principal Engineer (the architect of Nintendo 64) and started a company called ArtX (Nintendo GameCube graphics hardware), which was acquired by ATI in 2000.

Demo video: part1, part2
More info: virhistory.com, obsolyte.com

SGI High IMPACT Graphics (1995)

  • by

SGI Indigo2 IMPACT systems were the best workstations for game development and other activities involving textured 3D rendering in 1995. My system is equipped with High IMPACT Graphics, which is a two-card solution with a dedicated geometry engine (one million triangles/s), raster engine with two pixel processors (two pixel per cycle, 60-70 textured Mpixels/s), 12MB of pixel memory and a single texture-mapping unit with its own 1MB of texture memory.

The high-end option was called Maximum IMPACT Graphics. It took three slots in the computer and doubled the rasterisation performance by using exactly the same principle that was later used by 3Dfx Voodoo2 SLI (scan line interleaving).

The 3D performance of SGI Indigo2 IMPACT was years ahead of PCs and other workstations. In fact, 3Dfx Voodoo2, the best gaming 3D accelerator for PCs in 1998, had similar performance to High IMPACT graphics but unlike the IMPACT series, it didn’t support windowed rendering, 32-bit color precision and high resolutions.

The last two photos show Indigo2 IMPACT systems during the development of Final Fantasy VII (source: Sony press kit).

GPUbench results – compare the SGI Maximum IMPACT performance with other 3D accelerators of the same era.

SGI Indy (1993)

  • by

This machine represented the SGI’s low-end workstation offering. It was targeted towards Mac users (DTP…) that needed more graphics and processing power than they could get from Macintosh Quadra systems. It’s a sleek pizza-box computer with just a single quiet fan inside (unlike other SGI systems). However, in comparison with non-SGI competitors, it was not slow. It had at least 100-MHz (64bit) MIPS processor, at least 16MB of RAM (reasonable configurations started with 32MB) and multiple graphics card options available. 10Mbit/s LAN, ISDN modem and video inputs (composite / S-Video / a digital port for the bundled webcam) were integrated on the logic board in all configurations as standard.

My Indy is from 1995 and has a more powerful 150MHz MIPS R5000 CPU. On the other side, it is equipped with the lowest possible graphics card (XL8/XGE8/Newport) that supports no more than 256 colors and was introduced with the early machines.

I always thought that Indy was the only SGI system without any 3D acceleration when sold with XL8 (2MB of 64bit video RAM) or XL24 (6MB of 192bit video RAM for true color modes) graphics cards. I expected just a crappy framebuffer (with BitBlt) and nothing more – like in Sun and HP machines. I was wrong. The REX3 chip inside the Newport graphics is pretty capable. Although all the 3D transformations and triangle setup are done in software, the chip can raster triangles with smooth (Gouraud) shading and per-vertex alpha-blending. Even Z-Buffering is partially accelerated using the chip (Z-Buffer is stored in system memory though).

In fact, this chip is not very far from early PC 3D accelerators (1996-1997) in terms of functions… except for the texturing support which was not available even with higher-end workstation-class 3D accelerators in 1993. This is for the first time I see 3D accelerated OpenGL (1.0) on such an old graphics card – and in 256 colors. To be correct, the scene with triangles has just 16 colors because any real-time graphics requires double-buffering. Each byte of the window in video memory contains one pixel from both buffers in the GBRG-GBRG arrangement of bits.

The graphics card is faster than I would expect. The pixel fill rate for smooth shaded triangles is ~50Mpix/s. If you add alpha-blending, you will get ~20Mpix/s. That’s 5-20 times as fast as the Windows NT 4.0 software renderer on a laptop with 133-MHz Pentium MMX and a 2D-only graphics chip. The speed in 3D is more comparable with 3Dlabs Permedia, S3 Virge DX and other consumer 3D accelerators from 1996.

Insignia SoftWindows 95

  • by

PC compatibility was a big thing for UNIX workstation manufacturers in the 80s and 90s. It started with x86/DOS emulators for text-only applications and later evolved in products like SoftWindows 95. This is a full x86 emulator with pre-installed and pre-configured Windows 95 in it and Insignia ported the emulator for non-PC platforms including IRIX, Solaris, HP-UX, MacOS, NeXT and other systems.

I have to say that installing the emulator on SGI IRIX is way easier than I expected. Just insert the installation CD, run the IRIX Software Manager, confirm the installation and that’s it. The first start of the emulator installs the Windows 95 by copying all the files on the virtual hard disk and deploying device drivers. It took maybe three minutes and didn’t require any user interaction.

Windows is preconfigured to see all UNIX folders as network drives, network is configured so you can immediately go on-line with Internet Explorer 3.0 or access SMB file shares. Mouse emulation works the same way as with modern virtualization software so you can seamlessly move the cursor between Windows 95 and IRIX windows. It also changes the Windows 95 screen resolution immediately after resizing the emulator window.

On the other side, games are not playable on my 400-MHz MIPS R12000. There are strange lags every few seconds (although between them, fps is similar to early Pentium systems). Office software runs ok and the only major limitation is in supporting up to 8-bit display modes (no more than 256 colors).

A few nice things from last weeks

  • by

I’ve salvaged two SGI O2 workstations in a very good shape. They were used in Military Research Institute Brno (a state-owned enterprise in Czech Republic). Both have 300-MHz MIPS R5000, 128MB RAM and an extremely noisy 9GB hard drive made by IBM. One of them is full of dust and needs cleaning really bad but the other (which held classified information according to stickers) is clean like new. They were for free.

I was also given two packs full of CDs with SGI marketing materials, sets of hi-res photos of SGI computers for printed magazines and technical presentations for SGI customers. Most of it can be shared with public so I’m thinking about uploading it somewhere.

Sun Ultra 5 Workstation (1998)

  • by

After the introduction of Windows NT and later introduction of Intel Pentium Pro, the PC platform slowly became a big threat for UNIX workstation manufacturers. Most of them disappeared from the market. Some still exist but they don’t make UNIX workstations anymore.

Sun was well aware of the issue and introduced low-cost UNIX workstations based on their own UltraSPARC CPUs. Unlike other models, these were made mostly from off-the-shelf PC components. There are industry standard EDO RAM modules (with ECC) and the frame buffer is in fact an ordinary $40 ATI Rage Pro PCI video chip. All on-board devices communicate over the standard PCI bus and mass storage devices are connected to an IDE controller instead of more common SCSI (at the time).

On the other hand, there is a full-blown UltraSPARC II CPU similar to the ones in Sun’s high-end workstations. There were two configurations available at the beginning. The lower-end one with 270-MHz CPU has 256 KB of external (L2) cache. Its integer performance is on par with similarly clocked Pentium II and the floating point performance is up to 25% higher (comparable with 290-MHz DEC Alpha). The 333-MHz configuration has 2 MB of external cache which can double the performance in certain types of tasks (+80% in SPECfp95).

Let’s put Ultra 5 in the 1998’s workstation perspective. The main target for this machine was “technical computing”. With the price starting below $5.000, Ultra 5 was the easiest way to get a new UNIX workstation. Low-spec SGI O2 workstations cost about $8.000 and their R5000 CPUs were much slower. An R10000-based O2 would be comparable in terms of computational performance. However, such machine was not available under $15.000. To be fair, SGI O2 can handle 3D in hardware (triangle setup, Z-buffer, texturing) and, according to my testing, even the configuration with 180-MHz R5000 (true-color RGB888) is 3-3.5x faster in OpenGL tasks than 270-MHz Ultra 5 (256-color-only mode with RGB332).

Ultra 5 utilizes its on-board ATI Rage Pro chip only for simple 2D acceleration (BitBlt) and the driver made by Sun ignores all video and 3D capabilities of the chip. Solaris doesn’t support the 16-bit color mode (only 8, 24 and 24+8 are supported) which is the only one where ATI’s chip can handle 3D acceleration. Although the chip didn’t shine in image (3D) image quality, its raw performance in professional OpenGL applications was similar to the SGI O2 integrated video (tested under Windows NT). There is no excuse for not using the video acceleration. Rage Pro was pretty good in video (filtered scaling, color conversions,…) and an average mid-end office PC with this chip (on-board) could easily outperform Ultra 5 in MPEG full-screen playbacks. 320×200@30fps video can be played back only in 1:1 mode. If the video is displayed in full-screen, frame rate drops to 1-2 fps.

This is my first experience with Sun workstations (apart from using Sun Ray thin clients at college) and I’m not very impressed. Basic administration is much more difficult than in IRIX or HP-UX (these two have nice GUI/TUI programs for this purpose). The keyboard has useless additional keys and the mouse cursor is refreshed only about 20x per second. The CPU performance was good at the time of introduction but everything else was not competitive in comparison with $4.000 Pentium II PCs. When it comes to multimedia support, even Linux distros from the 1998 were not worse than Solaris.

*) Last photos show that (unlike other UNIX workstations) Ultra 5 cannot handle multiple 8-bit palettes simultaneously. A whole palette is set according to needs of the window that is active, which results in psychedelic color effects. On the contrary, Windows 9x and NT were ready for dealing with single-palette video chips by reserving about 20 colors for GUI. These colors could not be changed if the active application was not in the full-screen mode.

64-bit Future

  • by

64-bit operating systems were a big thing in 1998! They were so wrong with their predictions…

Source: Infoworld

SPEC Viewperf on SGI Octane2 (2000)

Viewperf is an interesting set of real-world OpenGL benchmarks. The original version was developed by IBM but other companies (SGI, Digital…) quickly joined the development and Viewperf became an industry standard for OpenGL benchmarking focused on CAD, CAM, CAE, medical and scientific stuff. Unlike 3D Mark and other benchmarks you can see today, Viewperf simulates a rendering pipeline of real applications on real data.

The data (viewsets) were not developed by the project group. They were provided by independent software vendors. In fact this is true even today with the current version of Viewperf (12). I still use this benchmark when testing workstation-class laptops and NVIDIA GRID virtualized desktops.

The version 6.1.1 was released in 2000 and it was the last version with precompiled binaries for SGI IRIX (among many other systems like Windows NT, Compaq Tru64 UNIX and SunOS). I’ve used it to check the performance of the SGI VPro V6 graphics inside Octane2. VPro V6 is a single-chip graphics solution capable of processing OpenGL commands directly in hardware and it is equipped with 32 MB of memory (24 MB for buffers and 8 MB for textures). SGI VPro and NVIDIA Quadro (which is an ordinary GeForce 256 SDR card with CAD acceleration functions enabled) were introduced at the same time. Although the SGI’s hardware was very advanced in certain capabilities*, Quadro (as a chip born from the consumer segment of the market) was for the first time (slightly) faster even in the CAD/CAE market. This was the beginning of the end of custom professional graphics accelerators (3DLabs, Evans & Sutherland, SGI…). This was also perceived as another hard blow for UNIX workstations after the introduction of Pentium II.

*) High precision 48-bit framebuffer, accumulation buffer for depth of field, FSAA and motion blur effects