Patch performance details?

psonice's picture

Is there any documentation anywhere on how different patches perform on various hardware? Some test stuff I've been using at home (on a new imac with radeon 2600) and getting around 60fps with is giving me around 3fps or less at work on an older imac with radeon 1600.

It would be nice to make something compatible with fairly recent hardware :)

Obligatory demo link, as a few of you seem to like them (I'm working out how to do feedback effects like these with the accumulator - getting there, but nowhere near this level yet!): http://www.pouet.net/prod.php?which=34517

cwright's picture
Not that I'm aware of

There's very little documentation on the performance of QC patches. I've not seen any, so all I know is from trial and error. Perhaps a "Benchmark" composition could be created, which would cycle through a bunch of patches and accumulate some performance stats to show at the end.

This would be extremely useful, actually...

("woah, this new 8-core mac pro w/X1600 gets a KineMark rating of 5000 !!1!1") ;)

jean_pierre's picture
KineMark

that sounds like a great idea! have you any ideas of what the list of areas to test would be?

psonice's picture
Everything?

I guess the best option would be to use iterators to render each 'test case' multiple times for added stress, then use the multiplexing stuff to cycle through all of the effects, one at a time. Each filter/composite/whatever would play for a short while, and the average fps gets recorded (or maybe total frames drawn would be better?)

cwright's picture
standard

Typically, modern benchmarks will run through a set number of iterations, and record the time it takes to execute that many iterations.

Multiplexer is definitely the way to go on this. Making all the test cases will be a bit tricky though... I'll try to start working on the KineMark composition I guess, though it'll take a few versions to get it to be useful though I'd imagine :)

[Areas off the top of my head: Render In Image with various sizes. Cubes/Spheres/Lines in iterators, with different fixed numbers of iterations. Javascript script execution speed. String operations. The rendering ones would need to toggle the blend and depth test modes, so that each one could have its own characteristics measured.]