7974fc03e11f3a8dd40f794f3b33b4889483090c |
|
09-Feb-2017 |
Rahul Chaudhry <rahulchaudhry@google.com> |
frameworks/rs: fix typos and clang-tidy warnings This change fixes a few typos and clang tidy warnings related to the "llvm-namespace-comment" checks. Bug: 26936282 Test: WITH_TIDY=1 WITH_TIDY_CHECKS="llvm-namespace-comment" mm Change-Id: Ic65182e5b4999fbd48d6a8ad7172e4bfeeb541f4
/frameworks/rs/cpu_ref/rsd_cpu.h
|
cf34bdc8b16fe8768128835d50912290e5c33a68 |
|
29-Nov-2016 |
Yang Ni <yangni@google.com> |
Minor cleanup Avoid heavy include by using forward declarations instead. Test: mm && RSTest Change-Id: I96b2fc7d124e40787d1ae47a196009fff244f36f
/frameworks/rs/cpu_ref/rsd_cpu.h
|
ae2ec3febedfc29376b9104413fb4042028f1265 |
|
01-Jun-2016 |
David Gross <dgross@google.com> |
Delete simple reduction implementation. Bug: 27298560 Change-Id: I8c3d568e98aaf0b7d86881c985d13ed5b8e95338
/frameworks/rs/cpu_ref/rsd_cpu.h
|
10adb0c2029f112b5738228617d5645f6ecea0c5 |
|
29-Mar-2016 |
David Gross <dgross@google.com> |
Multithreaded execution of certain general reduction kernels; reduction test overhaul. A reduction kernel is eligible for multithreaded execution if it has a combiner function and it is launched over a 1D iteration space. Note: Properties debug.rs.reduce-accum and debug.rs.reduce-split-accum are added for debugging multithreaded reduction. The following changes are made to reduction tests in RsTest: - Overhaul the test framework -- now data-driven, and can execute the same test multiple times with different seeds and input sizes, features separate sets of quick correctness tests, full correctness tests, and performance tests. (Performance tests are not run by default.) - Report timing information for test execution. - Report more information for fz* kernel testing. - Remove dp kernel testing -- this involved floating-point arithmetic which is not guaranteed to produce identical results between java and rs or for different rs multithreaded executions. - Add sumgcd kernel testing. This is intended to be representative of a compute-heavy kernel. - findMinAndMax kernel testing must compare cell value not cell index -- two or more cells might have the same min or max value, and java and various rs multithreaded executions are not guaranteed to find the same cell. - Fix bug in findMinAndMax kernel's combiner function. (It behaved incorrectly when operating on an accumulator datum that has been initialized but never passed to the accumulator function.) - RsTest now requests largeHeap. Bug: 27299475 Change-Id: I58f99c21389dbae5c8e3ad85d98700dc165664bb
/frameworks/rs/cpu_ref/rsd_cpu.h
|
6c1876bbef1b2c89975dce91230a168bd2d2ce4c |
|
15-Jan-2016 |
David Gross <dgross@google.com> |
Support for general reduction kernels. Requires coordinated change in frameworks/base. Requires coordinated change in frameworks/compile/libbcc in order for RsTest to run. At present, general reduction kernels are run single-threaded. Also: Remove dead struct field MTLaunchStructForEach::sig. Bug: 23535724 Change-Id: Ice17ccf20a902f8a106eaa62ec071d46e3c0ad8c
/frameworks/rs/cpu_ref/rsd_cpu.h
|
14ce007a633b10e3b9a3fae29d8f53a7e8c9b59f |
|
31-Jul-2015 |
Matt Wala <wala@google.com> |
Add a basic implementation of the reduce kernel API to the CPU reference implementation. Bug: 22631253 For now, this just runs a serial reduction on one thread. Change-Id: I34c96d24bb6f44274de72bb53160abcf79d143b0
/frameworks/rs/cpu_ref/rsd_cpu.h
|
b043df0676fef226336deb3a00ead2f31e02343f |
|
29-May-2015 |
David Gross <dgross@google.com> |
Remove dead uses of RSCompilerDriver and of compiler callbacks. Change-Id: Ibe8725074724b75e35c25a404daaba07ffbca2ab
/frameworks/rs/cpu_ref/rsd_cpu.h
|
5aa018cc36e589b07674957714d27ae3d1fa1c4e |
|
21-May-2015 |
Stephen Hines <srhines@google.com> |
Update RS driver to support extraction of global variable properties. Bug: 20306487 This patch adds some new enums to classify properties (such as "static", "constant", and "pointer") for global variables. The reference driver is also extended to provide methods to examine these properties (when the bitcode is compiled with bcc). Change-Id: I331756f8a8990caf5ebdf85599060434a7cfdcb7
/frameworks/rs/cpu_ref/rsd_cpu.h
|
c060f1435e7b9405f3be8974417fa6f410f03753 |
|
14-May-2015 |
Stephen Hines <srhines@google.com> |
Use "override" instead of "virtual" when replacing methods. Bug: 20306487 Change-Id: Ic83cb04cac153a7556f5d516e8f5ec88b5527b6f
/frameworks/rs/cpu_ref/rsd_cpu.h
|
5cb19fd40ad3225005f65b6960c875746c2136b9 |
|
12-May-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Let vendor drivers access global-variable flags bug 20894664 Expose flags for embedding global variables and skipping constant globals in rsd_cpu.h. This allows vendor drivers to query or set these flags. Change-Id: I5c45355fb9254103ca8b0fa539edb691e6029ec7
/frameworks/rs/cpu_ref/rsd_cpu.h
|
8409d6414dd4a42aa59779fcfe9fce18648cb135 |
|
29-Apr-2015 |
Stephen Hines <srhines@google.com> |
Add RSGlobalInfoPass information to RS driver. Bug: 20306487 This change enables vendor drivers to configure support for including additional information about global variables in the emitted CPU code. This information includes the number of total global variables, the names of these variables, the addresses of these variables and the sizes of these variables. The driver can also select whether the information includes constant (immutable) globals or not. The reference driver defaults to embedding information about each of the existing, non-constant global variables. Change-Id: I1e55fc3f08e518f04eeee3e4f9dc7b6ea3b80d7c
/frameworks/rs/cpu_ref/rsd_cpu.h
|
45e753a46e587c69b3b0d0c5138e88715a24a29a |
|
20-Jan-2015 |
Stephen Hines <srhines@google.com> |
Remove linkloader from frameworks/rs. Bug: 18322681 Now that we have switched completely to the new shared library object loading path, we can safely remove the legacy linkloader path. In frameworks/rs, this removes the actual linkloader code, as well as all helper calls into linkloader. This change also coalesces code paths between the support library version of RS and the native version of RS, since they both now depend on a similar shared library loader. A missing call to dlclose() on Script teardown is also added on the native library path. Change-Id: Ie5cc152d93f5e75383f7c21a4523579cfae8823f
/frameworks/rs/cpu_ref/rsd_cpu.h
|
dc0d8f7c0f1f43f25c34fbc04656ad578f6e953b |
|
03-Dec-2014 |
Pirama Arumuga Nainar <pirama@google.com> |
Skip linkloader, use shared object files Bug: 18322681 - In rsCpuScript, if property rs.skip.linkloader is set, look for a .so file in the cache directory and load it. If it is not available, use bcc to generate relocatable object file and link it to a .so using ld.mc. Use the embedded symbols in .rs.info and follow steps similar to the compatibility library to invoke script functions or access script variables. - Add rs* symbols like rsGetAllocation to libRSCpuRef (ala libRSSupport). Do necessary changes to argument types to get mangled names correct. - Make 64-bit version of rsSetObject take two pointers instead of a pointer and a large object. rsIsObject takes a pointer instead of a large object. Otherwise, we get failures in x86_64 due to calling convention mismatch. To match the function names in the shared object path, define these functions as 'extern "C"' with their mangled names. - Add stubbed Math functions from rsCpuRuntimeMath and rsCpuRuntimeMathFuncs into libRSCpuRef.so. - Coalesce separate #ifdef paths in libRSCpuRef. Function parameters for runtime callbacks and bcc plugin are needed in the non-compatibilty path, but take default NULL arguments. This patch introduces these parameters into the compatibility path as well, and passes default NULL arguments. Change-Id: I8a853350e39d30b4d852c30e4b5da5a75a2f2820
/frameworks/rs/cpu_ref/rsd_cpu.h
|
1ffd86b448d78366190c540f98f8b6d641cdb6cf |
|
07-Jan-2015 |
Yang Ni <yangni@google.com> |
New Script Group API: runtime and cpu driver support. Change-Id: I9c612cf8874aabaf0ca7d1640567464c71ed3070
/frameworks/rs/cpu_ref/rsd_cpu.h
|
44bef6fba6244292b751387f3d6c31cca96c28ad |
|
12-Aug-2014 |
Chris Wailes <chriswailes@google.com> |
Replace NULL macros with nullptr literals. Change-Id: I918c40879aa547438f77e7d1a95fa2aa33bec398
/frameworks/rs/cpu_ref/rsd_cpu.h
|
f37121300217d3b39ab66dd9c8881bcbcad932df |
|
17-Jul-2014 |
Chris Wailes <chriswailes@google.com> |
Collapse code paths for single- and multi-input kernels. This patch simplifies the RenderScript driver and CPU reference implementation by removing the distinction between sing- and multi-input kernels in many places. The distinction is maintained in some places due to the need to maintain backwards compatibility. This permits the deletion of some functions and struct members that are no longer needed. Several related functions were also cleaned up. Change-Id: Id70a223ea5e3aa2b0b935b2b7f9af933339ae8a4
/frameworks/rs/cpu_ref/rsd_cpu.h
|
4b2bea3dc20865f3a198797702e19912a6a2171c |
|
13-Aug-2014 |
Stephen Hines <srhines@google.com> |
Revert "Collapse code paths for single- and multi-input kernels." This reverts commit 818cfa034e257c7bb48356257f5cb67334e19aa6. Change-Id: I59f39f52e6c8f60bb01cbcb8ccf2215eaf46a57f
/frameworks/rs/cpu_ref/rsd_cpu.h
|
818cfa034e257c7bb48356257f5cb67334e19aa6 |
|
17-Jul-2014 |
Chris Wailes <chriswailes@google.com> |
Collapse code paths for single- and multi-input kernels. This patch simplifies the RenderScript driver and CPU reference implementation by removing the distinction between sing- and multi-input kernels in many places. The distinction is maintained in some places due to the need to maintain backwards compatibility. This permits the deletion of some functions and struct members that are no longer needed. Several related functions were also cleaned up. Change-Id: I77e4b155cc7ca1581b05bf901c70ae53a9ff0b12
/frameworks/rs/cpu_ref/rsd_cpu.h
|
4b3c34e6833e39bc89c2128002806b654b8e623d |
|
11-Jun-2014 |
Chris Wailes <chriswailes@google.com> |
Adds support for multi-input kernels to Frameworks/RS. This patch modifies Frameworks/RS in the following ways: * Adjusted the data-layout of the C/C++ version of RsForEachStubParamStruct to accommodate a pointer to an array of input allocations and a pointer to an array of stride sizes for each of these allocatoins. * Adds a new code path for Java code to pass multiple allocations to a RS kernel. * Packs base pointers and step values for multi-input kernels into the new RsForEachStubParamStruct members. Change-Id: I46d2834c37075b2a2407fd8b010546818a4540d1
/frameworks/rs/cpu_ref/rsd_cpu.h
|
ac8d146a41f18afad5314ac8af440d6aedbe20bf |
|
25-Jun-2014 |
Stephen Hines <srhines@google.com> |
Switch the dimensions array to use uint32_t instead of size_t. size_t isn't safe, since we pack/unpack the array as a 32-bit int array, but that is the wrong type for 64-bit. Switching to uint32_t is better, since we only support 1 dimension today, and won't need many more than that even for complex cases in the future. Change-Id: Ie0dda264a9398b0e385e0f9ee0a91cda08325dbc
/frameworks/rs/cpu_ref/rsd_cpu.h
|
005113297b19ed256b6db9d6bc293ed9266899fc |
|
31-Jan-2014 |
Stephen Hines <srhines@google.com> |
Configure standalone bcc compiler to work with plugin libraries. Bug: 7342767 This change adds support (hidden behind the EXTERNAL_BCC_COMPILER ifdef) for loading plugin libraries via the external bcc toolchain. The external bcc compiler loads the named library and will then invoke a customized rsCompilerDriverInit() from that library. Change-Id: I07c2ea68be54c2255d36926fd37e395db790ef8f
/frameworks/rs/cpu_ref/rsd_cpu.h
|
b7d9c80c98fc96aa7c638e3124be24f13a6436b2 |
|
30-Apr-2013 |
Stephen Hines <srhines@google.com> |
Provide a mechanism for adjusting RSCompilerDriver after construction. We add a simple callback to the reference implementation of libRSDriver.so, such that additional BCC flags can be toggled/adjusted before doing any actual CPU compilation. Change-Id: Iaf253b7d967d0382937369b1c5dae2d23a99e8be
/frameworks/rs/cpu_ref/rsd_cpu.h
|
9c64239ebbfa4170190ede812e69150035e008e0 |
|
11-Apr-2013 |
Tim Murray <timmurray@google.com> |
Add support for synchronous get(). Change-Id: Ic94f1e36f7cffaaeda11fa9f0bb70e441fe1e535
/frameworks/rs/cpu_ref/rsd_cpu.h
|
1d476620399d54774e4fd386c1d23cc583d49522 |
|
30-Mar-2013 |
Stephen Hines <srhines@google.com> |
Add callback to allow replacement of runtime support library. Change-Id: I84ec56dfb29a0158015ebf31b3a73ac5bf34ef98
/frameworks/rs/cpu_ref/rsd_cpu.h
|
110f181b7966212a36ef18016f9b81c7322d0a2f |
|
15-Mar-2013 |
Jason Sams <jsams@google.com> |
Reduce diffs with compat lib. Change-Id: Ibfa2c7c7da56d158f424ac343e364feacd0a21da
/frameworks/rs/cpu_ref/rsd_cpu.h
|
cadfac411e6690e39de36c4f9e94deb9b7d2d08e |
|
07-Mar-2013 |
Jason Sams <jsams@google.com> |
Sync with compat lib. Change-Id: Id8ace103814cf126f0d157100d1d4a12cc0b8664
/frameworks/rs/cpu_ref/rsd_cpu.h
|
f218bf115af4ae4fd79adbb8842608b308a4cf07 |
|
13-Feb-2013 |
Stephen Hines <srhines@google.com> |
Support LinkRuntimeCallback() with RS compiler. Change-Id: I28ada4e7c462cb9673de6886d934dce855fac339
/frameworks/rs/cpu_ref/rsd_cpu.h
|
709a0978ae141198018ca9769f8d96292a8928e6 |
|
16-Nov-2012 |
Jason Sams <jsams@google.com> |
Separate CPU driver impl from reference driver. Change-Id: Ifb484edda665959b81d7b1f890d108bfa20a535d
/frameworks/rs/cpu_ref/rsd_cpu.h
|