MCPcopy Create free account
hub / github.com/gpujs/gpu.js / _resultImmutableKernel2DLoop

Method _resultImmutableKernel2DLoop

src/backend/cpu/kernel.js:491–508  ·  view source on GitHub ↗
(kernelString)

Source from the content-addressed store, hash-verified

489 }
490
491 _resultImmutableKernel2DLoop(kernelString) {
492 const constructorString = this._getKernelResultTypeConstructorString();
493 return ` const outputX = _this.output[0];
494 const outputY = _this.output[1];
495 const result = new Array(outputY);
496 ${ this._mapSubKernels(subKernel => `const result_${ subKernel.name } = new Array(outputY);\n`).join(' ') }
497 ${ this._mapSubKernels(subKernel => `let subKernelResult_${ subKernel.name };\n`).join(' ') }
498 for (let y = 0; y < outputY; y++) {
499 this.thread.z = 0;
500 this.thread.y = y;
501 const resultX = result[y] = new ${constructorString}(outputX);
502 ${ this._mapSubKernels(subKernel => `const resultX_${ subKernel.name } = result_${subKernel.name}[y] = new ${constructorString}(outputX);\n`).join('') }
503 for (let x = 0; x < outputX; x++) {
504 this.thread.x = x;
505 ${ kernelString }
506 }
507 }`;
508 }
509
510 _mutableKernel2DResults() {
511 const constructorString = this._getKernelResultTypeConstructorString();

Callers 1

_resultKernelBodyMethod · 0.95

Calls 2

_mapSubKernelsMethod · 0.95

Tested by

no test coverage detected