I was flipping through the TV channels one recent evening when I came across dinosaurs chasing Sam Neill through a jungle. Jurassic Park, I haven’t seen that in ages! But after a while I wondered, where are Laura Dern and Jeff Goldblum? And these other people, they weren’t in that movie, were they?
During the next commercial break the TV schedule and Wikipedia revealed that I had stumbled into Jurassic Park III. It came out in 2001, the original dates back to 1993.
Had I really been watching the movie I originally thought I was watching, I would have seen the scene where our palaeontologist and mathematician heroes along with the grandchildren of the hubristic re-creator of the dinosaurs run into a now battered control center in hopes of using some technology against the hungry ancient creatures. The adult scientists are intimidated by an array of high-end computers, but the young girl says “Oh, this is Unix, I know this!” and sits down and starts manipulating systems through a large workstation.
The servers and workstations were SGI (or Silicon Graphics, Incorporated) systems running IRIX, the SGI implementation or flavor of Unix. This movie relied on many significant advancements in 3-D modeling and graphical processing. In the early 1990s, fast ray-tracing had to be done in hardware and SGI led the field. The SGI systems created the dinosaurs and other graphics effects, and the computers appeared in a number of scenes. This wasn’t the usual product placement. Only a tiny fraction of movie-goers would have recognized the SGI computers and few of them would have been considering the purchase of an industry-leading computer graphics system.
Processors were nowhere near fast enough to render 24 high-resolution frames per second to create more than one very brief shot within the movie. The Silicon Graphics hardware pipeline was needed. Similarly, you couldn’t just go out and buy a multi-terabyte disk drive. Typical operating systems, even those used in business, government, and research, used file systems with limits not much beyond the typical storage hardware of the time. But when you’re making a movie with realistic computer-generated imagery throughout…
SGI developed their own custom file system, XFS, making it the default on IRIX in 1994. It was designed to be large and fast. An XFS file system can be up to 16 EiB in size (one EiB or exbibyte is 260 bytes, that’s 1,024 PiB or 1,048,576 TiB), which for most of us is quite large indeed. This is why agencies like NASA and the U.S. Department of Energy have been long-time users of XFS.
XFS was also designed for high-speed I/O. Sure, it’s obvious to think that if you are rendering high-resolution movie frames you need to get them out fast for display. But anyone with enormous data sets has the problem of I/O potentially taking much too long. The parallel I/O of XFS can scale to very high bandwidth spanning multiple physical storage devices interconnected through fibre channel.
Today Linux is the predominant operating system in “render farms”, the arrays of compute servers doing the math and geometry to realistically render frames for movies, television shows, music videos, and commercials. SGI went bankrupt and was purchased in 2009 by Rackable Systems, which changed its name to Silicon Graphics International and continued in the high performance computing field. Their compute servers run Linux.
XFS was ported to Linux in 2001. With the growth of storage and the increasing use of Linux in high-performance computing with ever-larger data sets, Linux XFS support has become increasingly important. XFS includes journaling, like native Linux Ext3/4, and NSA Security-Enhanced Linux labeling has been back-ported into it.
XFS has been available as a choice for some time, but last year Red Hat surprised many people by selecting XFS as the default file system for Red Hat Enterprise Linux 7. This is very different from RHEL 6, where you had to pay extra to get XFS support through the Scalable File System add-on.
The commands to create, tune, check, and repair XFS file systems are similar to those used with Ext4, but the syntax is different. Learning Tree’s Linux server administration course shows you how to create and maintain XFS file systems, while the Linux optimization and troubleshooting course shows you how to tune its performance and rescue even severely corrupted file systems.