Skip to content

Commit 31a2dd1

Browse files
committed
updated documentation
1 parent 5f8976f commit 31a2dd1

File tree

5 files changed

+70
-77
lines changed

5 files changed

+70
-77
lines changed

CHANGELOG.md

+48-55
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
Version History
22
---------------
33

4+
### New Features in Embree 2.16.3
5+
- Increased accuracy for handling subdivision surfaces. This fixes
6+
cracks when using displacement mapping but reduces performance
7+
at irregular vertices.
8+
- Fixed a bug where subdivision geometry was not properly updated
9+
when modifying only the tesselation rate and vertex array.
10+
411
### New Features in Embree 2.16.2
512
- Fixed bug that caused NULL intersection context in intersection
613
filter when instancing was used.
@@ -25,17 +32,21 @@ Version History
2532
### New Features in Embree 2.16.0
2633
- Improved multi-segment motion blur support for scenes with
2734
different number of time steps per mesh.
28-
- New top level BVH builder that improves build times and BVH quality of two-level BVHs.
35+
- New top level BVH builder that improves build times and BVH quality
36+
of two-level BVHs.
2937
- Added support to enable only a single ISA. Previously code was
3038
always compiled for SSE2.
31-
- Improved single ray tracing performance for incoherent rays on AVX512 architectures by 5-10%.
32-
- Improved packet/hybrid ray tracing performance for incoherent rays on AVX512 architectures by 10-30%.
33-
- Improved stream ray tracing performance for coherent rays in structure-of-pointers layout by 40-70%.
39+
- Improved single ray tracing performance for incoherent rays on
40+
AVX-512 architectures by 5-10%.
41+
- Improved packet/hybrid ray tracing performance for incoherent rays
42+
on AVX-512 architectures by 10-30%.
43+
- Improved stream ray tracing performance for coherent rays in
44+
structure-of-pointers layout by 40-70%.
3445
- BVH builder for compact scenes of triangles and quads needs
3546
essentially no temporary memory anymore. This doubles the
3647
maximal scene size that can be rendered in compact mode.
37-
- Triangles no longer store the geometry normal in fast/default mode which reduces
38-
memory consumption by up to 20%.
48+
- Triangles no longer store the geometry normal in fast/default mode
49+
which reduces memory consumption by up to 20%.
3950
- Compact mode uses BVH4 now consistently which reduces memory
4051
consumption by up to 10%.
4152
- Reduced memory consumption for small scenes (of 10k-100k primitives)
@@ -47,17 +58,19 @@ Version History
4758
Embree and the application is simplified.
4859
- Fixed a bug that would have caused a failure of the BVH builder
4960
for dynamic scenes when run on a machine with more then 1000 threads.
50-
- Fixed a bug that could have been triggered when reaching the maximal number of
51-
mappings under Linux (`vm.max_map_count`). This could have happened when creating a
52-
large number of small static scenes.
61+
- Fixed a bug that could have been triggered when reaching the maximal
62+
number of mappings under Linux (`vm.max_map_count`). This could have
63+
happened when creating a large number of small static scenes.
5364
- Added huge page support for Windows and MacOSX (experimental).
5465
- Added support for Visual Studio 2017.
5566
- Removed support for Visual Studio 2012.
56-
- Precompiled binaries now require a CPU supporting at least the SSE4.2 ISA.
67+
- Precompiled binaries now require a CPU supporting at least the
68+
SSE4.2 ISA.
5769
- We no longer provide precompiled binaries for 32 bit on Windows.
58-
- Under Windows one now has to use the platform toolset option in CMake to switch
59-
to Clang or the Intel® Compiler.
60-
- Fixed a bug for subdivision meshes when using the incoherent scene flag.
70+
- Under Windows one now has to use the platform toolset option in
71+
CMake to switch to Clang or the Intel® Compiler.
72+
- Fixed a bug for subdivision meshes when using the incoherent scene
73+
flag.
6174
- Fixed a bug in the line geometry intersection, that caused reporting
6275
an invalid line segment intersection with primID -1.
6376
- Buffer stride for vertex buffers of different time steps of triangle
@@ -114,14 +127,14 @@ Version History
114127
- Reduced memory consumption when using lots of small dynamic objects.
115128
- Fixed bug for subdivision surfaces using low tessellation rates.
116129
- Hair geometry now uses a new ribbon intersector that intersects with
117-
ray-facing quads. The new intersector also returns the
118-
v-coordinate of the hair intersection, and fixes artefacts at junction
119-
points between segments, at the cost of a small performance hit.
130+
ray-facing quads. The new intersector also returns the v-coordinate
131+
of the hair intersection, and fixes artefacts at junction points
132+
between segments, at the cost of a small performance hit.
120133
- Added `rtcSetBuffer2` function, that additionally gets the number of
121134
elements of a buffer. In dynamic scenes, this function allows to
122-
quickly change buffer sizes, making it possible to change the number of
123-
primitives of a mesh or the number of crease features for subdivision
124-
surfaces.
135+
quickly change buffer sizes, making it possible to change the number
136+
of primitives of a mesh or the number of crease features for
137+
subdivision surfaces.
125138
- Added simple 'viewer_anim' tutorial for rendering key
126139
frame animations and 'buildbench' for measuring BVH (re-)build
127140
performance for static and dynamic scenes.
@@ -135,8 +148,8 @@ Version History
135148
- Up to 20% faster BVH build performance on the second generation
136149
Intel® Xeon Phi™ processor codenamed Knights Landing.
137150
- Improved quality of the spatial split builder.
138-
- Improved performance for coherent streams of ray packets (SOA layout),
139-
e.g. for fast primary visibility.
151+
- Improved performance for coherent streams of ray packets (SOA
152+
layout), e.g. for fast primary visibility.
140153
- Various bug fixes in tessellation cache, quad-based spatial
141154
split builder, etc.
142155

@@ -171,8 +184,8 @@ Version History
171184

172185
- Improved performance for streams of coherent (single) rays flagged
173186
with `RTC_INTERSECT_COHERENT`. For such coherent ray streams, e.g.
174-
primary rays, the performance typically improves by 1.3–2×.
175-
- New spatial split BVH builder for triangles, which is 2–6× faster
187+
primary rays, the performance typically improves by 1.3-2x.
188+
- New spatial split BVH builder for triangles, which is 2-6x faster
176189
than the previous version and more memory conservative.
177190
- Improved performance and scalability of all standard BVH builders on
178191
systems with large core counts.
@@ -189,12 +202,12 @@ Version History
189202
- Geometry types can get disabled at compile time.
190203
- Modified and extended the ray stream API.
191204
- Added new callback mechanism for the ray stream API.
192-
- Improved ray stream performance (up to 510%).
205+
- Improved ray stream performance (up to 5-10%).
193206
- Up to 20% faster morton builder on machines with large core counts.
194207
- Lots of optimizations for the second generation Intel® Xeon Phi™
195208
processor codenamed Knights Landing.
196209
- Added experimental support for compressed BVH nodes (reduces node
197-
size to 5662% of uncompressed size). Compression introduces a
210+
size to 56-62% of uncompressed size). Compression introduces a
198211
typical performance overhead of ~10%.
199212
- Bugfix in backface culling mode. We do now properly cull the
200213
backfaces and not the frontfaces.
@@ -205,8 +218,8 @@ Version History
205218

206219
### New Features in Embree 2.9.0
207220

208-
- Improved shadow ray performance (10100% depending on the scene).
209-
- Added initial support for ray streams (1030% higher performance
221+
- Improved shadow ray performance (10-100% depending on the scene).
222+
- Added initial support for ray streams (10-30% higher performance
210223
depending on ray coherence in the stream).
211224
- Added support to calculate second order derivatives using the
212225
`rtcInterpolate2` function.
@@ -227,26 +240,29 @@ Version History
227240
- Added support for quad geometry (replaces triangle-pairs feature).
228241
- Added support for linear motion blur of user geometries.
229242
- Improved performance through AVX-512 optimizations.
230-
- Improved performance of lazy scene build (when using TBB 4.4 update 2).
243+
- Improved performance of lazy scene build (when using TBB 4.4 update
244+
2).
231245
- Improved performance through huge page support under linux.
232246

233247
### New Features in Embree 2.7.1
234248

235249
- Internal tasking system supports cancellation of build operations.
236250
- ISPC mode for robust and compact scenes got significantly faster
237-
(implemented hybrid traversal for bvh4.triangle4v and bvh4.triangle4i).
251+
(implemented hybrid traversal for bvh4.triangle4v and
252+
bvh4.triangle4i).
238253
- Hair rendering got faster as we fixed some issues with the SAH
239254
heuristic cost factors.
240255
- BVH8 got slight faster for single ray traversal (improved sorting
241256
when hitting more than 4 boxes).
242257
- BVH build performance got up to 30% faster on CPUs with high core
243258
counts (improved parallel partition code).
244-
- High quality build mode again working properly (spatial splits had been
245-
deactivated in v2.7.0 due to some bug).
259+
- High quality build mode again working properly (spatial splits had
260+
been deactivated in v2.7.0 due to some bug).
246261
- Support for merging two adjacent triangles sharing a common edge
247262
into a triangle-pair primitive (can reduce memory consumption and
248263
BVH build times by up to 50% for mostly quad-based input meshes).
249-
- Internal cleanups (reduced number of traversal kernels by more templating)
264+
- Internal cleanups (reduced number of traversal kernels by more
265+
templating).
250266
- Reduced stack size requirements of BVH builders.
251267
- Fixed crash for dynamic scenes, triggered by deleting all
252268
geometries from the scene.
@@ -416,29 +432,6 @@ Version History
416432
- New variant of the SAH-based builder using triangle pre-splits
417433
(Xeon Phi)
418434

419-
### Example Performance Numbers for Embree 2.1
420-
421-
BVH rebuild performance (including triangle accel generation, excluding
422-
memory allocation) for scenes with 2–12 million triangles:
423-
424-
- Intel® Core™ i7 (Haswell-based CPU, 4 cores @ 3.0 GHz)
425-
- 7–8 million triangles/s for the SAH-based BVH builder
426-
- 30–36 million triangles/s for the Morton code-based BVH builder
427-
- Intel® Xeon Phi™ 7120
428-
- 37–40 million triangles/s for the SAH-based BVH builder
429-
- 140–160 million triangles/s for the Morton code-based BVH
430-
builder
431-
432-
Rendering of the Crown model (`crown.ecs`) with 4 samples per pixel
433-
(`-spp 4`):
434-
435-
- Intel® Core™ i7 (Haswell-based CPU, 4 cores CPU @ 3.0 GHz)
436-
- 1024×1024 resolution: 7.8 million rays per sec
437-
- 1920×1080 resolution: 9.9 million rays per sec
438-
- Intel® Xeon Phi™ 7120
439-
- 1024×1024 resolution: 47.1 million rays per sec
440-
- 1920×1080 resolution: 61.1 million rays per sec
441-
442435
### New Features in Embree 2.0
443436

444437
- Support for the Intel® Xeon Phi™ coprocessor platform

CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
SET(EMBREE_VERSION_MAJOR 2)
1818
SET(EMBREE_VERSION_MINOR 16)
1919
SET(EMBREE_VERSION_PATCH 3)
20-
SET(EMBREE_VERSION_NOTE "-alpha.0")
20+
SET(EMBREE_VERSION_NOTE "")
2121
SET(EMBREE_VERSION ${EMBREE_VERSION_MAJOR}.${EMBREE_VERSION_MINOR}.${EMBREE_VERSION_PATCH})
2222
MATH(EXPR EMBREE_VERSION_NUMBER "10000*${EMBREE_VERSION_MAJOR} + 100*${EMBREE_VERSION_MINOR} + ${EMBREE_VERSION_PATCH}")
2323
SET(CPACK_RPM_PACKAGE_RELEASE 1)

README.md

+20-20
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
% Embree: High Performance Ray Tracing Kernels 2.16.2
1+
% Embree: High Performance Ray Tracing Kernels 2.16.3
22
% Intel Corporation
33

44
Embree Overview
@@ -94,9 +94,9 @@ Windows Installer
9494

9595
You can install the Embree library using the Windows installer
9696
application
97-
[embree-2.16.2-x64.exe](https://github.com/embree/embree/releases/download/v2.16.2/embree-2.16.2.x64.exe). This
97+
[embree-2.16.3-x64.exe](https://github.com/embree/embree/releases/download/v2.16.3/embree-2.16.3.x64.exe). This
9898
will install the 64 bit Embree version by default in `Program
99-
Files\Intel\Embree v2.16.2 x64`.
99+
Files\Intel\Embree v2.16.3 x64`.
100100

101101
You have to set the path to the `lib` folder manually to your `PATH`
102102
environment variable for applications to find Embree. To compile
@@ -107,13 +107,13 @@ Embree installation.
107107
To uninstall Embree again open `Programs and Features` by clicking the
108108
`Start button`, clicking `Control Panel`, clicking `Programs`, and
109109
then clicking `Programs and Features`. Select `Embree
110-
2.16.2` and uninstall it.
110+
2.16.3` and uninstall it.
111111

112112
Windows ZIP File
113113
-----------------
114114

115115
Embree is also delivered as a ZIP file
116-
[embree-2.16.2.x64.windows.zip](https://github.com/embree/embree/releases/download/v2.16.2/embree-2.16.2.x64.windows.zip). After
116+
[embree-2.16.3.x64.windows.zip](https://github.com/embree/embree/releases/download/v2.16.3/embree-2.16.3.x64.windows.zip). After
117117
unpacking this ZIP file you should set the path to the `lib` folder
118118
manually to your `PATH` environment variable for applications to find
119119
Embree. To compile applications with Embree you also have to set the
@@ -127,18 +127,18 @@ Linux RPMs
127127
----------
128128

129129
Uncompress the 'tar.gz' file
130-
[embree-2.16.2.x86_64.rpm.tar.gz](https://github.com/embree/embree/releases/download/v2.16.2/embree-2.16.2.x86_64.rpm.tar.gz)
130+
[embree-2.16.3.x86_64.rpm.tar.gz](https://github.com/embree/embree/releases/download/v2.16.3/embree-2.16.3.x86_64.rpm.tar.gz)
131131
to
132132
obtain the individual RPM files:
133133

134-
tar xzf embree-2.16.2.x86_64.rpm.tar.gz
134+
tar xzf embree-2.16.3.x86_64.rpm.tar.gz
135135

136136
To install the Embree using the RPM packages on your Linux system type
137137
the following:
138138

139-
sudo rpm --install embree-lib-2.16.2-1.x86_64.rpm
140-
sudo rpm --install embree-devel-2.16.2-1.x86_64.rpm
141-
sudo rpm --install embree-examples-2.16.2-1.x86_64.rpm
139+
sudo rpm --install embree-lib-2.16.3-1.x86_64.rpm
140+
sudo rpm --install embree-devel-2.16.3-1.x86_64.rpm
141+
sudo rpm --install embree-examples-2.16.3-1.x86_64.rpm
142142

143143
You also have to install the Intel® Threading Building Blocks (TBB)
144144
using `yum`:
@@ -168,21 +168,21 @@ the tutorials to start them.
168168

169169
To uninstall Embree again just execute the following:
170170

171-
sudo rpm --erase embree-lib-2.16.2-1.x86_64
172-
sudo rpm --erase embree-devel-2.16.2-1.x86_64
173-
sudo rpm --erase embree-examples-2.16.2-1.x86_64
171+
sudo rpm --erase embree-lib-2.16.3-1.x86_64
172+
sudo rpm --erase embree-devel-2.16.3-1.x86_64
173+
sudo rpm --erase embree-examples-2.16.3-1.x86_64
174174

175175
Linux tar.gz files
176176
------------------
177177

178178
The Linux version of Embree is also delivered as a tar.gz file
179-
[embree-2.16.2.x86_64.linux.tar.gz](https://github.com/embree/embree/releases/download/v2.16.2/embree-2.16.2.x86_64.linux.tar.gz). Unpack
179+
[embree-2.16.3.x86_64.linux.tar.gz](https://github.com/embree/embree/releases/download/v2.16.3/embree-2.16.3.x86_64.linux.tar.gz). Unpack
180180
this file using `tar` and source the provided `embree-vars.sh` (if you
181181
are using the bash shell) or `embree-vars.csh` (if you are using the
182182
C shell) to setup the environment properly:
183183

184-
tar xzf embree-2.16.2.x64.linux.tar.gz
185-
source embree-2.16.2.x64.linux/embree-vars.sh
184+
tar xzf embree-2.16.3.x64.linux.tar.gz
185+
source embree-2.16.3.x64.linux/embree-vars.sh
186186

187187
If you want to ship Embree with your application best use the Embree
188188
version provided through the tar.gz file.
@@ -195,7 +195,7 @@ Mac OS X PKG Installer
195195

196196
To install the Embree library on your Mac OS X system use the
197197
provided package installer inside
198-
[embree-2.16.2.x86_64.dmg](https://github.com/embree/embree/releases/download/v2.16.2/embree-2.16.2.x86_64.dmg). This
198+
[embree-2.16.3.x86_64.dmg](https://github.com/embree/embree/releases/download/v2.16.3/embree-2.16.3.x86_64.dmg). This
199199
will install Embree by default into `/opt/local/lib` and
200200
`/opt/local/include` directories. The Embree tutorials are installed
201201
into the `/Applications/Embree2` folder.
@@ -217,13 +217,13 @@ Mac OS X tar.gz file
217217
---------------------
218218

219219
The Mac OS X version of Embree is also delivered as a tar.gz file
220-
[embree-2.16.2.x86_64.macosx.tar.gz](https://github.com/embree/embree/releases/download/v2.16.2/embree-2.16.2.x86_64.macosx.tar.gz). Unpack
220+
[embree-2.16.3.x86_64.macosx.tar.gz](https://github.com/embree/embree/releases/download/v2.16.3/embree-2.16.3.x86_64.macosx.tar.gz). Unpack
221221
this file using `tar` and source the provided `embree-vars.sh` (if you
222222
are using the bash shell) or `embree-vars.csh` (if you are using the
223223
C shell) to setup the environment properly:
224224

225-
tar xzf embree-2.16.2.x64.macosx.tar.gz
226-
source embree-2.16.2.x64.macosx/embree-vars.sh
225+
tar xzf embree-2.16.3.x64.macosx.tar.gz
226+
source embree-2.16.3.x64.macosx/embree-vars.sh
227227

228228
If you want to ship Embree with your application please use the Embree
229229
library of the provided tar.gz file. The library name of that Embree

include/embree2/rtcore_version.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,4 @@
1818
#define RTCORE_VERSION_MINOR 16
1919
#define RTCORE_VERSION_PATCH 3
2020
#define RTCORE_VERSION 21603
21-
#define RTCORE_VERSION_STRING "2.16.3-alpha.0"
21+
#define RTCORE_VERSION_STRING "2.16.3"

readme.pdf

-926 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)