@oaklean/profiler-core
Version:
Part of the @oaklean suite. It provides all basic functions to work with the `.oak` file format. It allows parsing the `.oak` file format as well as tools for analyzing the measurement values. It also provides all necessary capabilities required for prec
36 lines (35 loc) • 1.57 kB
TypeScript
import { CPUNode } from './CPUNode';
import { IComputedNode, ILocation } from '../../lib/vscode-js-profile-core/src/cpu/model';
import { ICpuProfileRaw } from '../../lib/vscode-js-profile-core/src/cpu/types';
import { UnifiedPath } from '../system/UnifiedPath';
import { MetricsDataCollection } from '../model/interfaces/MetricsDataCollection';
import { NanoSeconds_BigInt, MicroSeconds_number, MilliJoule_number } from '../types';
export declare class CPUModel {
private rootDir;
private cpuModel;
private _cpuProfilerBeginTime;
private _startTime;
private _endTime;
private _energyValuesPerNode;
private _cpuNodes;
private _profilerHitsPerNode;
constructor(rootDir: UnifiedPath, profile: ICpuProfileRaw, highResolutionBeginTime: NanoSeconds_BigInt);
get profilerHitsPerNode(): number[];
set energyValuesPerNode(values: [MilliJoule_number, MilliJoule_number][] | undefined);
/**
* energyValuesPerNode is a tuple based array
*
* index 0 of each tuple represents the cpuEnergy
* index 1 of each tuple represents the ramEnergy
*/
get energyValuesPerNode(): [MilliJoule_number, MilliJoule_number][] | undefined;
get ILocations(): readonly ILocation[];
get INodes(): readonly IComputedNode[];
get timeDeltas(): readonly MicroSeconds_number[];
get samples(): readonly number[];
energyValuesPerNodeByMetricsData(metricsDataCollection: MetricsDataCollection): [
MilliJoule_number,
MilliJoule_number
][];
getNode(index: number): CPUNode;
}