He comparado tres algoritmos de Fibonacci con jsben.ch y, como era de esperar, el primero es el más rápido (incluso tiene un pequeño ícono de premio):
Sin embargo, no puedo encontrar el significado de los números junto al resultado del bloque de código. Cuanto más alto, mejor, pero ¿cuál es la unidad?
La única unidad razonable que puedo pensar (y esta es mi suposición) es que el resultado muestra ops/sec es decir, cuántas veces se puede ejecutar cada prueba en un segundo.
Sin embargo, sería mejor si jsben.ch tuviera esto claramente establecido para evitar confusiones o al menos explicara el significado en la sección de ayuda (que lamentablemente también falta).
Mirando el código (elemento de inspección) parece que solo crean el punto de referencia mirando el execution time o cómo lo llaman runTime = a - s .
Del código:
for (var u of e.model.codeBlocks) { u.result.percent = 0, yield e.$sleep(e.model.pausePerBlock); var m = e.runTestForAmountOfTime(u, e.model.timeToRun); u.result = { runTime: m.runTime, amountOfRounds: m.counter, percent: 0 }; var p = m.timer - d; e.state.app.testProgress = Math.round(100 / c * p), e.state.app.testProgress > 100 && (e.state.app.testProgress = 100), yield e.$sleep(e.model.pausePerBlock) } Y finalmente el método: runTestForAmountofTime :
runTestForAmountOfTime(e, t) { var o = "benchmark_" + e.id , a = performance.now() , s = performance.now() , r = 0; do { this.iframe.contentWindow[o](arguments), r++, s = performance.now() } while (s - a < t && !this.model.errorMessage); return { counter: r, runTime: a - s, // I think that this is the point timer: s } }