Files
papyrus 79f2cfc4db Revise README for project details and benchmarks
Updated project description and added performance benchmarks.
2026-02-17 01:59:45 +05:30

31 lines
1.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Multithreaded Ray Tracer
## Ray Tracing in One Weekend
This project is an implementation of Peter Shirleys
[*Ray Tracing in One Weekend*](https://raytracing.github.io/books/RayTracingInOneWeekend.html),
the first book in the Ray Tracing trilogy series, written in C++.
In addition to single threaded implementation, I've added multithreading to keep the render time reasonable.
---
### Final Render (500 Samples Per Pixel, 1200×675)
![Final Render](final_Renders/final_render.png)
---
## Performance Benchmark
My CPU is Intel Core i9-13900H with 8E and 6P cores (20 logical threads). The above image was rendered in about 5m 20s with all of the logical threads saturated and CPU utilization at ~95% with a base clock of 2.8GHz. The image consists of 500 samples per pixel, 50 Max recursion depth at 1200 x 675 resolution. The original PPM image was converted to PNG format using ImageMagick.
### Render Time
| Mode | Render Time |
|-------------------|------------|
| Single-threaded | 2 hours 59 minutes |
| Multithreaded | 5 minutes 20 seconds |