kernel_gather_buffer.bend

stelliferous@0.0.2.0 · 10 lines · 1 definition

1import Base
2import stelliferous@0.0.2.0/kernel_gather.bend as Gather
3import stelliferous@0.0.2.0/storage_buffer.bend as Storage
4import stelliferous@0.0.2.0/proofs/kernel_gather_certificate.bend as GatherCertificate
5
6def run(+channels: U32,+offset: U32,+positions: U32,+span: U32,input: Storage.Buffer<F32>,output: Storage.Buffer<F32>) -> Storage.Buffer<F32>:
7  Storage.Buffer{input,input_length,input_certificate} = input
8  Storage.Buffer{output,length,output_certificate} = output
9  Storage.Buffer{Gather.gather_block(channels,offset,positions,span,input,output),length,
10    GatherCertificate.certificate(channels,offset,positions,span,input,output,input_certificate,output_certificate)}