forked from mmp/pbrt-v3
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Significantly improve parallel scalability of SpatialLightDistribution.
Remove the sharding approach and instead use a single lock-free hash table. (This is made easier, since we only need to handle insertion and lookup--not deletion.) On a 2 core/4 thread system, a version of the straight-hair scene in the scenes distribution goes from 18.27s in SpatialLightDistribution lookup to 0.66. On a 16 core/32 thread system, a version of the bathroom scene with path tracing goes from 36.7% of runtime in SpatialLightDistribution lookup to 0.97%; overall rendering time drops accordingly from 227.5s to 132.5s.
- Loading branch information
Showing
3 changed files
with
139 additions
and
122 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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