Repository navigation
Update dependencies and CI, fixes - #603
Merged
Merged
Conversation
johguenther
force-pushed
the
guj/bump_ispc
branch
9 times, most recently
from
November 28, 2024 10:55
f793752 to
5ad92e2
Compare
Contributor
Author
|
depends on RenderKit/openvkl#31 |
johguenther
force-pushed
the
guj/bump_ispc
branch
from
December 9, 2025 12:07
5ad92e2 to
e496dd4
Compare
johguenther
force-pushed
the
guj/bump_ispc
branch
from
December 9, 2025 12:20
e496dd4 to
b4ff8db
Compare
johguenther
force-pushed
the
guj/bump_ispc
branch
from
December 19, 2025 11:34
b4ff8db to
e938a49
Compare
johguenther
force-pushed
the
guj/bump_ispc
branch
3 times, most recently
from
February 25, 2026 17:56
e160114 to
ea1958e
Compare
johguenther
force-pushed
the
guj/bump_ispc
branch
3 times, most recently
from
March 12, 2026 11:04
f9b1654 to
0473a4b
Compare
johguenther
force-pushed
the
guj/bump_ispc
branch
from
March 17, 2026 10:56
0473a4b to
a9c1b5c
Compare
Merged
johguenther
force-pushed
the
guj/bump_ispc
branch
2 times, most recently
from
March 18, 2026 16:27
8cf57e4 to
d7d82fc
Compare
johguenther
force-pushed
the
guj/bump_ispc
branch
from
March 27, 2026 14:59
d7d82fc to
3078149
Compare
johguenther
force-pushed
the
guj/bump_ispc
branch
2 times, most recently
from
August 11, 2026 20:16
e215dd7 to
d4e1e72
Compare
johguenther
force-pushed
the
guj/bump_ispc
branch
from
August 20, 2026 09:15
d4e1e72 to
9382408
Compare
johguenther
force-pushed
the
guj/bump_ispc
branch
from
September 11, 2026 15:30
9382408 to
2551138
Compare
- ISPC v1.30.0 (the new minimum required version) - OIDN v2.5.1 - OpenVKL devel (until v2.0.3, for AMR fix) - rkcommon v1.15.4 (also update test images, because changed LinearSpace3::frame(vec3f N) leads to different noise) - oneTBB v2023.1 - Dear ImGui v1.92.9b - glfw v3.5.1 (disable Wayland backend) - glm v1.0.3 - snappy v1.3.1 - benchmark v1.9.5 - gtest v1.18 - icx 2025.3 / dpcpp v7.1.0 - remove benny - superbuild: forward the compiler to the remaining dependencies - link the apps with DT_RPATH (to find libumf)
Newer CMake v4.x dropped support for versions < 3.10
- testing BMG and LNL - update Windows runner tags - no benchmarking on PVC - no storage of release packages - remove msvc15
The benchmarked shutdown/init cycles reload the CPU module, registering Embree's static destructors after the atexit of f3f1416, thus they run first. Shut down at the end of main; keep that handler (the benchmark library may call exit, a second ospShutdown is a no-op). Also drop the catch(...) in ~ISPCDevice: it describes a segfault, which is not catchable, and Embree's C API turns exceptions into error callbacks. Sanitize jobs need our TBB (Debug OSPRay ships only the debug one) and intercept_tls_get_addr=0.
- Correct row-major strides (use .x/.y, not .y/.z) - Reseatable currentLevel pointer instead of const_cast on in - Reject non-multiple input dims and blockSize (fixes OOB + data race) - Drop dead counters; move brick data into output
Superbuild uses v4.4.1 from source for GPU builds but v4.4.0 pre-built for CPU-only builds (because v4.4.1 pre-built changed folder to `lib64`)
johguenther
force-pushed
the
guj/bump_ispc
branch
2 times, most recently
from
September 29, 2026 20:38
34967b3 to
e2006e9
Compare
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
Release authentication, dependency reproducibility, shared-install ownership, and PR scope discrepancies remain unresolved.
Review effort: Balanced
Findings: 1
Open (4)
What changed in this PR
Updates dependencies and CI, migrates Embree integration to traversables, and includes several runtime fixes.
Changes:
- Updates build requirements and third-party dependencies.
- Expands and modernizes CI/release coverage.
- Adapts rendering code to newer Embree APIs and fixes several behaviors.
| File | Description |
|---|---|
test_image_data/CMakeLists.txt |
Raises minimum CMake version. |
test_image_data/baseline/TestScenesVolumes_UnstructuredVolume.simple_3.png.md5 |
Updates image baseline. |
test_image_data/baseline/Light_AmbientLight.parameter_0.png.md5 |
Updates image baseline. |
scripts/tests/sanitize_ignore.txt |
Adds leak-sanitizer suppressions. |
scripts/tests/run-benchmarks.sh |
Removes Benny result uploads. |
scripts/tests/run_tests.sh |
Restores ARM shadow-catcher test. |
scripts/tests/run_gpu_tests.sh |
Consolidates GPU ID-buffer exclusions. |
scripts/tests/run_gpu_tests.ps1 |
Mirrors GPU test exclusions on Windows. |
scripts/superbuild/toolchains/macos-rosetta.cmake |
Configures Objective-C cross-compilation targets. |
scripts/superbuild/dependencies/package_install.cmake |
Adds shared-prefix package installation. |
scripts/superbuild/dependencies/glfw.patch |
Updates secure Windows module loading patch. |
scripts/superbuild/dependencies/dep_snappy.cmake |
Updates Snappy and visibility settings. |
scripts/superbuild/dependencies/dep_rkcommon.cmake |
Updates dependency ordering. |
scripts/superbuild/dependencies/dep_openvkl.cmake |
Updates OpenVKL installation and dependencies. |
scripts/superbuild/dependencies/dep_oidn.cmake |
Updates OIDN source/package handling. |
scripts/superbuild/dependencies/dep_ispc.cmake |
Updates ISPC package layout handling. |
scripts/superbuild/dependencies/dep_gtest.cmake |
Updates GoogleTest. |
scripts/superbuild/dependencies/dep_glm.cmake |
Updates GLM. |
scripts/superbuild/dependencies/dep_glfw.cmake |
Updates GLFW and build options. |
scripts/superbuild/dependencies/dep_embree.cmake |
Updates Embree installation handling. |
scripts/superbuild/dependencies/dep_benchmark.cmake |
Updates Google Benchmark. |
scripts/superbuild/CMakeLists.txt |
Updates dependency versions and orchestration. |
scripts/release/macosx.sh |
Reorders release options. |
README.md |
Updates ISPC prerequisite. |
ospray/include/ospray/ospray.h |
Adjusts C++ NULL detection. |
ospray/include/ospray/OSPEnums.h |
Stabilizes C++ enum widths. |
ospray/common/ISPCMessages.h |
Stabilizes message enum width. |
ospray/api/API.cpp |
Changes sanitizer shutdown behavior. |
modules/mpi/tutorials/GLFWDistribOSPRayWindow.cpp |
Uses a monotonic frame timer. |
modules/mpi/ospray/render/distributed/DistributedRenderer.ispc |
Uses Embree traversable intersection. |
modules/mpi/ospray/common/DistributedWorldShared.h |
Stores a region traversable. |
modules/mpi/ospray/common/DistributedWorld.cpp |
Manages region scene ownership. |
modules/cpu/volume/Volume.ispc |
Adjusts GPU volume-hit bookkeeping. |
modules/cpu/ISPCDevice.cpp |
Removes exception suppression during teardown. |
modules/cpu/geometry/Geometry.h |
Supports custom vector allocators. |
modules/cpu/geometry/Curves.h |
Uses device-accessible curve flags. |
modules/cpu/geometry/Curves.cpp |
Allocates and initializes shared curve flags. |
modules/cpu/common/WorldShared.h |
Replaces scene handles with traversables. |
modules/cpu/common/World.ih |
Uses traversable tracing APIs. |
modules/cpu/common/World.h |
Retains host-owned Embree scenes. |
modules/cpu/common/World.cpp |
Manages scenes and traversables separately. |
modules/cpu/common/InstanceShared.h |
Stores an instance traversable. |
modules/cpu/common/Instance.ih |
Queries transforms through traversables. |
modules/cpu/common/Instance.h |
Adds traversable assignment. |
modules/cpu/common/Instance.cpp |
Queries transforms directly from geometry. |
modules/cpu/CMakeLists.txt |
Maps traversable APIs for GPU builds. |
modules/cpu/camera/PerspectiveCamera.ispc |
Uses traversable camera transforms. |
modules/cpu/camera/PanoramicCamera.ispc |
Uses traversable camera transforms. |
modules/cpu/camera/OrthographicCamera.ispc |
Uses traversable camera transforms. |
modules/cpu/camera/CameraShared.h |
Stores a camera traversable. |
modules/cpu/camera/Camera.h |
Adds an Embree dummy scene. |
modules/cpu/camera/Camera.cpp |
Builds camera transform traversables. |
doc/prerequisites.md |
Updates tool and dependency prerequisites. |
doc/compilation.md |
Updates package lookup example. |
CMakeLists.txt |
Raises minimum CMake version. |
cmake/package.cmake |
Configures transitive archive RPATH behavior. |
cmake/ospray_redistribute_deps.cmake |
Adds Unified Runtime libraries. |
cmake/ospray_options.cmake |
Updates required dependency versions. |
cmake/ospray_cmake_config/osprayConfig.cmake.in |
Removes legacy MSVC workaround. |
cmake/compiler/msvc.cmake |
Removes legacy __cplusplus flag. |
cmake/compiler/ispc.cmake |
Enforces the minimum ISPC version. |
cmake/compiler/dpcpp.cmake |
Removes unsupported offload flag. |
cmake/compiler/clang.cmake |
Adds secure Windows dependency loading. |
CHANGELOG.md |
Documents dependency and runtime changes. |
apps/ospTutorial/ospTutorialFindospray/CMakeLists.txt |
Raises tutorial CMake minimum. |
apps/ospBenchmark/ospBenchmark.cpp |
Performs explicit benchmark shutdown. |
apps/common/raw_to_amr/rawToAMR.cpp |
Fixes AMR indexing and concurrency. |
apps/common/external/imgui/imgui.patch |
Updates ImGui integration patch. |
.github/workflows/scheduled.yml |
Updates scheduled Windows runners. |
.github/workflows/release.yml |
Modernizes release and validation jobs. |
.github/workflows/icx-windows.env |
Updates Windows Intel compiler. |
.github/workflows/icx-linux.env |
Updates Linux Intel compiler. |
.github/workflows/gfx-windows.env |
Tracks the latest Windows GPU driver. |
.github/workflows/dpcpp.env |
Updates the DPC++ toolchain. |
.github/workflows/ci.windows.yml |
Updates Windows build/test coverage. |
.github/workflows/ci.windows.gpu.yml |
Expands Windows GPU coverage. |
.github/workflows/ci.linux.yml |
Updates Linux toolchains and sanitizer jobs. |
.github/workflows/ci.linux.gpu.yml |
Expands Linux GPU coverage. |
.github/workflows/benchmark.yml |
Removes Benny and obsolete PVC coverage. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
- workers SIGILL: Open MPI patches mmap over ASan's interceptor, disable its patcher - leaks: Open MPI per-process state, prterun kills the workers before MPI_Finalize; sanitize_ignore.txt back (was dropped by a04c1a3) - odr-violation on snappy::Sink vtable: static snappy in 3 shared libs, build it hidden - rank 0 leaks unnameable (<unknown module>): ospShutdown unmaps the MPI module before LSan looks, thus keep modules loaded under ASan
johguenther
force-pushed
the
guj/bump_ispc
branch
from
October 2, 2026 09:00
e2006e9 to
1fc3647
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Just the CI and dependencies updates. (older Fixes and optimizations moved to #611)