@hoff97/tensor-js
Version:
PyTorch like deep learning inferrence library
35 lines (34 loc) • 1.27 kB
TypeScript
import { DTypeGpu, GPUTensorConstructor, GPUTensorI } from '../../../tensor/gpu/interface';
import { GPUMemoryAllocator } from '../../../tensor/gpu/memory';
import { PadMode } from '../../../types';
import { Input, Operation } from '../operation';
export interface PadInfo {
shapeX?: readonly number[];
widthX?: number;
heightX?: number;
shapeOutput?: readonly number[];
widthOutput?: number;
heightOutput?: number;
pads?: number[];
mode?: PadMode | number;
value?: number;
}
export interface PadInput {
input: GPUTensorI;
pads: number[];
mode: PadMode;
value: number;
}
export declare class PadOperation<GPUTensor extends GPUTensorI> extends Operation<GPUTensor, PadInfo, PadInput> {
constructor(tensorConstructor: GPUTensorConstructor<GPUTensor>, dtype: DTypeGpu, allocator?: GPUMemoryAllocator);
getFragmentShader(info: PadInfo): string;
getTextureNames(): string[];
getVariables(): string;
getUniformAttrs(): Input[];
getModeFlag(mode: PadMode): 0 | 1 | 2;
calc(input: PadInput): GPUTensor;
getOutputShape(input: PadInput): readonly number[];
compile(info: PadInfo): void;
getCompilationInfo(input: PadInput): PadInfo;
getInputInfoString(input: PadInput): string;
}