docs.unity.cn
    Show / Hide Table of Contents

    Interface ITensorData

    Interface for device dependent representation of Tensor data.

    Namespace: Unity.Barracuda
    Syntax
    public interface ITensorData : IDisposable

    Properties

    maxCapacity

    Returns the maximum number of element this tensorData can contain.

    Declaration
    int maxCapacity { get; }
    Property Value
    Type Description
    Int32

    Methods

    Download(TensorShape)

    Returns an array filled with the values of a tensor. Depending on the implementation and underlying device this array might be a copy or direct reference to the tensor values. This is a blocking call, unless data from device was requested via ScheduleAsyncDownload beforehand and has already arrived.

    Declaration
    float[] Download(TensorShape shape)
    Parameters
    Type Name Description
    TensorShape shape

    the TensorShape (and thus length) of the data to copy

    Returns
    Type Description
    Single[]

    Tensor data as float arrary

    Reserve(Int32)

    Reserve uninitialized memory.

    Declaration
    void Reserve(int count)
    Parameters
    Type Name Description
    Int32 count

    element count to reserve

    ScheduleAsyncDownload(Int32)

    Schedule an asynchronous download from device memory. count is the number of element to readback.

    Declaration
    bool ScheduleAsyncDownload(int count)
    Parameters
    Type Name Description
    Int32 count

    count of elements to download

    Returns
    Type Description
    Boolean

    false until data from device arrives to CPU and is ready for access

    SharedAccess(out Int32)

    Returns an array filled with the values of multiple tensors that share the same tensorData on device. Depending on the implementation and underlying device this array might be a copy or direct reference to tensor values, no conversion from on device memory layout will occur. This is a blocking call, unless data from device was requested via ScheduleAsyncDownload beforehand and has already arrived.

    Declaration
    float[] SharedAccess(out int offset)
    Parameters
    Type Name Description
    Int32 offset

    This function outputs offset from the beginning of the array to location of values for specific tensor. offset parameters is specified in float elements

    Returns
    Type Description
    Single[]

    array filled with the values of multiple tensors that share the same tensorData on device

    Upload(Single[], TensorShape, Int32)

    Initialize with data. shape is the TensorShape (and thus length) of the data to copy. managedBufferStartIndex is the offset where to start the copy in the data

    Declaration
    void Upload(float[] data, TensorShape shape, int managedBufferStartIndex = 0)
    Parameters
    Type Name Description
    Single[] data

    data as float array

    TensorShape shape

    Tensor shape

    Int32 managedBufferStartIndex

    managed buffer start index

    Extension Methods

    DeprecatedTensorDataExtensions.GetMaxCount(ITensorData)
    Back to top Copyright © 2020 Unity Technologies
    Generated by DocFX
    on Friday, May 14, 2021