@hoff97/tensor-js
Version:
PyTorch like deep learning inferrence library
36 lines (35 loc) • 1.3 kB
TypeScript
import { DTypeGpu, GPUTensorConstructor, GPUTensorI } from '../../../tensor/gpu/interface';
import { GPUMemoryAllocator } from '../../../tensor/gpu/memory';
import { Input, Operation } from '../operation';
export interface SliceInfo {
shapeX?: readonly number[];
widthX?: number;
heightX?: number;
shapeOutput?: readonly number[];
widthOutput?: number;
heightOutput?: number;
starts?: readonly number[];
ends?: readonly number[];
axes?: readonly number[];
steps?: readonly number[];
offsets?: number[];
}
export interface SliceInput {
X: GPUTensorI;
starts: number[];
ends: number[];
axes: number[];
steps: number[];
}
export declare class SliceOperation<GPUTensor extends GPUTensorI> extends Operation<GPUTensor, SliceInfo, SliceInput> {
constructor(tensorConstructor: GPUTensorConstructor<GPUTensor>, dtype: DTypeGpu, allocator?: GPUMemoryAllocator);
getFragmentShader(info: SliceInfo): string;
getTextureNames(): string[];
getVariables(): string;
getUniformAttrs(): Input[];
calc(input: SliceInput): GPUTensor;
getOutputShape(input: SliceInput): readonly number[];
compile(info: SliceInfo): void;
getCompilationInfo(input: SliceInput): SliceInfo;
getInputInfoString(input: SliceInput): string;
}