<!DOCTYPE html>
<html><head>
    <title>Firmin.js benchmarks</title>
    
    <style type="text/css" media="screen">
        html, body {font-family:Helvetica, Arial, sans-serif; color:#000; background:#fff; margin:0; border:none; padding:0;}
        body {padding:100px;}
        #description {text-align:right; font-size:36px; font-weight:normal;}
        #red-box {background:#f00; width:200px; height:166px;}
    </style>
    
    <script type="text/javascript" src="../src/firmin.js"></script>
</head><body>
    
    <script type="text/javascript">
        benchmark = function(test, iterations) {
            var start = (new Date()).getTime(), finish, i;
            iterations = iterations || 100;
            for (i = 0; i < iterations; i++) {
                test();
            }
            finish = (new Date()).getTime();
            return finish - start;
        };
        
        rand = function(lower, upper) {
            return Math.random() * (upper - lower) + lower;
        };
        
        testFirminMatrixMultiplication = function() {
            var initial = new Firmin.CTM(),
                vector  = [
                    rand(-1, 1),
                    rand(-1, 1),
                    rand(-1, 1),
                    rand(-1, 1),
                    rand(-200, 200),
                    rand(-200, 200)
                ];
            
            initial.multiply(vector);
        };
        
        testNativeMatrixMultiplication = function() {
            var initial = new WebKitCSSMatrix(),
                vector  = [
                    rand(-1, 1),
                    rand(-1, 1),
                    rand(-1, 1),
                    rand(-1, 1),
                    rand(-200, 200),
                    rand(-200, 200)
                ];
            
            initial.multiply(vector);
        };
        
        console.log("Testing Firmin.CTM matrix multiplication...");
        console.log("100,000 iterations took " + benchmark(testFirminMatrixMultiplication, 1e5) + "ms");
        
        console.log("\n");
        
        console.log("Testing WebKitCSSMatrix matrix multiplication...");
        if (typeof WebKitCSSMatrix === "object") {
            console.log("100,000 iterations took " + benchmark(testNativeMatrixMultiplication, 1e5) + "ms");
        } else {
            console.log("No native CSS matrix class defined");
        }
    </script>
    
</body></html>

Add some benchmarking for the Firmin.CTM multiply operation versus WebKitCSSMatrix.
Add some benchmarking for the Firmin.CTM multiply operation versus WebKitCSSMatrix.
