Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 define([ 'sprites/sources', 'sprites/transformers', 'sprites/renderers', 'util/e nsureCallback', 'util/chainAsync', 'util/benchAsync' ], function (sources, trans formers, renderers, ensureCallback, chainAsync, benchAsync) { | 1 define([ 'sprites/sources', 'sprites/transformers', 'sprites/renderers', 'util/e nsureCallback', 'util/chainAsync', 'util/benchAsync' ], function (sources, trans formers, renderers, ensureCallback, chainAsync, benchAsync) { |
| 2 var FRAME_COUNT = 100; | 2 var FRAME_COUNT = 100; |
| 3 var TARGET_FRAMERATE = 30; | 3 var TARGET_FRAMERATE = 30; |
| 4 | 4 |
| 5 function frameGenerator(transformer, frameCount) { | 5 function frameGenerator(transformer, frameCount) { |
| 6 // objectIndex => frameIndex => transform | 6 // objectIndex => frameIndex => transform |
| 7 var objectDatas = [ ]; | 7 var objectDatas = [ ]; |
| 8 | 8 |
| 9 return function generateFrames(objectCount) { | 9 return function generateFrames(objectCount) { |
| 10 // Generate frame data for new objects, if necessary | 10 // Generate frame data for new objects, if necessary |
| (...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 161 } | 161 } |
| 162 | 162 |
| 163 var frames = generateFrames(objectCount); | 163 var frames = generateFrames(objectCount); |
| 164 | 164 |
| 165 runTest(sourceData, frames, renderer, function testDone(err, results ) { | 165 runTest(sourceData, frames, renderer, function testDone(err, results ) { |
| 166 if (err) return callback(err); | 166 if (err) return callback(err); |
| 167 fpsResults[objectCount] = results; | 167 fpsResults[objectCount] = results; |
| 168 rawData.push([ objectCount, results ]); | 168 rawData.push([ objectCount, results ]); |
| 169 | 169 |
| 170 var timePerObjectEstimate = 1/(objectCount*results.fps); | 170 var timePerObjectEstimate = 1/(objectCount*results.fps); |
| 171 var estimatedMaxObjects = Math.floor(1/(targetFramerate * timePe rObjectEstimate)); | 171 var estimatedMaxObjects = Math.min(5000, Math.floor(1/(targetFra merate * timePerObjectEstimate))); |
|
nduca
2012/11/04 19:53:30
should we be editing the README.chromium to notate
tonyg
2012/11/05 23:02:01
Done.
| |
| 172 | 172 |
|
nduca
2012/11/04 19:53:30
shouldn't we switch from having a real checkout of
tonyg
2012/11/05 23:02:01
There are a few reasons it is checked in:
1. Space
| |
| 173 var nextObjectCount = nextNumberToTry(fpsResults, estimatedMaxOb jects); | 173 var nextObjectCount = nextNumberToTry(fpsResults, estimatedMaxOb jects); |
| 174 test(nextObjectCount); | 174 test(nextObjectCount); |
| 175 }); | 175 }); |
| 176 } | 176 } |
| 177 | 177 |
| 178 test(10); | 178 test(10); |
| 179 } | 179 } |
| 180 | 180 |
| 181 // source => renderer => transformer => test | 181 // source => renderer => transformer => test |
| 182 var tests = { }; | 182 var tests = { }; |
| (...skipping 18 matching lines...) Expand all Loading... | |
| 201 if (err) return callback(err); | 201 if (err) return callback(err); |
| 202 runTestToFramerate(TARGET_FRAMERATE, sourceData, transfo rmer, renderer, callback); | 202 runTestToFramerate(TARGET_FRAMERATE, sourceData, transfo rmer, renderer, callback); |
| 203 }); | 203 }); |
| 204 }; | 204 }; |
| 205 }); | 205 }); |
| 206 }); | 206 }); |
| 207 }); | 207 }); |
| 208 | 208 |
| 209 return tests; | 209 return tests; |
| 210 }); | 210 }); |
| OLD | NEW |