in resources/perf.webkit.org/public/shared/statistics.js [275:295]
function recursivelySplitIntoTwoSegmentsAtMaxTIfSignificantlyDifferent(values, startIndex, length, minLength, segments) {
var tMax = 0;
var argTMax = null;
for (var i = 1; i < length - 1; i++) {
var firstLength = i;
var secondLength = length - i;
if (firstLength < minLength || secondLength < minLength)
continue;
var result = Statistics.computeWelchsT(values, startIndex, firstLength, values, startIndex + i, secondLength, 0.9);
if (result.significantlyDifferent && result.t > tMax) {
tMax = result.t;
argTMax = i;
}
}
if (!tMax) {
segments.push(startIndex);
return;
}
recursivelySplitIntoTwoSegmentsAtMaxTIfSignificantlyDifferent(values, startIndex, argTMax, minLength, segments);
recursivelySplitIntoTwoSegmentsAtMaxTIfSignificantlyDifferent(values, startIndex + argTMax, length - argTMax, minLength, segments);
}