I’ve noticed that there are quite a few threads where people ask questions about what computer they should buy.
I had an idea about this, but am not sure if its been done already…
Here it is:
We have a downloadable benchmark .blend file which we can run a few performance tests on - e.g. length of time to do a standard render, length of time to do a 100 frame animation.
Then we send the results back to the thread with details about the computer we’re using… speed, cards, operating system and wotnot. This way we might be able to have our own mini reference point, with some hard performance data
What do people think? Or has it already been done?
We’d also want to test video cards and the like, remember that vidcard doesn’t affect rendertime.
Also, not everyone wants blender for the renderer, some people want the gameengine too…
Maybe also a benchmark game, and measure the framerate?
I’d join in, but it would basically be telling people “don’t buy a 4-year-old P150 laptop”
Yeah, a nice picture at the end of it would be good. There are lots of nice stuff in WC, WIP and Finished Projects and I notice Modron’s started a thread of Models in the News thread…
I’m not so hot on knowing what a benchmark .blend file should include or what would be useful information as test output. All I have in mind is “How long does it take to do a Render or animation?”
Phillip: a Game Engine test as well - sound like a good idea.
Some more thoughts:
I would imagine that the main issue is No. of vertices / faces. But I undertsand that some models take more memory but as soon as you use mathematical stuff (Subsurf for instance), although memory usage might be low, it will increase resources at render time. hmmmm.
So more guesses - I would imagine that a high poly model and a low poly but highly subsurfed model might be two aspects to look into?
Benefits of this would be:
some hard performance data for people to look at when thinking of what computer to buy (which is directly relevant to Blender)
a source of comparison between Blender versions
a health check on the system we are using
And for the person who creates the definitive benchmark.Blend file… lasting immortality in the Blender Community!
I would guess that some of our communities computer gurus might be able to help us to think this one through. Good idea? Crap idea?
It’s a good idea but I can see a couple of problems that arise with all benchmarks. If the difference in performance between a high end system and low end system is huge then are people on low end systems going to wait for the render to finish? I think the blend file would have to be tweaked so that it took long enough on a fast machine to benchmark it between others but not too long so that phlip doesn’t have to leave his P150 alone for the day to let it finish. As GCat points out:
And for the person who creates the definitive benchmark.Blend file… lasting immortality in the Blender Community!
Another thing is about optimization. Correct me if I’m wrong but I don’t think that Blender is optimized for specific systems yet (the G4 ppc is one and possibly the P4 too). Mainly I mean dual processors, though. So even if a render finished faster on a single proc 3GHz P4, is it a better system than a dual 2GHz AMD? Maybe, but the second processor in the AMD will let you use your machine as normal while Blender renders in the background.
I think there are standard 3D tests already like the Cornell box. That might be a good start but you’d need to use yafray for the caustics in which case it’s not really a Blender benchmark. As for games, unix based systems have better OpenGL support than Win32 machines so that might be an issue.
It’s probably worth a try but I’m not sure that the results will be reliable considering that some might tweak Blender or the blend file so their system appears better.
Add a UVSphere at the origin (0,0,0)
Set camera at (0,-10,0), pointing at sphere
Make sure there’s a lamp
Turn subsurf on for the sphere and set the second subsurf level (the one that tells it what to do at rendering time) to 5
Render with default settings, using 100% render size
Render!
I’ve just done this.
On a Mac G4 (867 Mhz processor) powerbook
With a fair bit of junk on the hard disk (20 GB free)
256 SDRAM (whatever that is)
And OS = OSX 10.2.8
Thanks SamAdam. That was really useful - so does this explain why it takes hardly anytime to render the same thing at SubSurf level 4 and yet SubSurf 5 takes so much longer?
Benchmark tests seem to be more useful than I imagined
between level 4 and 5, there is 4x more faces. This consume a lot of memory, but also rendertimes increase in factor of a power function of the number of faces.
If you exceed the available memory, the computer will swap and this multiply the render time by 3 or 4. 256 Mo is not much on Os X.
However, the main point is that a level 5 32x32 UV sphere is 1 032 192 faces, no wonder it takes time to render. a level 4 one is only 258 048. The sphere eat 70 Mo of memory at level 5 (and you need more to make the render, thats just the mesh) while 16,44 at level 4.
just tested :
with the same computer (G4 867 Mhz) but with 512 Mo SDRAM render time 1’13". Blender used up to 420 Mo of memory to make the render.
For the sake of comparison, yafray render took 20 mn, but once again it’s only a memory problem, as 4/5 of this time was burned swapping.
a 1 Go RAM comp would do that in less than 5 mn I think.
bit of a delayed response. But I just wanted to say thankyou very much SamAdam and Lukep for detailed explanations. As a result of this, I just added another 512M of ram - now at 768M
there is an old thread with them in and peoples render times.
benchmark 1 is rather good animated (as a benchmark, not too pretty though)
as my offer was made a while ago, if someone wants to make a nice benchmark. an animated particles, asteroid crashing into a planet (mindfields style) or somthing else interesting. i will host it for you.(file sizes need only be about 100Kb for a good benchmark if done smartly)
Okay, for my test I rendered a UVsphere with subsurf 5 complete with set smooth and OSA at 100% size and took about a minute to complete, subsurf 6 I know for a fact will probably take a bit longer.
For UVSphere, subsurf 5, OSA 16 I got 1 min 45secs. (with render window on screen)
Taking the render window off the screen got it down to just over a minute. So that does seem to make a big difference as you say Zenitor.
Alltaken, thanks for posting the .blends. I gave them a try:
tanksiggraph.7z - ! I saved it renamed it a .blend, but it didn’t get recognised as a blend file, so no joy. ( I assume it was a blend file)
benchmark.blend - opened in 2.32, but not in 2.34. Took about 1 min 45s. Picture was kind of pretty I thought - fireworks or explosions or something? Have to try the animation.
benchmark2.blend - also opened in 2.32, not 2.34. Took just under 2 mins.
Sounds like this is not a new idea here. Any idea where’s that other thread you were talking about?
[EDIT]
My dual processor amd 1.2 ghz with 1gig ram and raid 0, took 12 seconds with no osa and subsurf set to 5. At osa = 16, it took 47 seconds. Is there a way to have blender use the two processors? thanks.