Class BurstBLAS
Burst specific BLAS implementation
Namespace: Unity.Barracuda
Syntax
public class BurstBLAS : object, BLASPlugin
Methods
IsCurrentPlatformSupported()
Query if current platform is supported by the BLAS plugin
Declaration
public bool IsCurrentPlatformSupported()
Returns
Type | Description |
---|---|
Boolean |
|
Implements
IsNative()
Query if BLAS implementation is coming from platform's native library
Declaration
public bool IsNative()
Returns
Type | Description |
---|---|
Boolean |
|
Implements
ScheduleSGEMM(JobHandle, Single*, Int32, Int32, Single*, Int32, Int32, Single*, Int32, Int32, Int32, Boolean, Boolean)
Launches matrix multiplication C = A x B + C in async-manner
Declaration
public JobHandle ScheduleSGEMM(JobHandle dependsOn, float *Ap, int AN, int AM, float *Bp, int BN, int BM, float *Cp, int CN, int CM, int bs, bool transposeA = false, bool transposeB = false)
Parameters
Type | Name | Description |
---|---|---|
JobHandle | dependsOn | input data dependency job handle |
Single* | Ap | pointer to the matrix A |
Int32 | AN | matrix A row count |
Int32 | AM | matrix A column count |
Single* | Bp | pointer to the matrix B |
Int32 | BN | matrix B row count |
Int32 | BM | matrix B column count |
Single* | Cp | pointer to the matrix C |
Int32 | CN | matrix C row count |
Int32 | CM | matrix C column count |
Int32 | bs | inner loop block size (if applicable) bs x bs |
Boolean | transposeA | matrix A data is in transposed layout |
Boolean | transposeB | matrix B data is in transposed layout |
Returns
Type | Description |
---|---|
JobHandle | job handle |
Implements
SGEMM(Single*, Int32, Int32, Single*, Int32, Int32, Single*, Int32, Int32, Int32, Boolean, Boolean)
Perform matrix multiplication C = A x B + C
Declaration
public void SGEMM(float *Ap, int AN, int AM, float *Bp, int BN, int BM, float *Cp, int CN, int CM, int bs, bool transposeA = false, bool transposeB = false)
Parameters
Type | Name | Description |
---|---|---|
Single* | Ap | pointer to the matrix A |
Int32 | AN | matrix A row count |
Int32 | AM | matrix A column count |
Single* | Bp | pointer to the matrix B |
Int32 | BN | matrix B row count |
Int32 | BM | matrix B column count |
Single* | Cp | pointer to the matrix C |
Int32 | CN | matrix C row count |
Int32 | CM | matrix C column count |
Int32 | bs | inner loop block size (if applicable) bs x bs |
Boolean | transposeA | matrix A data is in transposed layout |
Boolean | transposeB | matrix B data is in transposed layout |