@hoff97/tensor-js
Version:
PyTorch like deep learning inferrence library
44 lines (43 loc) • 1.63 kB
TypeScript
import { DTypeGpu, GPUTensorConstructor, GPUTensorI } from '../../../tensor/gpu/interface';
import { GPUMemoryAllocator } from '../../../tensor/gpu/memory';
import { Input, Operation } from '../operation';
export interface ConvTransposeInfo {
shapeX?: readonly number[];
widthX?: number;
heightX?: number;
shapeW?: readonly number[];
widthW?: number;
heightW?: number;
shapeOutput?: readonly number[];
widthOutput?: number;
heightOutput?: number;
pads?: readonly number[];
dilations?: readonly number[];
strides?: readonly number[];
CG?: number;
kernelSize?: number;
dataRank?: number;
C?: number;
}
export interface ConvTransposeInput {
X: GPUTensorI;
W: GPUTensorI;
pads: readonly number[];
dilations: readonly number[];
strides: readonly number[];
}
export declare class ConvTransposeOperation<GPUTensor extends GPUTensorI> extends Operation<GPUTensor, ConvTransposeInfo, ConvTransposeInput> {
protected maxIterations: number;
constructor(tensorConstructor: GPUTensorConstructor<GPUTensor>, dtype: DTypeGpu, allocator?: GPUMemoryAllocator);
updateInputIx(): string;
getMainBody(): string;
getVariables(): string;
getFragmentShader(info: ConvTransposeInfo): string;
getTextureNames(): string[];
getUniformAttrs(): Input[];
calc(input: ConvTransposeInput): GPUTensor;
getOutputShape(input: ConvTransposeInput): readonly number[];
compile(info: ConvTransposeInfo): void;
getCompilationInfo(input: ConvTransposeInput): ConvTransposeInfo;
getInputInfoString(input: ConvTransposeInput): string;
}