Skip to main content

@novorender/web_app / PointrateProfiler

Class: PointrateProfiler

A basic GPU point rate profiler.

Constructors

new PointrateProfiler()

new PointrateProfiler(benchmark, shaders): PointrateProfiler

Parameters

ParameterTypeDescription
benchmarkBenchmarkThe benchmark context to use.
shadersobjectThe shader imports.
shaders.fillrateobject-
shaders.fillrate.fragmentShaderstring-
shaders.fillrate.vertexShaderstring-
shaders.pointrateobject-
shaders.pointrate.fragmentShaderstring-
shaders.pointrate.vertexShaderstring-

Returns

PointrateProfiler

Defined in

@novorender/core3d/benchmark/pointrate.ts:17

Methods

measure()

measure(): Promise<number>

Measure fill rate by rendering a series of noisy, semi-transparent point primitives.

Returns

Promise<number>

Primitive/point rate estimate in primitives/second.

Remarks

This test is quite inaccurate and does not match close to the nominal primitive/triangle rate of a GPU, particularly on tile based mobile GPUs. Points are being used instead of triangles since they more closely reflect the maximum theoretical primitive rate of most GPUs. The result should only serve as a rough estimate.

Defined in

@novorender/core3d/benchmark/pointrate.ts:35

Properties

benchmark

readonly benchmark: Benchmark;

The benchmark context.

Defined in

@novorender/core3d/benchmark/pointrate.ts:19


program

readonly program: WebGLProgram;

Defined in

@novorender/core3d/benchmark/pointrate.ts:10


uniforms

readonly uniforms: Record<"color", null | WebGLUniformLocation>;

Defined in

@novorender/core3d/benchmark/pointrate.ts:11