/** * @license * Copyright 2019 Google LLC. All Rights Reserved. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * ============================================================================= */ /// import { backend_util } from '@tensorflow/tfjs-core'; import { WebGPUProgram } from './webgpu_program'; export declare class Conv2DMMProgram implements WebGPUProgram { outputShape: number[]; shaderKey: string; dispatchLayout: { x: number[]; y: number[]; z: number[]; }; dispatch: [number, number, number]; variableNames: string[]; variableTypes: string[]; uniforms: string; workgroupSize: [number, number, number]; elementsPerThread: [number, number, number]; addBias: boolean; activation: backend_util.Activation; hasPreluActivationWeights: boolean; isChannelsLast: boolean; fitAOuter: boolean; fitBOuter: boolean; fitInner: boolean; tileAOuter: number; tileBOuter: number; tileInner: number; innerElementSize: number; isVec4?: boolean; private sequentialAccessByThreads; constructor(convInfo: backend_util.Conv2DInfo, dimAOuter: number, dimBOuter: number, dimInner: number, addBias?: boolean, activation?: backend_util.Activation, hasPreluActivationWeights?: boolean, sequentialAccessByThreads?: boolean); getUserCode(): string; }