Hello Intel® oneAPI Rendering Toolkit Users,
Thanks for your interest in Rendering Toolkit software developer products. This sticky forum post intends to be a quick access to high level status, faq, and key web references.
Comments are to be locked on this thread. After searching for your concern in preexisting forum posts, consider a new comment thread in the forum for follow up. Thanks!
Beta08 is here (end of July 2020).
Get Started with the Rendering Toolkit:
What is Rendering Toolkit?
The Intel® oneAPI Rendering Toolkit is a set of powerful libraries for high-fidelity rendering and visualization applications. See the product portal for more information.
Where can I see some case studies of component features?
The product portal is the best location to stay up to date on the latest and greatest with Rendering Toolkit. See "What Customers Are Saying" and "Intel oneAPI Rendering Toolkit in Action" sections of the portal.
Where can I see code samples?
Code samples are integrated with the component repositories. Default rebuilds of libraries will also build samples. Pre-compiled sample programs can be reviewed quickly from the /bin directories of each renderkit component. Review the library source implementations for repositories.
Where can I see repositories for library implementations?
Do I need the Base Toolkit to use the Rendering Toolkit?
The Base Toolkit is not required. However, DPC++ as included with the base toolkit can be employed for developer applications that use Rendering Toolkit.
Where are library API manuals?
What does Intel® Implicit SPMD Program Compiler (Intel® ISPC) provide rendering toolkit?
ISPC compiles Single Program Multiple Data (SPMD) C programming language variant source code. The SPMD extensions grant an opportunity to get improved performance on the Single Instruction Multiple Data instruction set extensions available on Intel CPUs. The language format maps well to embarrassingly parallel compute applications, and Rendering Toolkit developers have used it to optimize rendering applications in kind. Client applications may not necessarily use ISPC with Rendering Toolkit libraries, however ISPC code paths are intended to be performance optimized. Look out for sample applications demonstrating either an ISPC and/or a conventional C-scalar/C++ codepath.
Best Known Methods, Workarounds, and Troubleshoot:
Application compile fails on static_assert when using the OSPRay C++ wrapper
As of OSPRay 2.2.0 (included with Render Toolkit beta08) the OSPRay C++ wrapper API will need to see rkcommon type definitions for developer applications that use those types. static_assert checks on rkcommon type definitions will block compilation until type definitions are defined. Please consider usage of the preprocessor macro definition of OSPRAY_CPP_RKCOMMON_TYPES to activate the definitions from within Traits.h. Without this definition, a typical compile time error may look like:
error: static assertion failed: Only types corresponding to OSPDataType values can be set as parameters on OSPRay objects. NOTE: Math types (vec, box, linear, affine) are expected to come from rkcommon::math.
static_assert(OPSPTypeFor<T>::value != OSP_UNKNOWN).
TBB linkage practices and TBB headers. Directory hierarchy help.
As of Beta08 of the Rendering Toolkit, Rendering Toolkit libraries and applications are validated with TBB 2020 Update 3. Rendering Toolkit libraries are not validated with the TBB 2021 beta branch as distributed with the Base Toolkit. Please consider building with TBB 2020 Update 3.
TBB headers for 2020 Update 3 are included in the beta08 Rendering Toolkit release for convenience in the <oneapi_install_dir>/rkcommon/include directory. The 2020 Update 3 runtime libraries are located in the <oneapi_install_dir>/lib directory. Referenced CMake files via the FindTBB.cmake can be helped along with the additions of these variables at CMake configure time: TBB_ROOT and CMAKE_MODULE_PATH... Example:
#copy tbb headers to tbb folder mkdir /opt/intel/oneapi/rkcommon/latest/include/tbb cp /opt/intel/oneapi/rkcommon/latest/include/tbb*.h tbb/. #TBB_ROOT allows FindTBB.cmake to locate headers and libraries underneath TBB_ROOT cmake .. -DTBB_ROOT=/opt/intel/oneapi/rkcommon/latest -DCMAKE_MODULE_PATH=/opt/intel/oneapi/rkcommon/latest/lib/cmake/rkcommon-1.4.2
TBB dynamic runtime errors while using XCode*
In Beta08 users may see issues in an XCode* IDE developer environment when setting up dynamic runtime search paths. Apple* System Integrity Protection may purge these paths.
Pre-built sample application runtime errors
Base Toolkit users may have dynamic runtime issues when running Rendering Toolkit prebuilt applications. For an environment variable script mitigation, try these steps when using Rendering Toolkit:
The goal with the above mitigation is for pre-compiled applications to use TBB 2020 Update 3 runtime libraries included with the Rendering Toolkit. This dependency is as opposed to the TBB 2021 Beta branch included with the Base Toolkit.
Base toolkit users who wish to run Base Toolkit only programs: