c2f647a6c790cb1f4c86e50506c53cd912e725f6 |
04-Mar-2017 |
I-Jui (Ray) Sung <ijsung@google.com> |
Compiler and runtime support for global allocation metadata On the compiler side, enumerate used global allocations, assign each used global allocation a unique ID, and record the mapping in an OpString in the result SPIR-V code. The ID is the index of the metadata for the global allocation. On the runtime side, added a new RSoVBuffer for metadata, and with code marshaling them for the kernel according to the mapping reported by the compiler. SPIRIT is linked against the driver for extracting metadata out of the SPIR-V module. Added a new testcase for global allocation metadata in RSoVTest. Bug: 30964317 Test: RSoVTest on Angler, RSoV LIT Tests Change-Id: I66b3cfa8b66ee2b60b984320900dbe2dc3d15f21
SoVTestCore.java
T_global_query.java
lobal_query.rs
|
a075ad49dd56f25efebb5402bcc263766421b0c8 |
13-Jan-2017 |
I-Jui (Ray) Sung <ijsung@google.com> |
Runtime support for mapping kernels with multiple input allocations Updated RSoV runtime to set Vulkan GLSL bindings for kernels with more than one input allocations at kernel launch time. Added a RSoVTest test case based on foreach_multi of RSTest. Test: RSoVTest and RSoV LIT tests Bug: 30964317 Change-Id: Id3edfda0ef4344d85c4b59aa6df184882597b659
SoVTestCore.java
T_multi.java
T_multi_input.java
T_multi_kernel.java
ulti.rs
ulti_input.rs
ulti_kernel.rs
|
ffa85366645c163dd529644ba5b8950c4c588d20 |
13-Dec-2016 |
I-Jui (Ray) Sung <ijsung@google.com> |
Initial multi-kernel support This change adds multi-kernel support, with localized kernel function types, argument types and OpEntryPoints. Also emit type and metadata for each kernel. OpEntryPoints now have the string literals of RS kernel names. Some SPIR-V names are still shared, notably the global_invocation_id. This doesn't seem to affect correctness per our current tests. On the device side, the RSoV driver has been updated to use actual kernel names instead of hardcoded "main". Also added testcases in both LIT and RSoVTest. Test: RSoV LIT Tests, RSoVTest on angler Change-Id: I09936e69d9f19d21c5727430cb19414b508496bd
SoVTestCore.java
T_multi.java
ulti.rs
|
75f0d3110b04346b901771f96ce15cdbe907278f |
11-Nov-2016 |
Yang Ni <yangni@google.com> |
Initial driver for RSoV (RenderScript over Vulkan/SPIR-V) Bug: 30964317 Supports the following: * Allocations of 32-bit integers and floating point numbers and vectors * Single-input single-output kernels * Co-existence of RSoV scripts and CPU intrinsics Added default .clang-format for driver code using Google C++ code style. The RSoV driver is loaded, if and only if the property debug.rs.rsov is set to non-zero. Test: RSTest and CTS with debug.rs.rsov set to 0; and RSoVTest with debug.rs.rsov set to 1. Change-Id: If63370a502d499e8fc5f4bbd2e90ce84b167c331
SoVTest.java
SoVTestCore.java
T_invert.java
T_modulo.java
nitTest.java
nvert.rs
odulo.rs
slist.rs
hared.rsh
|