EnSight QuickTools Part II: Graphics Performance Benchmark PDF Print E-mail

With EnSight 8.2.6(f), CEI continues to expand the supplied collection of “QuickTools” with an entirely redesigned graphics performance benchmark system.

Accessing QuickTools

userdefined_icon The QuickTools are accessed through the user defined tools icon from the icon strip located below the main EnSight menu bar. If this icon is not available in your icon set, you can enable it using the “Modify and save icon layout…” button in the “General User Interface” preferences panel. When the icon is selected, the user defined tools panel is displayed.  The panel is a collection of horizontal tabs and looks like this:  

image2_2

To access the QuickTools, click on the “EnSight Quick Tools” tab and you will see the four QuickTools: “Import a movie or image as a textured annotation”, “Import a query from a CSV formatted text file”, “Sample a variable while rotating a theta clip” and the “EnSight graphics performance tests”. This article covers the new "EnSight graphics performance tests". A previous article covered the first two items. Other QuickTools will be added and covered in future articles.

The EnSight graphics performance tests

To bring up the performance test tool, simply click on the appropriate QuickTool button. The following window will come up after a few seconds:

perf1_small


Take some time to read the information in the window.  The example was run on a laptop, but different information will be displayed depending on the platform (e.g. comments about use use of nVidia drivers, LCD panels, etc). In all cases, the basic platform information is displayed at the top of the window followed by instructions and platform specific comments.  For most users, the two options in the 'Benchmark' menus are your next stop. These options select between a complete characterization of your graphics subsystem or a simpler, peak benchmark test. The peak test is a little shorter, but in all cases, the new benchmarks will take substantially longer than the older CEI graphics benchmark and are much more thorough. Some cards with large memory capacity can take over a hour to fully characterize.

How it works

The original EnSight graphics benchmarks were based on a fixed dataset and reflected rendering modes and operations that were common at the time. The rapid pace of graphics card development and the adoption of new rendering techniques in EnSight have left the older benchmark dated to the point that it no longer accurately reflects differences in rendering performance in recent graphics cards. A new benchmark system was designed to address these trends with several important new features.

First, the measurement mechanism itself has been improved. Tests now render for a minimum amount of time and compute results over as many frames as can be rendered in that timeframe. Reported values are now computed in polygons per second instead of framerates. As a result, increases in performance still render for a reasonable amount of time and the reported values increase with performance. Second, the tests themselves have been updated. Tests of depth peeling based transparency and texture mapping have been added to reflect new and improved rendering techniques. A new weighting scheme as been implemented as well, which reasonably reflects general usage patterns. Finally, the tests are based on a synthetic dataset that can be dynamically resized. This allows the tests to measure performance over a range of dataset sizes, illustrating the full performance envelope of a graphics card.

The tests are run by loading a standard dataset using the EnSight "synthetic" reader. This dataset varies in the number of polygonal elements over its timesteps. Next, the rendering environment for the test is set up for the specific test and a measurement made. The dataset size is then increased and the procedure repeated. This is continued until performance peaks or EnSight detects that system resources (e.g. memory) are exhausted.

This procedure can put a great deal of stress on systems and hardware. During testing, the benchmark has caused some systems to crash. Updating graphics drivers and/or increasing system memory has helped in those cases. Generally, graphics drivers should always be kept up to date for best performance. Another common issue is that drivers may limit framerates to the maximum refresh of monitors. In the case of LCD displays, this often means a maximum framerate of 60Hz, which can severely limit performance. Whenever possible, disable frame synchronization or enable features like triple buffering for maximum performance.

Running the benchmarks

To start a benchmark, select the Benchmark->Run complete benchmark menu.  EnSight will run for some time, loading many datasets and timing rendering.  When it is done, the results are displayed in the text window, but for best viewing, select the File->Toggle plot menu option.  It will open an adjustable graph pane below the text that looks like this:

perf2_small


The graph shows each of the tests and the performance, as measured in polygons/sec, for every dataset size tested. Most graphics cards start slowly and quickly ramp up to near peak performance until the card begins to run out of memory.  At that point performance starts to drop at various paces. The curves of the graph demonstrate the size of dataset the graphics card can handle before performance begins to drop.  It also illustrates the differences between rendering performance for the various display modes in EnSight.  These differences can be quite large. It is not uncommon for "smooth" part display to be more than 2 times faster then "gourand" part display.

The other benchmark option is "Run quick benchmark". This test can be shorter and its results are displayed in bar graph format as shown below:

perf4

In the titles of both graphs, there is a number in parenthesis, in this last case 3.18.  This is the overall score of this system configuration. The number is a weighted average of all of the various benchmark tests.  It can generally be interpreted as the number of millions of polygons per second the graphics card can handle for a mixture of different types of rendering.

Remember, you must restart EnSight before running the graphics benchmarks a second time if the Immediate mode test is performed. That test is always performed for any of the options in the Benchmark menu.

Sharing your results

Once you have some benchmark results that you might like to share with others, this QuickTool has the ability to send the results directly to CEI over the internet. You must have a network connection capable of browsing the CEI website (www.ensight.com) to use this feature. We are presently working on a Web interface to allow you to browse all of the existing results and compare your system to other published results and we hope to provide a link to it from the 'Performance' web pages in the future.

To submit your data to CEI, select File->Submit results to CEI... and confirm you want to do so.  You will be prompted for a description of your hardware platform:   

perf3


Generally, you do not need to include the graphics card, number of CPUs or memory size in the description.  Those are all detected and reported automatically. The information sent to CEI includes all of the information in the text portion of the QuickTool window, including your customer name and hostid. The OS is recorded as the 'cei_arch' name. If you desire a more detailed description than that (e.g. Windows Vista vs Windows XP), you could include that in the system description as well. There are options in the File menu for saving the data in a spreadsheet format, printing the plot or copying the plot to the system clipboard for your own tests and comparisons.

Advanced usage

There is an advanced menu.  This menu allows you to select a subset of the tests or other tests that are not part of the formal benchmark and run them in the complete or quick modes.  It also allows you to load the test dataset without actually running the tests. Finally, there is a menu option to compute the current framerate for whatever graphics are currently being displayed by EnSight. This option will render your data for a minimum of 5 seconds and compute the FPS based on that information.

A couple of platform issues

The tool has been updated with 8.2.6(f) to make a better estimate of the amount of memory it is using and this has improved stability on several platforms. There are a few known issues on some platforms.  First, it is not supported under HPUX. On the Apple OSX platform, the ability to submit data to CEI over the network is not supported. The tool does not presently work with EnSight DR and we are working to address this issue in the future.

The next installment...

In our next installment of the QuickTools series, we will discuss the new, more native Python, interface to the EnSight command language released with 8.2.6(e).

 

Until then, we hope you find the performance test useful and we look forward to seeing how your systems stack up to ours!

 

 

valid xhtml? | valid CSS?

Joomla Templates by Joomlashack