[help index]

Testing with 3DMark

This page contains important information that is required for reliable testing with 3DMark. Please read this page through very carefully.

Official 3DMark 99 MAX Testing Guidelines
Refresh Rate and Frame Buffering Modes
FAQ & Tips

Next...

[help index] [top of page]
Official 3DMark 99 MAX Testing Guidelines

In order to get accurate and repeatable results please make sure you have done the following:

  • You must use same refresh rate and frame buffer mode for all tested 3D accelerators.
    Official test settings are:
    • Triple Buffering
    • 60 Hz Refresh Rate (Adapter Default)
    • VSync On.
  • You must use the same CPU Optimization on all accelerators.
  • We recommend that you enable VSync when benchmarking since it can not be disabled on all 3D accelerators.
  • We recommend that you use the same monitor and monitor settings for all tested 3D accelerators.
  • Stop all other programs. Under the 32-bit Windows operating systems, other tasks can preemptively run during the tests, thus affecting the results. You will want to eliminate as many of these types of tasks as possible, such as PerfMon or System Agent or other tasks from your StartUp folder. This action also maximizes your available memory.
  • Disable any network connections and file sharing. Background network activity may affect results.
  • Restart the computer before running the benchmark.
  • Run the tests at least three times to verify that the results are reproducible.
  • Follow a standard testing procedure each time you run the tests.
  • We recommend that you test 3D accelerators on a "clean" system only. You should use a program like "Norton Ghost" (http://www.ghost.com) to restore a clean system for every 3D accelerator.

These measures help to ensure that your results are consistent.

Because of the changes in the testing methodology, more care needs to be taken when benchmarking with 3DMark 99 MAX.

3DMARK 99 MAX BENCHMARK RESULTS ARE INCOMPATIBLE WITH THE PREVIOUS VERSION OF 3DMARK 99. YOU SHOULD NOT COMPARE THE RESULTS OF DIFFERENT VERSIONS AGAINST EACH OTHER.

 

Next...

[help index] [top of page]
Refresh Rate and Frame Buffering Modes

What is Refresh Rate and VSync
Refresh Rate indicates how many times per second the image on your monitor is drawn. It is not directly related to how many times per second the content of the screen changes. Normal refresh rates are for example 60Hz or 75Hz. 

Vertical Retrace or VSync is a signal that occurs once per screen refresh, when the electron beam on the monitor starts drawing a new frame from the top-left corner of the screen. Usually all programs wait for Vertical Retrace to occur and then flip front and back buffers. This eliminates any "tearing" effects on the screen and results in a steady image being shown. If VSync is disabled, the programs do not wait for the electron beam to finish updating the previous frame but can change in the middle of the refresh, as soon as the back buffer image has been rendered completely.

Frame Buffering Modes Explained
Frame Buffer is an area of video memory that is used by the 3D accelerator to store the pixels (image) rendered. Frame buffer size depends on the used resolution and color depth. For example in 800 x 600 resolution, 16 bit color mode one frame buffer takes 800*600*2 (16 bits = 2 bytes) of memory, that is 960,000 bytes. Front Buffer is the frame buffer currently displayed on screen. Back Buffer is a non-visible frame buffer.

Single Buffering uses only one front buffer. It is displayed on screen at all times, while also rendering to it simultaneously. Therefore the image "flickers" as it is getting updated. Single buffering is not used by real world applications because of the flickering issues, but if it is used, the results are not affected by refresh rate or vsync setting. 3DMark detects VSync to be off when single buffering is used.

Double Buffering uses two frame buffers, one front buffer and one back buffer. The 3D accelerator renders always to the back buffer, and after the render is complete, the 3D accelerator waits for VSync, after which it swaps front and back buffers and starts rendering again. Double buffering is used by most games by default.

Triple Buffering [default] uses one front buffer and two back buffers. The 3D accelerator renders to the 1st back buffer, and immediately after completing it starts with the second back buffer. Front and 1st back buffer are flipped on VSync. Triple buffering is gaining popularity in games as it usually makes gameplay smoother.

Quad Buffering does not exist as it is not practical. In a fast-paced interactive game, the time when your actions would be visible on screen could be as high as only after 4 drawn frames. With 30 fps, this would mean a 0.13 second delay in user's actions.

Effects of Different Buffering Modes
With Double and Triple buffering, the maximum attainable frame rate is the refresh rate unless VSync is disabled (off). Single buffering behaves always just like VSync would be off and has no maximum frame rate limits. In other words, the refresh rate limits the maximum frame rate performance - the frame rate can not go over the refresh rate if VSync is enabled.

Good and Bad Triple Buffering Implementations

Some 3D accelerators have a faulty implementation of triple buffering, where triple buffering behaves just like double buffering. The following image shows the effects of this problem:

The two leftmost scores show that triple buffering implementation is "faulty", i.e. produces the same results than double buffering, when the "correct" results should be closer to the ones produced by single buffering. It is a surprisingly tricky issue to get working correctly, and has not been important until recent benchmarks have made it popular, so it may not work as desired in older 3D accelerators.

Using triple buffer is a good thing as it usually improves game frame rates. Also, because of various bizarre technical reasons to do with memory access patterns, triple buffering can actually be faster than single buffering in some cases.

Other Notable Facts
Different 3D accelerators may have different internal (hardware or driver level) implementations of buffering modes, refresh rate and VSync on/off. This means that one accelerator may, in comparison, perform better using a certain setting, but perform poorly with other settings.

Comparing two accelerators, one using for example 60Hz refresh rate and the other 120Hz, both with the same VSync setting (on or off) may bias the performance toward the accelerator with 60Hz refresh rate. The lower refresh rate consumes less internal memory bandwith on the 3D accelerator, leaving more bandwidth for rendering purposes. Theoretically best results should be achieved with VSync off, using 60Hz refresh rate. Remember to use the same VSync setting and refresh rate on all accelerators, otherwise the results will not be comparable.

 

Next...

[help index] [top of page]
FAQ

A complete, up to date FAQ is available at http://www.3dmark.com/support/faq.shtml. The FAQ contains general troubleshooting information, 3D accelerator specific troubleshooting and CPU specific troubleshooting info.

Tips

  • You can easily take screen shots for publishing or comparison by pressing F12 at any time when running the program. All screenshots are automatically captured and stored into your installation directory as sequentially numbered .bmp files. For example:

    C:\Program Files\3DMark 99 Max\shot0001.bmp

More tips available at www.3dmark.com

Next...