@novorender/web_app / PointrateProfiler
Class: PointrateProfiler
A basic GPU point rate profiler.
Constructors
new PointrateProfiler()
new PointrateProfiler(benchmark, shaders): PointrateProfiler
Parameters
Parameter | Type | Description |
---|---|---|
benchmark | Benchmark | The benchmark context to use. |
shaders | object | The shader imports. |
shaders.fillrate | object | - |
shaders.fillrate.fragmentShader | string | - |
shaders.fillrate.vertexShader | string | - |
shaders.pointrate | object | - |
shaders.pointrate.fragmentShader | string | - |
shaders.pointrate.vertexShader | string | - |
Returns
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>;