IP Library › Granted Patent US 12,462,466
Granted Patent B2
US 12,462,466 · App. 18/527,750 · Granted Nov 4, 2025

Average rate regulator for parallel adaptive sampler

Inventor: Tomas Guy Akenine-Möller (Lund, SE)
Assignee: NVIDIA Corp.
G06T15/06G06T2210/52
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,462,466
App. No.
18/527,750
Granted
Nov 4, 2025
Kind
B2
Abstract

A ray tracing method forms a first accumulation of importance values of non-clamped pixels in an image and forms a second accumulation of waste importance of clamped pixels in the image. The first accumulation and the second accumulation are applied to set an updated average sample count for pixels in the image, and the ray tracer generates a number of sampling rays for particular pixels by applying the updated average sample count to a per-pixel importance setting.

Claims (65)

1 . A graphics rendering system comprising:

a graphics display device;

one or more processor; and

logic to configure the processor to:

form a first accumulation of importance values of pixels of an image for which ray trace sampling is not clamped (non-clamped pixels);

form a second accumulation of waste importance of pixels of the image for which the ray trace sampling is clamped (clamped pixels);

apply the first accumulation and the second accumulation to adapt an average per-pixel sample count of a ray tracer;

forming a first ratio of (a) a sum of the first accumulation and the second accumulation, and (b) a total importance of the non-clamped pixels and the clamped pixels; and

multiplying the first ratio by a total number of the pixels in the image.

2 . A method comprising:

forming a first accumulation of importance values of pixels in an image for which sampling by a ray tracer is not clamped (non-clamped pixels);

forming a second accumulation of waste importance of pixels in the image for which sampling by the ray tracer is clamped (clamped pixels);

applying the first accumulation and the second accumulation to set an average sample count for pixels in the image by forming a first ratio of (a) a sum of the first accumulation and the second accumulation, and (b) a total importance of the non-clamped pixels and the clamped pixels;

multiplying the first ratio by a total number of the pixels in the image; and

generating with the ray tracer a number of samples for each pixel of the plurality of pixels by applying the average sample count to a per-pixel importance setting.

3 . The method of claim 2 , further comprising:

forming a second ratio of (c) a total number of the pixels in the image, and (d) a number of the non-clamped pixels in the image; and

scaling the first ratio by the second ratio to form a third ratio.

4 . The method of claim 3 , further comprising:

scaling the third ratio by a difference between a previously configured average sample count and a configured minimum sample count.

5 . The method of claim 2 , wherein generating with the ray tracer the number of samples for each pixel comprises:

scaling an importance of each pixel by a first ratio of (a) a number of the non-clamped pixels in the image, and (b) the first accumulation.

6 . The method of claim 5 , further comprising:

scaling the first ratio by a difference between the average sample count and a configured minimum sample count to generate a second ratio; and

adding the configured minimum sample count to the second ratio.

7 . The method of claim 2 , further comprising:

generating a count of one of (a) a number of the clamped pixels in the image, and (b) a number of the non-clamped pixels in the image.

8 . The method of claim 7 , wherein the first accumulation, the second accumulation, and the count are each generated by a reduction of a different respective texture layer.

9 . The method of claim 7 , wherein the first accumulation, the second accumulation, and the count are each generated by a reduction of a same texture layer.

10 . A non-volatile computer-readable medium comprising instructions that, when applied to one or more computer processor, implement a ray tracer comprising:

a ray generator configured with an average per-pixel sample count;

a sample count generator configured to:

form a first accumulation of importance values of pixels of the image for which sampling is not clamped (non-clamped pixels);

form a second accumulation of waste importance of pixels of the image for which sampling is clamped (clamped pixels);

scale an importance of each pixel by a first ratio of (a) a number of the non-clamped pixels in the image, and (b) the first accumulation; and

apply the first accumulation and the second accumulation to adapt the average per-pixel sample count of the ray generator.

11 . The non-volatile computer-readable medium of claim 10 , wherein the sample count generator is configured to form a second ratio of (a) a sum of the first accumulation and the second accumulation, and (b) a total importance of the non-clamped pixels and the clamped pixels.

12 . The non-volatile computer-readable medium of claim 11 , wherein the sample count generator is further configured to:

multiply the second ratio by a total number of the pixels in the image.

13 . The non-volatile computer-readable medium of claim 11 , wherein the sample count generator is further configured to:

form a third ratio of (c) a total number of the pixels in the image, and (d) a number of the non-clamped pixels in the image; and

scale the second ratio by the third ratio to form a fourth ratio.

14 . The non-volatile computer-readable medium of claim 13 , wherein the sample count generator is further configured to:

scale the fourth ratio by a difference between a previously configured average sample count and a configured minimum sample count.

15 . The non-volatile computer-readable medium of claim 10 , wherein the sample count generator is further configured to:

scale the first ratio by a difference between the average sample count and a configured minimum sample count to generate a second ratio; and

add the configured minimum sample count to a second ratio.

16 . The non-volatile computer-readable medium of claim 10 , wherein the sample count generator is further configured to:

generate a count of one of (a) a number of the clamped pixels in the image, and (b) a number of the non-clamped pixels in the image.

17 . The non-volatile computer-readable medium of claim 16 , wherein the sample count generator is further configured to generate the first accumulation, the second accumulation, and the count by a reduction of a different respective texture layer.

18 . The non-volatile computer-readable medium of claim 16 , wherein the sample count generator is further configured to generate the first accumulation, the second accumulation, and the count by a reduction of a same texture layer.

19 . A method comprising:

forming a first accumulation of importance values of pixels in an image for which sampling by a ray tracer is not clamped (non-clamped pixels);

forming a second accumulation of waste importance of pixels in the image for which sampling by the ray tracer is clamped (clamped pixels);

applying the first accumulation and the second accumulation to set an average sample count for pixels in the image;

generating a count of one of (a) a number of the clamped pixels in the image, and (b) a number of the non-clamped pixels in the image;

wherein the first accumulation, the second accumulation, and the count are each generated by a reduction of a different respective texture layer; and

generating with the ray tracer a number of samples for each pixel of the plurality of pixels by applying the average sample count to a per-pixel importance setting.

20 . A method comprising:

forming a first accumulation of importance values of pixels in an image for which sampling by a ray tracer is not clamped (non-clamped pixels);

forming a second accumulation of waste importance of pixels in the image for which sampling by the ray tracer is clamped (clamped pixels);

applying the first accumulation and the second accumulation to set an average sample count for pixels in the image;

generating a count of one of (a) a number of the clamped pixels in the image, and (b) a number of the non-clamped pixels in the image;

wherein the first accumulation, the second accumulation, and the count are each generated by a reduction of a same texture layer; and

generating with the ray tracer a number of samples for each pixel of the plurality of pixels by applying the average sample count to a per-pixel importance setting.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 2, 2024
From: AKENINE-MÖLLER, TOMAS GUY
To: NVIDIA CORP.
Reel/Frame 065993/0097 →
Continuity (1)
Related Publication 20250182378A1 · Jun 5, 2025
References Cited (6)
US 10992845B1 · Seely · 2021 [cited by examiner]
US 11216916B1 · Kozlowski · 2022 [cited by examiner]
US 11282258B1 · Akenine-Möller · 2022 [cited by examiner]
US 20150186987A1 · Madhuranath · 2015 [cited by examiner]
US 20200027260A1 · Harris · 2020 [cited by examiner]
US 20200058105A1 · Liu · 2020 [cited by examiner]