license import { backend_util , Conv3DBackpropFilterV2 , Conv3DBackpropFilterV2Attrs , Conv3DBackpropFilterV2Inputs , KernelConfig , KernelFunc } from '@tensorflow/tfjs-core' ; import { MathBackendWebGL } from '../backend_webgl' ; import { Conv3DDerFilterProgram } from '../conv_backprop_gpu' ; export function conv3DBackpropFilterV2 ( args ) { const { inputs , backend , attrs } = args ; const { x , dy } = inputs ; const { strides , pad , filterShape } = attrs ; const convInfo = backend_util . computeConv3DInfo ( x . shape as [ number , number , number , number , number ] , filterShape , strides , 1 , pad ) ; const program = new Conv3DDerFilterProgram ( convInfo ) ; return backend . runWebGLProgram ( program , [ x , dy ] , 'float32' ) ; } export const conv3DBackpropFilterV2Config = { kernelName : Conv3DBackpropFilterV2 , backendName : 'webgl' , kernelFunc : conv3DBackpropFilterV2 as { } as KernelFunc } ;