forked from OSchip/llvm-project
6bfc863d74
Summary: Basic CUDA platform implementation and cmake infrastructure to control whether it's used. A few important TODOs will be handled in later patches: * Log some error messages that can't easily be returned as Errors. * Cache modules and kernels to prevent reloading them if someone tries to reload a kernel that's already loaded. * Tolerate shared memory arguments for kernel launches. Reviewers: jlebar Subscribers: beanz, mgorny, jprice, jlebar, parallel_libs-commits Differential Revision: https://reviews.llvm.org/D24538 llvm-svn: 281524 |
||
---|---|---|
.. | ||
examples | ||
include/streamexecutor | ||
lib | ||
tools/streamexecutor-config | ||
unittests | ||
CMakeLists.txt | ||
Doxyfile.in | ||
README.txt | ||
customdoxygen.css |
README.txt
StreamExecutor ============== StreamExecutor is a wrapper around CUDA and OpenCL (host-side) programming models (runtimes). This abstraction cleanly permits host code to target either CUDA or OpenCL devices with identically-functioning data parallel kernels. It manages the execution of concurrent work targeting the accelerator, similar to a host-side Executor. This version of StreamExecutor can be built either as a sub-project of the LLVM project or as a standalone project depending on LLVM as an external package.