File: jsToGLOverhead.html

package info (click to toggle)
wine-gecko-2.24 2.24%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 740,092 kB
  • ctags: 688,789
  • sloc: cpp: 3,160,639; ansic: 1,619,153; python: 164,084; java: 128,022; asm: 114,527; xml: 69,863; sh: 55,281; makefile: 49,648; perl: 20,454; objc: 2,344; yacc: 2,066; pascal: 995; lex: 982; exp: 449; php: 244; lisp: 228; awk: 211; sed: 61; csh: 21; ada: 16; ruby: 3
file content (40 lines) | stat: -rw-r--r-- 1,260 bytes parent folder | download | duplicates (18)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<!DOCTYPE html>
<html><head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../unit.css" />
<script type="application/x-javascript" src="../unit.js"></script>
<script type="application/x-javascript" src="../util.js"></script>
<script type="application/x-javascript">

Tests.autorun = false;
Tests.message = "This might take a second or two";

Tests.testGLOverhead = function() {
    var gl = document.getElementById("gl").getContext(GL_CONTEXT_ID);
    var fakeGl = {getError: function(){ return 0; }};
    time("testGLOverhead", function() {
        for (var i=0; i<1000000; i++)
            gl.getError();
    });
    time("testJSOverhead", function() {
        for (var i=0; i<1000000; i++)
            fakeGl.getError();
    });
    time("testLoopOverhead", function() {
        for (var i=0; i<1000000;)
            i++;
    });
}

</script>
<style>canvas{ position:absolute; }</style>
</head><body>
<canvas id="gl" width="16" height="16"></canvas>
<h3>1000000x gl.getError() (measuring JS->GL call overhead)</h3>
<p id="testGLOverhead"></p>
<h3>1000000x fakeGl.getError() (measuring JS->JS call overhead)</h3>
<p id="testJSOverhead"></p>
<h3>1000000x i++ (measuring loop overhead)</h3>
<p id="testLoopOverhead"></p>
</body></html>