View on GitHub


High Performance Ray Tracing Kernels

We recently released Embree v2.16.5!

Embree Overview

Embree is a collection of high-performance ray tracing kernels, developed at Intel. The target user of Embree are graphics application engineers that want to improve the performance of their application by leveraging the optimized ray tracing kernels of Embree. The kernels are optimized for photo-realistic rendering on the latest Intel® processors with support for SSE, AVX, AVX2, and AVX-512. Embree supports runtime code selection to choose the traversal and build algorithms that best matches the instruction set of your CPU. We recommend using Embree through its API to get the highest benefit from future improvements. Embree is released as Open Source under the Apache 2.0 license.

Embree supports applications written with the Intel SPMD Program Compiler (ISPC, by also providing an ISPC interface to the core ray tracing algorithms. This makes it possible to write a renderer in ISPC that leverages SSE, AVX, AVX2, and AVX-512 without any code change. ISPC also supports runtime code selection, thus ISPC will select the best code path for your application, while Embree selects the optimal code path for the ray tracing algorithms.

Embree contains algorithms optimized for incoherent workloads (e.g. Monte Carlo ray tracing algorithms) and coherent workloads (e.g. primary visibility and hard shadow rays). For standard CPUs, the single-ray traversal kernels in Embree provide the best performance for incoherent workloads and are very easy to integrate into existing rendering applications. For AVX-512 enabled machines, a renderer written in ISPC using the default hybrid ray/packet traversal algorithms have shown to perform best, but requires writing the renderer in ISPC. In general for coherent workloads, ISPC outperforms the single ray mode on each platform. Embree also supports dynamic scenes by implementing high performance two-level spatial index structure construction algorithms.

In addition to the ray tracing kernels, Embree provides some tutorials to demonstrate how to use the Embree API. The example photorealistic renderer that was originally included in the Embree kernel package is now available in a separate GIT repository (see Embree Example Renderer).

Embree Resources


Embree Presentation at SIGGRAPH 2017

STBVH: A Spatial-Temporal BVH for Efficient Multi-Segment Motion Blur presentation at HPG 2017

Improved Two-Level BVHs using Partial Re-Braiding presentation at HPG 2017

Embree Presentation at SIGGRAPH 2016

Embree Presentation at SIGGRAPH 2015

Embree Paper Talk at SIGGRAPH 2014

Embree Tutorial at SIGGRAPH 2014

Embree 2.0 Presentation at SIGGRAPH 2013

Embree 1.1 Presentation at SIGGRAPH 2012

Blogs / Forum

Read the Embree Blog for more details about Embree.

Participate in Embree Forum Discussion.

Contributing to Embree

To contribute code to the Embree repository you need to sign a Contributor License Agreement (CLA). Individuals need to fill out the Individual Contributor License Agreement (ICLA). Corporations need to fill out the Corporate Contributor License Agreement (CCLA) and each employee that wants to contribute has to fill out an Individual Contributor License Agreement (ICLA). Please follow the instructions of the CLA forms to send them.

Embree Support and Contact

If you encounter bugs please report them via Embree’s GitHub Issue Tracker.

For questions please write us at

To receive notifications of updates and new features of Embree please subscribe to the Embree mailing list.

Version History

New Features in Embree 2.16.5

New Features in Embree 2.16.4

New Features in Embree 2.16.3

New Features in Embree 2.16.2

New Features in Embree 2.16.1

New Features in Embree 2.16.0

New Features in Embree 2.15.0

New Features in Embree 2.14.0

New Features in Embree 2.13.0

New Features in Embree 2.12.0

New Features in Embree 2.11.0

New Features in Embree 2.10.0

New Features in Embree 2.9.0

New Features in Embree 2.8.1

New Features in Embree 2.8.0

New Features in Embree 2.7.1

New Features in Embree 2.7.0

New Features in Embree 2.6.2

New Features in Embree 2.6.1

New Features in Embree 2.6.0

New Features in Embree 2.5.1

New Features in Embree 2.5.0

New Features in Embree 2.4

New Features in Embree 2.3.3

New Features in Embree 2.3.2

New Features in Embree 2.3.1

New Features in Embree 2.3

New Features in Embree 2.2

New Features in Embree 2.1

New Features in Embree 2.0


This software is based in part on the work of the Independent JPEG Group.