64 lines
1.5 KiB
JavaScript
64 lines
1.5 KiB
JavaScript
// test results:
|
|
|
|
// WinServ2008R2, Intel(R) Core(TM) i7 CPU 870 @ 2.93GHz + Xming 6.9.0.31
|
|
//
|
|
// 0.4.3/cygwin 32bit : 8500 +/- 2000 InternAtom/sec
|
|
// 0.5.1/win32 : N/A
|
|
//
|
|
// Ubuntu 11.04 32bit, Intel(R) Core(TM)2 Duo CPU T7250 @2.00GHz, XOrg 1:7.6+4ubuntu3.1
|
|
// 0.4.9pre: 16700 +/-300
|
|
|
|
|
|
var x11 = require('../../../lib');
|
|
|
|
var xclient = x11.createClient();
|
|
var reqcounter = 0;
|
|
var rescounter = 0;
|
|
|
|
var num = 400000;
|
|
var X;
|
|
|
|
var t0 = +new Date();
|
|
|
|
function benchmarkAtoms()
|
|
{
|
|
if (reqcounter > num)
|
|
return;
|
|
|
|
X.InternAtom(false, 'test ' + reqcounter, function(atomId) {
|
|
rescounter++;
|
|
//console.log('%d received', rescounter);
|
|
if ( (rescounter % 10000) == 0)
|
|
{
|
|
var t2 = X.t1;
|
|
X.t1 = +new Date();
|
|
var delta = X.t1 - t2;
|
|
console.log(reqcounter - rescounter);
|
|
console.log('reqs/msec: ' + 10000/delta);
|
|
console.log('msec per req: ' + delta/10000);
|
|
}
|
|
if (rescounter == (num-2))
|
|
{
|
|
var t1 = +new Date();
|
|
var delta = t1 - t0;
|
|
console.log(delta);
|
|
console.log('reqs/msec: ' + num/delta);
|
|
console.log('msec per req: ' + delta/num);
|
|
|
|
process.exit(0);
|
|
}
|
|
});
|
|
|
|
reqcounter++;
|
|
//console.log('%d sent', reqcounter);
|
|
process.nextTick(benchmarkAtoms);
|
|
}
|
|
|
|
|
|
|
|
xclient.on('connect', function(err, display) {
|
|
X = this;
|
|
X.t1 = +new Date();
|
|
benchmarkAtoms();
|
|
});
|