-
Notifications
You must be signed in to change notification settings - Fork 47
Run octane benchmarks as part of nightly benmarks #75
Comments
@mhdawson Absolutely, I'll check how we're doing the Octane currently and see how this can be adapted for the community builds |
If it helps, here is the script I use to run Octane locally: 'use strict';
const fs = require('fs');
const vm = require('vm');
global.load = load;
global.read = read;
global.print = console.log;
load('run.js');
function load(filename) {
vm.runInThisContext(read(filename));
}
function read(filename) {
return fs.readFileSync(filename, 'utf8');
} I suppose we want something that writes a file (JSON?) with benchmark numbers? |
As a small aside, it's interesting how much slower a new VM context is because of how global property loads/stores are intercepted. Code: 'use strict';
const fs = require('fs');
const vm = require('vm');
const context = vm.createContext({ load, read, print: console.log });
load('run.js');
function load(filename) {
vm.runInContext(read(filename), context);
}
function read(filename) {
return fs.readFileSync(filename, 'utf8');
} Baseline, running in the main context with the code from #75 (comment):
Running in a new context:
Performance relative to the baseline:
IOW, RegExp is almost as fast while Mandreel runs 200x slower. |
@CurryKitten provided scripts to run through #79 which has now landed. I've updated the jobs to run and publish results |
Kicked off jobs to validate across the versions, when we do manual chart generation run |
Seems like it does not run on 0.12.x:
Seems like the issue is in our script. Can you submit a PR to change it to use var instead and validate it runs ok on 0.12.X |
Everything should be in place now, but the www for benchmarking is not being mirrored as expected. Raised this issue: nodejs/build#556. You can see the chart directly at: https://benchmarking.nodejs.org/charts/octane.png |
Still need help to get it showing up on bechmarking.nodejs.org |
Ok octane benchmarks now showing up on benchmarking.nodejs.org |
We had a a recent case where one of our floating patches on v8 caused a performance issue. We believe this could have been caught with octane runs.
I'm thinking this means we should run octane nightly on master and publish the results.
@CurryKitten I know we run octane internally, would you be able to help putting together something that we can use to run in the community builds ?
The text was updated successfully, but these errors were encountered: