Examining Benchmarking
VL writes "Benchmarks exist to determine how a particular piece of hardware performs in relation to itself, and to others. Question is, are readers getting the information they really need?"
← Back to Stories (view on slashdot.org)
studies and benchmarks are so often biased. it's hard to get a study that isn't. follow the money trail --- sponsor of the study
no big sig
Do it in secret with home made tools.
As for benchmarking results posted by benchmarking companies and sites. Well they have to eat too
Second problem are known tools, leads to driver tampering, ok that's not related with food on the table of benchmarkers
Signature Pro version 1.13.2-3 release 83.5 beta3try7 after-breakfast edition
Sure, there are people who love posting benchmarks of their systems, but surely the real test of a system is not how it handles one specific cycled demo. It's whether or not it handles the games you want to play and if you're happy with the performance of your system as you're blowing the crap out of whatever 3D menace is threatening the world, don't start worrying over a few frames per second.
When I was performed photographic quality control, I ahd a reference platform and true statistically valid performance data to base any decisions on. Unfortunately hardware sites don't exactly do the same thing. They use different hardware (usually provided by the vendor or a reseller looking for a plug), and everything becomes a variable. What I was taught about analyzing anything was to eliminate variables. Most benchmarks will work as long as you create your own reference platform, specify everything used in excruiating detail (driver version, etc.) And also place a disclaimer that the test is only good based on your hardware and setup. When I read a benchmark, I use it as only a guide. I do not take the numbers literally since I cannot reproduce the test. And that is where the problem lies in hardware site benchmarking. Anyone should be able to get the specific hardware mentioned, assemble it, install the OS and run the benchmarks and get similar results. My money is they won't because of "tweaked" drivers, benchmark program versions, or hardware, software, or OS settings that do not make it into the documentation or the column for the site. The only benchmarks I pay any serious attention to is SPECInt and SPECf, because there has to be full disclosure of all options used before SPEC will approve of it.
especially when pcworld or whoever compares entire PC packages... so much can change depending on what background software is being run, system tweaks/factory settings that could be off... no one should really buy a pc package based on those comparisons alone.
This post was brought to you by the number 584811 and the characters / and .
My issue with benchmarking is this... When people read benchmarks, aside from the bias occurring with someone using a favored product, people will often have to take benchmarking as nothing more than an indicator for the following reasons: People will not have access to all the equipment used in a benchmark trial, hardware/software, so they're often going to have to rely on someone else's OBSERVATION. Information can be tweaked easily, and someone who has say a favored product can often tweak it to perform better than the competition, or make the competition's product behave worse.
Also as stated on an above post, who is sponsoring the benchmark testing, and why. Often you will see that %99.99999 of the companies sponsoring benchmarking tests come out with gleaming reviews. Has anyone here seen an MS sponsored test prove unfavorable to MS. It just doesn't happen. Independent studies should post all information concerning why they're doing benchmark tests including any sponsors, this way those reading the published results can get an overall VIEW of the results and use them as nothing more than in indicator and not solid fact.
MoFscker
And that's the only way to look at it. I use photoshop more often than anything else, and as long as a machine can run it well then it's passed my benchmarking tests just fine.
When it comes pointless is when a single simple benchmark is taken alone. If that were the case then a machine like a 1GHz G4 would own everything else looking at just RC5-72 benchmarks. 10 million keys/sec? no problem, quicker than any other machine like it on the market.
Look at that as just one benchmark among dozens and you form a better picture, that the G4 has a vector unit that performs exceptionally well, and you can get an idea how the rest of it performs.
Add up enough of those simple numeric benchmarks and all you get is one huge mess in mind with no REAL idea of how a machine will perform other than theoretically. Best combine them all together and go back to running the app(s) you're likely to use most.
... on mainframes in the old days. The idea of a benchmark is to determine how your workload will perform on a given platform. The key here is "your workload". Using synthetic benchmarks is a great way to determine relative performance, if your workload is running synthethic benchmarks. For most people this isn't the case.
The problem is that every workload will have a different I/O and instruction mix. Each instruction has a different execution time, and the performance of I/O devices is frequently a function of the access patterns to data.
As a result, a synthetic benchamrk may be a poor indicator of the result from the actual execution of your individual workload. These benchmarks are intended to provide guidance, and potentially identify platform performance bottlenecks. That's all. Reading any more into them is the fault of those that use the results improperly.
Can You Say Linux? I Knew That You Could.
What matters is how much stuff you can draw per frame time, not how many times you can redraw it during a single frame time. 3D benchmarks should gradually increase the scene complexity until the frame rate drops. Often, there's a huge performance drop when the onboard memory of the graphics board fills up. Running old games at huge frame rates won't show that.
Scene complexity is the limiting factor for game developers. Artists are always saying "I need a bigger poly budget". If benchmarks focused on scene complexity, we'd have gigabyte graphics boards, and "wow, you can see every eyelash" scene complexity.
We also need more intensity depth in graphics boards, to clean up that murky look so typical of games. Rendering really should be done into at least 16 bits of intensity, then sent to the screen through a film-like gamma conversion. That's how it's done in offline renderers for film.
I am not as interested in benchmarks as I am interested if my harware will work well with my software. If I buy a video card, will it run my apps? Perhaps some of these review sites should take the 10 most popular applications, like games, a compiler, database, etc... and tell you if your hardware will run it without hangups or hiccups.
The other bad thing about benchmarks is you will probably not have the same motherboard/ram/cpu as the test system.
Rosco: "If brains were gunpowder, Enos couldn't blow his nose."
I think the writer made very relevant points. Generally the universe expands faster than our own speed, and so we never get to the edge of the universe. But in the world of technology, sometimes technology grows faster than the real world it is supposed to inhabit, and so the real world gets left behind ... The writer has identified just such a crossover, and hence his call to update benchmarks is very valid ...
But I would like to add another dimension and that is the eye of the beholder ... If all the person is looking at the benchmarks for, is to quickly sell it to his unsophisticated boss, or another unsophisticated boss who will get his employees to use it, then what he needs are simple and clear cut benchmarks - and more important, time tested benchmarks. Generally the powers-to-be with the moolah do not like the messiness that inherently comes with trying to "realify" the models .... From my experience this is not how it should be, but I have found this is how it is ....
I am not saying that the writer was in anyway wrong .. just that he must also look at the consumer of his benchamrks ... is it someone who is going to use the technology him/her self or is someone who is going to sell a technology to someone who will have someone else use the technology ....
To see a world in a grain of sand, and then to step back and see the beach where the sand lies
Seriously? Who modded this up?
Godel's incompleteness theorem is about complex mathematical systems and the essense of proof. You don't need an external object to compare to, anything will do. You just choose some graphics card as your fixed point and then compare everything to that card.
Combination - fun iPhone puzzling
the best benchmarks are those provided by your favourite game. UT2003 is an example frequently cited (and used) since the it comes with a series of benchmark tests (fly-by and botmatch) built in. That is the information I value the most, since after all I don't really need to play 3DMark-Wildlife as smooth as possible, but the games I play. I hope software developers follow the trend.
Hack your mind out of its sandbox.
This might sound like I am stating the bloody obvious, but it's true. I think there are several facets to good benchmarking (based on my own experiences and reading other reports)....
1, Choose a test/workload that is representative of what *you* will be doing. There is no point in looking at SPECINT200 if you are going to be running an I/O intensive application like a RDBMS. Try and run or study tests that are relevant to the intended use of the system/component you are benchmarking.
2, Take note of things like compiler flags etc. These are important in tests like SPEC, as your results can vary wildly according to things like optimisation level. Some compilers produce faster code on certain CPU families and not on others. This is a reason why a lot of vendors will build their own compilers and test with them (e.g. SGI, SUN, DECPAQ).
3, Look at the full disclosure notice in the benchmarks. Take a look at the system configuration used. This is particularly, IMHO, on tests like TPC-C. The score you see might be based on a really whacky config, like most of the figures at the top of the list. For example, look at the Proliant figure (709k) and look at the config: 32 x 8 way servers to run a single database. Then compare it to a 64-way SuperDome or 32-way p690. Which comfig makes more sense? For a database, I would likely go with the single system for simplicity's sake. On another application, maybe the cluster would make sense.
4, Compare apples to apples. This is the hardest part, as CPU's, OS's, I/O, Apps. Compilers etc etc all vary across platforms. I like to to try and compare one variable if possible. To take the TPC-C again, I try to compare DB against DB, Cluster against Cluster, SMP against SMP etc etc. There is nothing to be gained, IMHO, from comparing MS-SQL server in a cluster on Xeon with Win2k3 to Sybase on a SF15k running SPARC Solaris. How do you properly compare these two results? Maybe the solution would be to look at SQLServer on one system against another or Sybase vs Oracle on a similar Unix system.
5, YMMV. Benchmarks are only ever an indicator of performance, not a guarantee. I tell my customers this all the time. They represent a result with a particular system, data set, O/S, tuning settings etc etc at a point in time. Other people's results with a similar config might differ considerably.
I could go on forever, but the above are my 2c
I don't know.. The higher the 2001SE score, the higher the FPS in a game, typically. That is, unless someone's drivers are cheating.
He didn't even mention 3DMark2003, which does a more comprehensive job testing modern GPU features and is included on any benchmarks of 'modern' (aka DX9 supported) cards.
Think about it, in 2000 when they were working on the 3dmark 2001, directx8.1 wasn't even done; to my knowledge, most of DX8 wasn't even used in 3dmark 2001se.. Since then, cards came out with tons of new feature sets (directx9, AGP 8X, etc) and there was simply a lag time between good benchmarking software.
Now, I do agree with charting performance over time. This would be much more handy when doing comparisons of AMD and Inel processors. I get the same over-all frame rate with my AMD 2400 as an Intel @ ~2.6gig. But, the Intel w/ a faster bus will likely not be getting those split second ticks where the AMD is 100% occupied or the FSB is flooded.
I'm not knocking AMD at all. I can just tell a difference in the overall smoothness of a CPU intensive game. When I bought mine, I spent about 3/4 of what I would have spent on an Inel rig and got around 3/4 of the performance.
It all works out once you stop paying attention to a marketing department. People always say you can't trust advertising, but act so suprised when a company is exposed for making a false claim of some minor sort.
you get what you pay for.
Also, instead of complaining about poor benchmarks in real-world situations, you should write the various game developers and request they add, or consider adding, a benchmark to their game engines. Having to 'devise' a way to test game performance probably isn't going to result in wide-spread adoption of that particular benchmark. ID Software's engines have always come with built-in benchmarks (timedemo), thus making them very easy to test. That's why you always see the games that use ID's engines in benchmarks.
That brings me to my final point, he mentions that StarWars game should be tested instead of Q3, yet it uses the same engine. Sorry, more copies of Q3 exist, and since any game using that engine doesn't bring anything new to the table, might as well stick with it. eh?
Modification of the front side bus speed is now a fairly trivial affair, it can be done by software whilst the system is running. Increasing it by 2% is very unlikely to cause the system to fail, but will give you a few dollars more on your benchmark result.
Various BIOS settings are also able to be changed on the fly, checking all these values whilst the benchmark is running will alter the results of the benchmark, but the difference they can make requires any true benchmarker to monitor them...
It seems rather obvious that we need a paradigm shift in the way we benchmark our hardware. I like benchmarks of things I actually do with me computer. For example, the time it takes a setup to encode an mp3 or svcd file. Some people are using benchmarks like these, but there is no readily available program suite that benchmarks your system using these real life scenarios. Sure, I could do them myself, but I wouldn't know how my system performs to other systems if there isn't a standard benchmark.