MCPcopy Index your code
hub / github.com/gpujs/gpu.js / testMixedNumberTexture

Function testMixedNumberTexture

test/features/dynamic-arguments.js:257–333  ·  view source on GitHub ↗
(mode)

Source from the content-addressed store, hash-verified

255});
256
257function testMixedNumberTexture(mode) {
258 const gpu = new GPU({ mode });
259 const matrix4X4 = [
260 [1,2,3,4],
261 [5,6,7,8],
262 [9,10,11,12],
263 [13,14,15,16],
264 ];
265 const texture4X4 = (
266 gpu.createKernel(function(value) {
267 return value[this.thread.y][this.thread.x];
268 })
269 .setOutput([4, 4])
270 .setPrecision('single')
271 .setOptimizeFloatMemory(true)
272 .setPipeline(true)
273 )(matrix4X4);
274
275 const matrix3X3 = [
276 [1,2,3],
277 [4,5,6],
278 [7,8,9]
279 ];
280 const texture3X3 = (
281 gpu.createKernel(function(value) {
282 return value[this.thread.y][this.thread.x];
283 })
284 .setOutput([3, 3])
285 .setPrecision('single')
286 .setOptimizeFloatMemory(true)
287 .setPipeline(true)
288 )(matrix3X3);
289
290 const matrix2X2 = [
291 [1,2],
292 [3,4]
293 ];
294 const texture2X2 = (
295 gpu.createKernel(function(value) {
296 return value[this.thread.y][this.thread.x];
297 })
298 .setOutput([2, 2])
299 .setPrecision('single')
300 .setPipeline(true)
301 )(matrix2X2);
302
303 const kernel = gpu.createKernel(function(texture) {
304 return texture[this.thread.y][this.thread.x];
305 })
306 .setDynamicArguments(true)
307 .setDynamicOutput(true)
308 .setOutput([4,4]);
309
310 assert.deepEqual(kernel(texture4X4), [
311 new Float32Array([1,2,3,4]),
312 new Float32Array([5,6,7,8]),
313 new Float32Array([9,10,11,12]),
314 new Float32Array([13,14,15,16]),

Callers 1

Calls 9

createKernelMethod · 0.95
destroyMethod · 0.95
kernelFunction · 0.85
setPipelineMethod · 0.80
setDynamicOutputMethod · 0.80
setDynamicArgumentsMethod · 0.80
setPrecisionMethod · 0.45
setOutputMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…