UNPKG

vectorious-plus

Version:

A high performance linear algebra library.

34 lines (29 loc) 1.43 kB
(function() { 'use strict'; var Benchmark = require('benchmark'), Vector = require('../vectorious').Vector, suite = new Benchmark.Suite(); var N = 1024, a = Vector.random(N), b = Vector.random(N); console.log('a, b = Vector.random(' + N + ')'); suite .add('Vector.zeros(' + N + ')', function () { Vector.zeros(N); }) .add('Vector.ones(' + N + ')', function () { Vector.ones(N); }) .add('Vector.range(0, ' + N + ')', function () { Vector.range(0, N); }) .add('Vector.combine(a, b)', function () { Vector.combine(a, b); }) .add('Vector.add(a, b)', function () { Vector.add(a, b); }) .add('Vector.subtract(a, b)', function () { Vector.subtract(a, b); }) .add('Vector.scale(a, Math.random())', function () { Vector.scale(a, Math.random()); }) .add('Vector.project(a, b)', function () { Vector.project(a, b); }) .add('a.add(b)', function () { a.add(b); }) .add('a.subtract(b)', function () { a.subtract(b); }) .add('a.scale(Math.random())', function () { a.scale(Math.random()); }) .add('a.normalize()', function () { a.normalize(); }) .add('a.dot(b)', function () { a.dot(b); }) .add('a.magnitude()', function () { a.magnitude(); }) .add('a.angle(b)', function () { a.angle(b); }) .add('a.project(b)', function () { a.project(b); }) .on('cycle', function (event) { console.log(String(event.target)); }) .run(); }());