CEI: Turning Data Into Insight
It’s been over 20 years since “Visualization in Scientific Computing” (McCormick, et al.) was published. That NSF report defined the field of scientific visualization and sparked two decades of computational science and computer graphics work. In its original, strictly graphical incarnation, scientific visualization brought together the cognitive and behavioral sciences, the visual arts, human interface design, and advanced computation to create a visual experience that allowed a viewer to develop insight and understanding from raw data.
Over the years, data sets have grown larger, computational resources have become cheaper and more powerful, and displays have become more dense. We acquired the ability to overwhelm the human visual system, displaying more information than we could consume at one time. This has broadened the strict visual definition of scientific visualization to include a constellation of non-graphical analysis techniques. And researchers have spent a lot of effort trying to create an even richer visual experience in stereoscopic displays, and immersive graphical environments, with the aim of streaming even more data into the experience.
But no matter the specific approach, the goal is the same: turning raw data into information, discoveries, and decisions. Today, nearly every major computational program in the country provides funding for visualization tools and expertise to tens of thousands of HPC users.
CEI is a one of the few commercial companies focused solely on creating rich software tools that enable analysis of technical data. Now a privately-held company of about 18 people headquartered in Apex, N.C. (near the capitol of Raleigh), CEI was spun out of Cray Research in 1994 to focus on the visualization software that is now its raison d’être: an application called EnSight. Fourteen years after the spin off, the company retains the highly technical orientation it started with as part of Cray Research. Darin McKinnis, CEI’s vice president of sales and marketing, characterizes his sales team of engineers with CFD and FEA backgrounds with refreshing honesty and a dose of modesty: “We aren’t really good salespeople, but we’re OK engineers.”
McKinnis says that CEI’s connection with the technical disciplines of its users keeps the company strongly focused on its customers and the uses to which they put EnSight as part of their daily work. HPC users in computational fluid dynamics are EnSight’s biggest user base, and there is a significant and growing group of FEA users. There are also some niche uses, such as users who exploit EnSight’s stereoscopic and multi-screen rendering capabilities in immersive environments, and users in medical imaging. Although CEI is a North American company with sales offices in Raleigh, Detroit and Houston, EnSight is sold internationally through distributors from the UK to China, South Africa, and Brazil.
Although at first glance the visualization software field appears to have a pretty sparse competitive landscape, the competition is actually varied and vigorous. CEI faces the typical threats from open-source software (ParaView, OpenDX, Vis5D, and others) and commercial packages (Tecplot, FieldView, Patran, and others) that every software company faces these days. But they also face threats from a unique competitor: the post-processing software that comes bundled with many of the most popular commercial analysis tools (ANSYS, MSC Nastran, Abaqus and others). Convincing customers to buy additional software that, on paper at least, performs the same function as software they have already purchased can be a tough sell. According to McKinnis, continually improving the value of the product in the face of this wide competition keeps the company sharp and the product fresh.
The biggest advancements in software usually come in integer version number jumps, and the CEI team is hard at work on EnSight 9, projected for general availability in November of this year. EnSight 9 implements new features and changes to the underlying software architecture that the company hopes will position the software effectively for the future while still addressing the needs of users today.
A large part of what changes with version 9 is “under the hood”: much of the software is being refactored to support a major overhaul of the user interface in a coming revision, addressing a concern I heard from some in EnSight’s user community that the GUI is getting a little long in the tooth. CEI is also adapting to the increasing amount of parallelism that EnSight’s customers have available to them even at the desktop, with improved threading to support multicore processors, and a new layer that adds MPI support for analysis on distributed systems. The addition of MPI was long overdue, and moves EnSight away from an antiquated, sockets-based approach to distributed execution.
EnSight 9 will also include support for Windows HPC Server 2008, a platform that is gaining increasing interest from CEI’s customers. Interestingly Microsoft is partnering with CEI on this effort, donating not only equipment and software but also technical expertise. Other changes include what McKinnis says is a “dramatically increased” use of Python both inside the application and in the batch command environment, and modifications to improve the usability of the product.
Another feature that is being expanded in version 9 was introduced in version 8: Chameleon Mode. This feature allows users and developers to add a custom skin to EnSight. When I hear “skinnable interface” the first thing I think of is the completely gratuitous skinning of browsers and MP3 players to add a visual shout out to my favorite band or Star Trek series (TNG, by the way). EnSight’s skinning has a serious purpose, although I suppose you could add the LCARS look if you really wanted to.
EnSight’s Chameleon Mode allows the interface to be simplified or focused to better support the subset of features that a particular group of users needs to get a certain task done. Users who only need 10 percent of the functionality of EnSight to get their work done can now “hide” the extraneous 90 percent, allowing them to focus more closely on their specific workflow.
Chameleon Mode also has important implications for future business for CEI. As I mentioned earlier, a key competitive force that CEI must manage comes in the form of the post-processing software bundled with popular analysis packages. Companies that regard the visualization functionality as outside their core competency but still a necessary part of the value they offer their users now have the option to flush their custom-developed solution and provide a skinned version of EnSight that looks and acts like their own solution, effectively outsourcing the non-core area of their business without disrupting their users’ workflow. In May of last year, MSC Software Corp. announced that it is taking this approach a step further and actually incorporating APEX, CEI’s name for the technology under the hood of EnSight, into its forthcoming SimXpert product line.
Looking farther down the road, McKinnis was optimistic but practical about the potential integration of Web and mobile platforms in EnSight’s delivery model. The company isn’t talking about any definite offerings in these areas, but it is actively exploring them, and keeping an eye on what Web giant Google is doing as it expands its empire to include hosted data analysis tools with the release of the Google Visualization API.
CEI is taking a page from the Web 2.0 playbook, however, with plans in the works to make EnSight’s internals, in McKinnis’ words, “totally open.” While the package does offer some access to the internal data structures today, API coverage is far from complete. For example, one can write a PLY exporter for EnSight today and include the coordinates and connectivity of points on an isosurface, but you cannot get at normals or vertex colors. The code refactoring that underpins much of the work going into version 9 will support an expanded interface to the internals of the application, giving developers and users much deeper access to the objects they create with the software.
McKinnis did have some interesting feedback on the impact of increasingly powerful graphics cards from AMD and NVIDIA on their efforts. EnSight comes in several flavors: EnSight DR for cluster-based rendering; EnSight Gold for parallel processing, VR and collaboration software; the standard EnSight; and EnSight Lite. McKinnis observed that new graphics cards with dramatically larger memory are opening up the problem space for customers, and essentially eliminating the need for their DR product solely for large datasets. “Customers may still need DR to drive tiled displays or for remote rendering,” observes McKinnis, “but the hardware has advanced to the point that many customer needs can be satisfied on large datasets without it.”
CEI clearly understands what its users need from its product, and understands how important it is to continually refresh that understanding. The upcoming CEIViz user event in September, at which the beta of EnSight 9 will debut, will provide CEI’s developers and architects with three days of close interactions to help them shape the future of their product line. By positioning itself close to its customers, and by maintaining a strong focus on the work its users need to get done even after 14 years of doing business, CEI may have found the recipe for staying ahead in a treacherous market.