summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/ScriptIntrinsicBLAS.java
diff options
context:
space:
mode:
authorTim Murray <timmurray@google.com>2015-04-15 22:50:11 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-04-15 22:50:11 +0000
commit91d2f27bc7dad2232d3f59c71f1402b86cb9f514 (patch)
tree858f8db604f29c4c0d4c79c64e594dba1c54f1f0 /rs/java/android/renderscript/ScriptIntrinsicBLAS.java
parent1cb119d3f0945f2194d400b7f186df92bbb25567 (diff)
parent7f72f74766fed73ae9816fec6031a199f70d1428 (diff)
am 7f72f747: Merge "Add BNNM intrinsic."
* commit '7f72f74766fed73ae9816fec6031a199f70d1428': Add BNNM intrinsic.
Diffstat (limited to 'rs/java/android/renderscript/ScriptIntrinsicBLAS.java')
-rw-r--r--rs/java/android/renderscript/ScriptIntrinsicBLAS.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/rs/java/android/renderscript/ScriptIntrinsicBLAS.java b/rs/java/android/renderscript/ScriptIntrinsicBLAS.java
index 90d2300e553f..16b703356b47 100644
--- a/rs/java/android/renderscript/ScriptIntrinsicBLAS.java
+++ b/rs/java/android/renderscript/ScriptIntrinsicBLAS.java
@@ -176,6 +176,9 @@ public final class ScriptIntrinsicBLAS extends ScriptIntrinsic {
private static final int RsBlas_zherk = 141;
private static final int RsBlas_zher2k = 142;
+ // BLAS extensions start here
+ private static final int RsBlas_bnnm = 1000;
+
/**
*/
public static ScriptIntrinsicBLAS create(RenderScript rs) {
@@ -1485,5 +1488,23 @@ public final class ScriptIntrinsicBLAS extends ScriptIntrinsic {
}
+ /**
+ *
+ * 8-bit GEMM-like operation for neural networks
+ *
+ * @hide
+ **/
+ public void BNNM(Allocation A, int a_offset, Allocation B, int b_offset, Allocation C, int c_offset, int c_mult) {
+ validateL3(Element.U8(mRS), NO_TRANSPOSE, TRANSPOSE, 0, A, B, C);
+
+ int M = -1, N = -1, K = -1;
+ M = A.getType().getY();
+ N = B.getType().getY();
+ K = A.getType().getX();
+
+
+ mRS.nScriptIntrinsicBLAS_BNNM(getID(mRS), M, N, K, A.getID(mRS), a_offset, B.getID(mRS), b_offset, C.getID(mRS), c_offset, c_mult);
+
+ }
}