Monday, September 26, 2011

Benchmarking for Fun (Or for Info.)

So if you frequent tech forums, you might hear something along the lines of "...only matters in synthetic benchmarks." or "You can't tell the difference without a benchmark." And, if you like the idea of having a slightly overpowered system, you may just want to know how to go about those benchmarks. Even if that's not the case, you may be wondering what will help your performance in a particular game the most, or wanting to find out just how effective your CPU or GPU is for a certain game.

If you read a lot of reviews, you've probably seen all the methodology, all the different names of software, and seen tons of numbers with pretty bars and graphs. Well, I hate to tell you this, but generally, the pretty bars and graphs don't just come with the software. Luckily, it's the numbers that matter anyway.

 So, for starters, lets discuss benching for fun. The most commonly used benches for gaming performance are Futuremark's 3DMark series. The "standard" comparison points are the default settings, which you can get in the free trial version. Lets you get a better database of scores going.

If you're going to bench for fun, the most important thing to remember is that you need a consistent set of benching processes. The best way to do this is to have a secondary account on your PC with the absolute minimum of automatic services, to make sure memory use is consistent. Keep drivers updated, although you usually won't want to use Beta drivers unless you need a specific feature. (Always test beta drivers prior to sustained use, some graphics drivers have been known to cause thermal issues.)

So, now that you have your consistent stuff, you get a baseline. That's just at your normal settings, how does it work. After that, you can try tweaking things to see if they gain you performance. Whatever you decide to tweak, make sure you test with the same processes as before. It really can make a huge difference in scores, or enough to skew data to the point of unreliability.

Generally, the GPU is the easiest thing to tweak, since there's simple GUI based OC utilities that work reasonably well, like MSI Afterburner, or (to a point) EVGA Precision. Remember to push it up a little at a time, and test for stability before starting the benchmark. If you raise your GPU OC and suddenly lose performance, you either need to raise your GPU voltage (at your own risk), or lower the clock back down a bit. Generally, in graphics cards, RAM clock will be less performance for the voltage than core clock and shaders, so you generally won't want to bother with it.

The CPU, is, of course, one of those things people really think about overclocking, and a lot of people are scared of it. If you do your homework, have the right components, and do it carefully, it can be a perfectly safe way to gain performance. You only void your warranty if you do damage that can definitely be attributed to overclocking, so usually you're safe if you keep the OC within the CPU manufacturers specified voltage range.

This isn't an overclocking guide, but I will say that in recent i7's, it's usually best to raise clock to the desired level first, then see if you can squeeze hyperthreading back on safely. Hyperthreading will raise your score in 3DMark, but less than most clock speed gains. RAM speed and timings can also affect it, as can IMC clock, and basically all the usual culprits.

But now, I'm sure, you're wondering about the benching for information thing. After all, E-peenery is fun, but there's only so much you can say about it. If you want to learn something through benchmarking, you're going to need a few things.

1: Consistent Monitoring. Be it FRAPS for FPS/Frametimes, HWMonitor for temps, or something else, you must use software. Eyeballing it is worse than useless.

2: Consistent Playthrough. You need a replay, or a specific save file, or something that you always use for benchmarking. If you're getting an FPS recording of different things, it doesn't tell you much.

3: Objectivity. This is the key. If you aren't objective, you're useless. You need to be willing to get results you didn't want or expect.

Well, as for methodology, it depends a bit, based on what exactly you're wanting to test, but essentially you need to isolate a component. For CPU/RAM testing, graphics settings not requiring the CPU should be turned down, to include resolution. This ensures that the limiting factor will be your CPU. For RAM, you just get a baseline at a "Typical" setting, like CL9 1333 for DDR3, and work from there, using the same CPU clock.

If you want to isolate GPU, you crank the desired graphics settings, turn down anything you can involving the CPU, and hope you aren't trying to isolate the graphics card on an RTS. Won't happen unless you have a really screwy rig.

If you want to monitor temps, you need a consistent ambient temperature, and consistency in everything except what you're testing. Including what you use to heat up the PC, and how long you run it prior to measuring.

I know this hasn't really been long on details, but it's really more to get you thinking the right way.

No comments:

Post a Comment