# RayTracing
###### tags: `Accelerator`
* [筆記主頁](https://hackmd.io/@zOZhMrk6TWqOaocQT3Oa0A/HkOxA6j59)
## Repo
* [rtcuda](https://github.com/lashhw/rtcuda/tree/main)
* [rtcore-systemc](https://github.com/lashhw/rtcore-systemc)
## 未來計畫
* [1/6 MTK meeting](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/Hkcu2BF9s/edit)
## 會議記錄彙整
::: spoiler 2023 spring
* [6/22 例行會議](https://hackmd.io/@zOZhMrk6TWqOaocQT3Oa0A/HkVOAaoc5)
* [6/30 例行會議](https://hackmd.io/@zOZhMrk6TWqOaocQT3Oa0A/HyHb4Co5c)
* [7/7 例行會議](https://hackmd.io/@zOZhMrk6TWqOaocQT3Oa0A/HkW4mN2cq)
* [7/21 例行會議](https://hackmd.io/@zOZhMrk6TWqOaocQT3Oa0A/H1KP2Uni5)
* [7/28 例行會議](/hhRJvjbVShKqPjj6BXr_vg)
* [8/4 例行會議](/kpwcCpGjTNa6FKVmjtXwRw)
* [8/11 例行會議](/dTtRkmaSRLuKaETBzJwYbw)
* [8/18 例行會議](/epXhhfvvSIWm3e3e0A9DqQ)
* [8/25 例行會議](/V3ibW01QSEyFTGDclt6eAw)
* [9/8 例行會議](/JKs77YVCSTuBSOv1P9gIjw)
* [9/15 例行會議](/CtpxSTnLRwyxi_kAqr8P2Q)
* [9/27 例行會議](/ryyIkvzGQK24vdq5oJEagQ)
* [10/13 例行會議](/z0eLiajXRQinhs0a-IBYmw)
* [10/20 例行會議](/b87E4q_DRY6BNfWkuSS8cw)
* [10/27 例行會議](/bwFxQ0MFRgqNusvoFAOp0g)
* [11/4 例行會議](/P5IEr_ESRJeQTlAkDZln8Q)
* [11/24 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/HyQkXbM8s)
* [12/15 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/SkbKHvtOo/edit)
* [1/5 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/HykFkJE9i/edit)
* [1/13 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/SJPF3Afss)
* [1/19 例行會議](/gKKgyA90Sua3i1RFzE71KA)
* [2/2 例行會議](/DDdWEd7RQyC3bNlBmGgp8g)
* [2/16 例行會議](/EmA0NU-CT-CUQ3CBw6mk0g)
* [2/23 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/BydcLrQRi)
* [3/15 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/SJSZUy1xh/edit)
* [3/23 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/HJ-JbFtxh)
* [3/30 例行會議](/2BeK0juuS6a6SmFoO33oLA)
* [4/13 例行會議](/Br5pY-4PSYGoeJDO4oW5cQ)
* [4/20 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/r1eXYJ46Mh)
* [4/27 例行會議](/cl9ENEOBS62oydDeZSMRPw)
* [5/12 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/B164YfjNn)
* [5/15 例行會議](https://hackmd.io/@9-RyP6TCRTaS5dURNUdMYw/rJpfavJrh/edit)
* [5/18 例行會議](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/rkPuP0WSh)
* [5/22 例行會議](/39UeSApSSeCNt-AQ_kpaXQ)
* [5/22 Compact RT-Core會議](https://hackmd.io/@9-RyP6TCRTaS5dURNUdMYw/r1hhu2dH3/edit)
* [5/25 例行會議](/Rrfj1xy_SlKiZhbsybd_KQ)
* [6/29 例行會議](/6GIap4VnTYeilXPM7BmE7g)
:::
:::spoiler 2023 fall
* [9/14 例行會議](https://hackmd.io/@kairesearch/HygxTwgyT/edit)
* [9/20 例行會議](https://hackmd.io/@ycpin/SJRZbMukp/edit)
* [9/27 例行會議](/ryyIkvzGQK24vdq5oJEagQ)
* [10/3 例行會議](/EZmZyx2ITWqYzV_gEH7OrA)
* [10/13 例行會議](/zLZ5E249QoeA3_fRZREXDg)
* [10/20 例行會議](https://hackmd.io/@kairesearch/rkVAxq0Wp)
* [10/27 例行會議](https://hackmd.io/@kairesearch/HkqFxvQGp)
* [11/3 例行會議](https://hackmd.io/@kairesearch/H1EuX6l7p)
* [11/10 例行會議](https://hackmd.io/@kairesearch/HJFtb-57a)
* [11/17 例行會議](https://hackmd.io/@ycpin/By9IqhX4p)
* [11/24 例行會議](https://hackmd.io/@ycpin/SytuDa4Ep)
* [12/01 會議記錄](https://hackmd.io/@ycpin/rylSMAWHp)
* [12/8 會議記錄](https://hackmd.io/@kairesearch/S1TUbgvrT/edit)
* [12/22 會議記錄](https://hackmd.io/@kairesearch/HkuhF8WPT)
* [1/5 會議記錄](https://hackmd.io/@kairesearch/HkwXHg4u6)
* [1/12 會議記錄](https://hackmd.io/@ycpin/HkJhAv6OT/edit)
* [1/19 會議記錄](/mE0AcmNKTxm5gBSrGvxA9w)
* [1/26 會議記錄](https://hackmd.io/@ycpin/SyXzbty5p)
* [2/5 會議記錄](https://hackmd.io/@kairesearch/rJFZha29T)
:::
::: spoiler 2024 spring
* [2/23 會議記錄](/rinTyP_uSl2FWO8DIZBuuw)
* [3/1 會議記錄](/phjj4YSPRe6-XEJkQONHig)
* [3/10 會議記錄](/vN67yskxRxKg0G8jpy7wrg)
* [3/15 會議記錄](/YNIawTKyT6SD9o-dF5_Gog)
* [3/22 會議記錄](https://hackmd.io/@kairesearch/BJvPKv5Aa)
* [3/29 會議記錄](https://hackmd.io/@ycpin/HkUm5hMkA)
* [4/12 會議記錄](https://hackmd.io/@kairesearch/HJ7VSVUlC/)
* [4/19 會議記錄](/YtH7VeTURoqWixiRKmzGGw)
* [4/26 會議記錄](https://hackmd.io/@nycu-cas/rkK65nuZC)
* [5/3 會議記錄](/7d7HelvsRaqwINzZoATldg)
* [5/10 會議記錄](/6AJ9U_L8SgqT2UmnY6bAsg)
* [5/17 會議記錄](/Kk5iyEpEQPqrsZsbePvvMw)
* [5/27 會議記錄](/iU34NpPbSAirb4JTQKCOEg)
* [6/3 會議記錄](/Cn5RDgNeS4eWbgolKRLoKw)
* [6/21 會議記錄](/g5eZbF56STK6zDufc7C-FQ)
:::
::: spoiler 2024 summer
* [7/4 會議記錄](https://hackmd.io/@ycpin/rJnJ68cI0)
* [7/11 會議記錄](https://hackmd.io/@ycpin/H1Gnjh3P0)
* [7/18 會議記錄](/PqL781LmQeGp4oALDLJeRw)
* [7/29 會議記錄](https://hackmd.io/@kairesearch/BJY3hUXt0)
* [8/8 會議記錄](/nkEb-Uy9S8CDJeZmRKcR5A)
* [8/15 會議記錄](https://hackmd.io/@kairesearch/ry0EVWQcR)
* [8/22 會議記錄](/Ybx-kf_RQXuJR2ie_yViyw)
* [8/29 會議記錄](https://hackmd.io/@kairesearch/BkIdnV6iA)
* [9/5 會議記錄](https://hackmd.io/@ycpin/BJLBEsB30)
:::
::: spoiler 2024 fall
* [9/12 會議記錄](https://hackmd.io/@kairesearch/HJUrW6yp0)
* [9/19 會議記錄](/hsDezlhNQkCMIPsVyqHH3A)
* [9/26 會議記錄](/sAQBh_5rT66V7UhOmzy77g)
* [10/3 會議記錄](/PCqh3lu8SOCoEb1jxxW8Ow)
* [10/11 會議記錄](https://hackmd.io/@ycpin/S1oQjQLyye)
* [10/17 會議記錄](/5j3qHuxERNGV2XiM9l1uuQ)
* [10/24 會議記錄](https://hackmd.io/@ycpin/S1o_gBPx1x)
* [10/31 會議記錄](https://hackmd.io/@kairesearch/HkGVdKx-yx)
* [11/08 會議記錄](/R6yKaGiGSb6Brp1d-nKyAA)
* [11/14 會議記錄](https://hackmd.io/@kairesearch/S1zakfXM1l)
* [11/21 會議記錄](https://hackmd.io/@kairesearch/rJYLumnfke)
* [11/28 會議記錄](https://hackmd.io/@kairesearch/rJe8RUrmkg)
* [12/5 會議記錄](https://hackmd.io/@kairesearch/HyBx7n07ke)
* [12/12 會議記錄](https://hackmd.io/@kairesearch/rkcbuCvVJe)
* [12/26 會議記錄](/t5ayy1OySWSokTEkz-0ZKQ)
:::
:::spoiler 2025 spring
* [01/02 會議記錄](https://hackmd.io/@ycpin/B1uYf5XUkx)
* [01/09 會議記錄](https://hackmd.io/@kairesearch/Hkvyw0n8yg)
* [01/16 會議記錄](https://hackmd.io/@kairesearch/BkjTUgLPye)
* [02/06 會議記錄](https://hackmd.io/@kairesearch/B1BPg6btJx)
* [02/13 會議記錄](https://hackmd.io/@kairesearch/S1xGY7liK1x)
* [02/19 會議記錄](https://hackmd.io/@kairesearch/rkEMqaf9kx)
* [02/26 會議記錄](/cWkmBHl5ReW7gaGMEgZIvA)
* [03/12 會議記錄](https://hackmd.io/@kairesearch/H1N6zd0jkg)
* [03/19 會議記錄](https://hackmd.io/@kairesearch/HJCVe6Pnkx)
* [03/26 會議記錄](https://hackmd.io/@kairesearch/ry5gLWWpkg)
* [04/02 會議記錄](/xCC7zTwaQyKWfQiQrG62Vw)
* [04/09 會議記錄](/znF3fnM8RCKVkcdVznUcvg)
* [04/15 會議記錄](/t-_rjD47TM2AWUXRR-w_lw)
* [04/23 會議記錄](/FnaPcAJvRuKxRP4naqGu1A)
* [04/30 會議記錄](https://hackmd.io/@kairesearch/HJpEx-yxlg)
* [05/07 會議記錄](https://hackmd.io/@kairesearch/BkZHazOlgx)
* [05/14 會議記錄](https://hackmd.io/@kairesearch/H1XEXKWWeg)
* [05/23 會議記錄](https://hackmd.io/@kairesearch/Bymkbr2bgx)
:::
:::spoiler 2025 summer
* [06/11 會議記錄](/EsCbYOufTd2RII9BFPMjCg)
* [06/18 會議記錄](https://hackmd.io/@pinyun/HkDDxbkEex)
* [07/02 會議記錄](https://hackmd.io/@pinyun/HJnn44ZHle)
* [07/09 會議記錄](https://hackmd.io/@pinyun/rJlD4q9rll)
* [07/16 會議記錄](https://hackmd.io/@pinyun/ryRDyyN8eg)
* [07/23 會議記錄](https://hackmd.io/@pinyun/HkN0tGT8gg)
* [07/30 會議記錄](https://hackmd.io/@pinyun/Sy_glLIDel)
* [08/06 會議記錄](https://hackmd.io/@pinyun/r1gE6iyOge)
* [08/13 會議記錄](https://hackmd.io/@pinyun/H1C7t6_ugg)
* [08/21 會議記錄](https://hackmd.io/@pinyun/H1wmrUQKel)
:::
:::spoiler 2025 fall
* [09/03 會議記錄](https://hackmd.io/@pinyun/SJF8DcEcgl)
* [09/10 會議紀錄](https://hackmd.io/@pinyun/rktdm26cxx)
* [09/17 會議紀錄](https://hackmd.io/@pinyun/BJ2S3dvsgg)
* [09/24 會議紀錄](https://hackmd.io/@pinyun/S1OPO7g2ge)
* [10/01 會議紀錄](https://hackmd.io/@pinyun/rkHifwt2ge)
* [10/08 會議紀錄](https://hackmd.io/@pinyun/By5iP0oplg)
* [10/15 會議紀錄](https://hackmd.io/@pinyun/B1zQu0iTxe)
* [10/22 會議紀錄](https://hackmd.io/@pinyun/BJnDQ7BAex)
* [10/29 會議紀錄](https://hackmd.io/@pinyun/Sk-q58RAxl)
* [11/05 會議紀錄](https://hackmd.io/@pinyun/BJ1gXtPkbg)
* [11/12 會議紀錄](https://hackmd.io/@pinyun/rkAFZTllbl)
* [11/19 會議記錄](/EqOxxPHTRPScoU_ZX2UK2A)
* [11/26 會議記錄](/0LhnatuyTvu6kkSCUe83IQ)
* [12/03 會議記錄](/DdeGs74_RbKTpcwNyqPTCA)
* [12/10 會議記錄](/UOEXzd3uRla7bqoxpjLNWw)
* [12/17 會議記錄](/KWSfj8B1Sn6AKVINevlxPA)
* [12/24 會議記錄](/b5jpdfqTTPK59BzIi-rBLw)
* [12/31 會議記錄](/iYCFK9_fTb-_7ilUnn3MKA)
:::
:::spoiler 2026 spring
* [01/07 會議記錄](/NBg7XloHQaGB3NIOAWOhhg)
* [01/16 會議記錄](/KA60FgJDSNyk-QJd_N_sew)
:::
## 研究數據
* [FP32 vs FP16](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/SJTxA8wSi)
* [exp_result](https://colab.research.google.com/drive/1KJQe1JEcuNFZ3uiXxi_IpNfk6LWm25cw)
* [Benchmark](https://docs.google.com/spreadsheets/d/1PCeAGnFYG6aqbZvkBEopvdSFQbXiBN9DdmMzXAjF76Q/edit?usp=sharing)
## 筆記
* [BVH ideas & algorithms](https://hackmd.io/5BZnApaUT2uDdUmoGa1oeg)
* [Ray Tracer Notes](https://hackmd.io/YO3Gn8M4T4W67GBml3XldA)
* [SpMV](/S1qPMqKs9)
* [Ray Tracer Todos](/QOAw3sHVQsm1RyH-IwBYXw)
* [BVH pseudocode](https://hackmd.io/ZM37r9d1SVyY6pFdyvjEGQ)
* [SGRT Notes](https://hackmd.io/k9ueLLZ-RbidssNDaQdoyw)
* [TRaX Notes](/RgEz2OosTfy8d3jqmu6OMw)
* [SaarCOR Notes](/NTnVbrINQmqI_R6-KLylKQ)
* [T&I Engine Notes](/xEkH2JTcRAC5l-S6D3_OTA)
* [HART Notes](/omoxIadzRP-FehUQ0ouwIw)
* [Ray-Triangle Intersection Algorithm](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/H1Ea6EEgj)
* [Xilinx FPGA Notes](/iIGa8WchRx6a5_tO5MaXRg)
* [NVIDIA RT Core / AMD Ray Accelerator / Intel Ray Tracing Units Notes](/FFHMfIeKTHK1-AISCbyyLw)
* [Bandwidth-Efficient BVH Layout for Incremental Hardware Traversal Notes](https://hackmd.io/bW8ojjKaST-wqdQu5gQMMg)
* [Watertight Ray Traversal with Reduced Precision Notes](https://hackmd.io/@zOZhMrk6TWqOaocQT3Oa0A/ry9RjeaXj)
* [A Mobile Ray Tracing Engine with Hybrid Number Representations Notes](/QY4VnLCeTuGdbq1noPHVWQ)
* [Genesys ZU](/C4js4dn6SKykRiz1_glFRA)
## 資源
* Computer Graphics Theory
* [CMU Computer Graphics Lecture](http://15462.courses.cs.cmu.edu/fall2020/)
* Scene data
* [McGuire Computer Graphics Archive](https://casual-effects.com/data/)
* [Rendering Resources | Benedikt Bitterli's Portfolio](https://benedikt-bitterli.me/resources/)
* Ray Tracer Implementation
* CPU-based
* Ray Tracing in One Weekend
* [Ray Tracing in One Weekend](https://raytracing.github.io/books/RayTracingInOneWeekend.html)
* [Ray Tracing: The Next Week](https://raytracing.github.io/books/RayTracingTheNextWeek.html)
* [Ray Tracing: The Rest of Your Life](https://raytracing.github.io/books/RayTracingTheRestOfYourLife.html)
* pbrt
* [Physically Based Rendering: From Theory to Implementation](https://www.pbr-book.org/3ed-2018/contents)
* [kanition/pbrtbook: pbrt 中文整合翻译 基于物理的渲染:从理论到实现 Physically Based Rendering: From Theory To Implementation](https://github.com/kanition/pbrtbook)
* [pbrt-v3 Input File Format](https://www.pbrt.org/fileformat-v3)
* Mitsuba
* [Mitsuba 3 - A Retargetable Forward and Inverse Renderer](http://mitsuba-renderer.org/)
* LuxCoreRender
* [LuxCoreRender – Open Source Physically Based Renderer](https://luxcorerender.org/)
* The Tungsten Renderer
* [tunabrain/tungsten: High performance physically based renderer in C++11](https://github.com/tunabrain/tungsten)
* [szellmann/visionaray: A C++-based, cross platform ray tracing library](https://github.com/szellmann/visionaray)
* CUDA-based
* [Accelerated Ray Tracing in One Weekend in CUDA | NVIDIA Technical Blog](https://developer.nvidia.com/blog/accelerated-ray-tracing-cuda/)
* [jan-van-bergen/GPU-Raytracer: GPU Raytracer from scratch in C++/CUDA](https://github.com/jan-van-bergen/GPU-Raytracer)
* [charlesliwang/CUDA-Path-Tracer-BVH: CUDA Path Tracer with BVH Acceleration, Depth of Field, AA + more](https://github.com/charlesliwang/CUDA-Path-Tracer-BVH)
* OptiX-based
* [RTX accelerated ray tracing with OptiX 7 | ACM SIGGRAPH 2020 Courses](https://dl.acm.org/doi/10.1145/3388769.3407532)
* [NVIDIA OptiX 7.5 API](https://raytracing-docs.nvidia.com/optix7/api/index.html)
* [NVIDIA OptiX 7.5 - Programming Guide](https://raytracing-docs.nvidia.com/optix7/guide/index.html#preface#)
* [joaovbs96/OptiX-Path-Tracer: OptiX Path Tracer](https://github.com/joaovbs96/OptiX-Path-Tracer)
* BVH Implementaion
* [Bounding Volume Hierarchies - pbrt](https://pbr-book.org/3ed-2018/Primitives_and_Intersection_Acceleration/Bounding_Volume_Hierarchies)
* [madmann91/bvh: A modern C++ BVH construction and traversal library](https://github.com/madmann91/bvh)
* CUDA
* [Programming Guide :: CUDA Toolkit Documentation](https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html)
* [Intro to Parallel Programming - Udacity](https://classroom.udacity.com/courses/cs344)
* [Programming Massively Parallel Processors | ScienceDirect](https://www.sciencedirect.com/book/9780128119860/programming-massively-parallel-processors) (accessible via NYCU IP)
* [NVIDIA/cub: Cooperative primitives for CUDA C++.](https://github.com/NVIDIA/cub)
* [Thrust - Parallel Algorithms Library](https://thrust.github.io/)
* [Thrust :: CUDA Toolkit Documentation](https://docs.nvidia.com/cuda/thrust/index.html)
* [Best Practices Guide :: CUDA Toolkit Documentation](https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/index.html)
* GPGPU Architecture
* [General-Purpose Graphics Processor Architecture | Morgan & Claypool books | IEEE Xplore](https://ieeexplore.ieee.org/document/8363085) (accessible via NYCU IP)
* [Alexwell - 知乎](https://www.zhihu.com/people/wo-shi-nuo-ya-fang-zhou/posts)
* [关于GPU一些笔记(SIMT方面)_Huo的藏经阁的博客-CSDN博客_simt架构](https://blog.csdn.net/weixin_42730667/article/details/109838089)
* FPGA
* [Cliff Cummings' Award-Winning Verilog & SystemVerilog Papers - many are included in Sunburst Design's Verilog Training & SystemVerilog Training Courses.](http://www.sunburst-design.com/papers/)
* [Vivado ML Training Courses](https://www.xilinx.com/products/design-tools/vivado/vivado-ml.html#training)
* [AXI Interconnects Tutorial: Multiple AXI Masters and Slaves in Digital Logic - Technical Articles](https://www.allaboutcircuits.com/technical-articles/what-are-axi-interconnects-tutorial-master-slave-digital-logic/)
* [Xilinx Design Hubs](https://www.xilinx.com/support/documentation-navigation/design-hubs.html)
* [PG085 - AXI4-Stream Infrastructure IP Suite v3.0 LogiCORE IP Product Guide](https://docs.xilinx.com/r/en-US/pg085-axi4stream-infrastructure/AXI4-Stream-Infrastructure-IP-Suite-v3.0-LogiCORE-IP-Product-Guide)
* [UG1037 - Vivado Design Suite: AXI Reference Guide](https://docs.xilinx.com/v/u/en-US/ug1037-vivado-axi-reference-guide)
## 相關論文
### Hardware Architecture
* [Toward Real-Time Ray Tracing: A Survey on Hardware Acceleration and Microarchitecture Techniques](https://dl.acm.org/doi/pdf/10.1145/3104067)
> numerical system, AS construction, ray generation, AS traversal, ray-triangle intersection
* [SaarCOR — A Hardware Architecture for Ray Tracing](https://dl.acm.org/doi/pdf/10.5555/569046.569051) (2002)
> SIMD, kd-tree, packet tracing
* [RPU: A Programmable Ray Processing Unit for Realtime Ray Tracing](https://dl.acm.org/doi/pdf/10.1145/1186822.1073211) (2005)
> SIMT, kd-tree, packet tracing
* [Toward a multicore architecture for real-time ray-tracing](https://ieeexplore.ieee.org/document/4771789) (2008)
> MIMD, kd-tree
* StreamRay
* [StreamRay: A Stream Filtering Architecture for Coherent Ray Tracing](https://dl.acm.org/doi/pdf/10.1145/2528521.1508282) (2009)
> Streaming SIMD, stream filtering
* [Coherent ray tracing via stream filtering](https://ieeexplore.ieee.org/document/4634622)
* [Architecture Considerations for Tracing Incoherent Rays](https://dl.acm.org/doi/pdf/10.5555/1921479.1921497) (2010)
> treelet
* T&I Engine and Its Derivative
* [T&I Engine: Traversal and Intersection Engine for Hardware Accelerated Ray Tracing](https://my.eng.utah.edu/~cs6958/papers/HWRT-seminar/a160-nah.pdf) (2011)
> MIMD, kd-tree, fixed logic, short-stack traversal, ordered depth-first layout, three-phase ray-triangle intersection test, ray accumulation unit
* [Parallel-pipeline-based Traversal Unit for Hardware-accelerated Ray Tracing](https://dl.acm.org/doi/pdf/10.1145/2407156.2407203)
* [MRTP: Mobile Ray Tracing Processor With Reconfigurable Stream Multi-Processors for High Datapath Utilization](https://ieeexplore.ieee.org/document/6082416) (2012)
> SIMT
* [A Reconfigurable SIMT Processor for Mobile Ray Tracing With Contention Reduction in Shared Memory](https://ieeexplore.ieee.org/document/6289395) (2013)
> SIMT
* SGRT
* [SGRT: A Mobile GPU Architecture for Real-Time Ray Tracing](https://web.yonsei.ac.kr/wjlee/document/sgrt.hpg13.pdf) (2013)
> MIMD, BVH, programmable shader, VLIW engine, CGRA-based Samsung reconfigurable processor, area-efficient pipelined T&I unit, single-ray tracing, FPGA prototyping
* [Real-time Ray Tracing on Coarse-grained Reconfigurable Processor](https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6718352)
> CGRA kernel optimization details
* [Real-Time Ray Tracing on Future Mobile Computing Platform](https://dl.acm.org/doi/pdf/10.1145/2543651.2543670)
* [A Novel Mobile GPU Architecture based on Ray Tracing](https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6486777)
* [SGRT: a scalable mobile GPU architecture based on ray tracing](https://dl.acm.org/doi/pdf/10.1145/2342896.2342953)
* [Energy Efficient Data Transmission for Ray Tracing on Mobile Computing Platform](https://dl.acm.org/doi/pdf/10.1145/2543651.2543673)
* [A Scalable GPU Architecture based on Dynamically Reconfigurable Embedded Processor](https://www.highperformancegraphics.org/previous/www_2011/media/Posters/HPG2011_Posters_Lee_abstract.pdf)
* [Exploiting loop-level parallelism on coarse-grained reconfigurable architectures using modulo scheduling](https://past.date-conference.com/proceedings-archive/2003/DATE03/PDFFILES/04B_2.PDF)
* TRaX and Its Derivative
* [TRaX: A Multicore Hardware Architecture for Real-Time Ray Tracing](https://dkoptacs.github.io/papers/hwrt_tcad09.pdf) (2009)
> MIMD, BVH, multicore, single-ray tracing, simplified memory system, fully programmable, share complex FUs
* [Efficient MIMD Architectures for High-Performance Ray Tracing](https://dkoptacs.github.io/papers/hwrt_iccd10.pdf) (2010)
> MIMD, BVH, reduces off-chip memory energy, reconfigurable special-purpose pipelines
* [A Mobile Accelerator Architecture for Ray Tracing](https://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=064DE62A26620E69D4B759141B1F68F7?doi=10.1.1.434.9358&rep=rep1&type=pdf) (2012)
> MIMD, multicore
* STRaTA
* [An energy and bandwidth efficient ray tracing architecture](https://dl.acm.org/doi/pdf/10.1145/2492045.2492058) (2013)
* [Memory Considerations for Low Energy Ray Tracing](https://hwrt.cs.utah.edu/papers/hwrt_cgf12458s.pdf)
* [A detailed study of ray tracing performance: render time and energy cost](https://link.springer.com/content/pdf/10.1007/s00371-018-1532-8.pdf)
* [RayCore: A ray-tracing hardware architecture for mobile devices](http://gamma.cs.unc.edu/SATO/Raycore/raycore.pdf) (2014)
> MIMD, kd-tree, ray generation unit
* [HART: A hybrid architecture for ray tracing animated scenes.](http://gamma.cs.unc.edu/HART/HART_files/HART_preprint.pdf) (2014)
> MIMD, BVH, enhanced T&I, ray-primAABB intersection test, cache-data reuse scheme, short-stack traversal
* [Reorder Buffer: An Energy-Efficient Multithreading Architecture for Hardware MIMD Ray Traversal](https://diglib.eg.org/handle/10.2312/14669) (2015)
* Mach-RT
* [Mach-RT: A Many Chip Architecture for High Performance Ray Tracing](https://ieeexplore.ieee.org/abstract/document/9183976) (2020)
> MIMD, BVH
* [Dual Streaming for Hardware-Accelerated Ray Tracing](https://dl.acm.org/doi/pdf/10.1145/3105762.3105771)
### GPU
* Aila & Laine
* [Understanding the Efficiency of Ray Traversal on GPUs](https://research.nvidia.com/sites/default/files/pubs/2009-08_Understanding-the-Efficiency/aila2009hpg_paper.pdf) (2009)
> packet traversal, while-while traversal, if-if traversal, persistent threads, speculative traversal
* [Understanding the Efficiency of Ray Traversal on GPUs – Kepler and Fermi Addendum](https://research.nvidia.com/sites/default/files/pubs/2012-06_Understanding-the-Efficiency/nvr-2012-02.pdf) (2012)
* [Improving SIMT Efficiency of Global Rendering Algorithms with Architectural Support for Dynamic Micro-Kernels](https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5695540) (2010)
* [Active Thread Compaction for GPU Path Tracing](https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.294.4658&rep=rep1&type=pdf) (2011)
* [Improving SIMD Efficiency for Parallel Monte Carlo Light Transport on the GPU](https://dl.acm.org/doi/pdf/10.1145/2018323.2018330) (2011)
* [Megakernels Considered Harmful: Wavefront Path Tracing on GPUs](https://research.nvidia.com/sites/default/files/pubs/2013-07_Megakernels-Considered-Harmful/laine2013hpg_paper.pdf) (2013)
> wavefront formulation
* [Latency considerations of depth-first GPU ray tracing](https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.726.9999&rep=rep1&type=pdf) (2014)
> loop unrolling, shallower hierarchy, unsorted occlusion tracing, sorting network
* [Unleashing the Power of GPU for Physically-Based Rendering via Dynamic Ray Shuffling](https://dl.acm.org/doi/pdf/10.1145/3123939.3124532) (2017)
> dynamic ray shuffling, GPGPU-Sim
* [CPU-style SIMD ray traversal on GPUs](https://dl.acm.org/doi/pdf/10.1145/3231578.3231583) (2018)
> wide BVH
* [Rearchitecting Spatiotemporal Resampling for Production](https://research.nvidia.com/publication/2021-07_rearchitecting-spatiotemporal-resampling-production) (2021)
### Ray Coherence
* [On Ray Reordering Techniques for Faster GPU Ray Tracing](https://dl.acm.org/doi/pdf/10.1145/3384382.3384534) (2020)
* [Rendering Complex Scenes with Memory-Coherent Ray Tracing](https://dl.acm.org/doi/pdf/10.1145/258734.258791) (1997)
* [Dynamic Ray Scheduling to Improve Ray Coherence and Bandwidth Utilization](https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4342596) (2007)
* [Cache-Oblivious Ray Reordering](http://sglab.kaist.ac.kr/CORR/) (2010)
* [Dynamic Ray Stream Traversal](https://dl.acm.org/doi/pdf/10.1145/2601097.2601222) (2014)
### BVH
* Survey
* [A Survey on Bounding Volume Hierarchies for Ray Tracing](https://onlinelibrary.wiley.com/doi/full/10.1111/cgf.142662) (2021)
* [STAR 5: A Survey on Bounding Volume Hierarchies for Ray Tracing | Eurographics'2021 - YouTube](https://www.youtube.com/watch?v=4tO0KTngVAw)
* Wide BVH
* [Getting rid of packets - Efficient SIMD single-ray traversal using multi-branching BVHs](https://ieeexplore.ieee.org/document/4634620) (2008)
* [Multi bounding volume hierarchies](https://ieeexplore.ieee.org/abstract/document/4634618) (2008)
* [Shallow Bounding Volume Hierarchies for Fast SIMD Ray Tracing of Incoherent Rays](https://www.uni-ulm.de/fileadmin/website_uni_ulm/iui.inst.100/institut/Papers/QBVH.pdf) (2008)
* [Efficient Incoherent Ray Traversal on GPUs Through Compressed Wide BVHs](https://research.nvidia.com/sites/default/files/publications/ylitie2017hpg-paper.pdf) (2017)
* [Compressed-leaf Bounding Volume Hierarchies](https://dl.acm.org/doi/pdf/10.1145/3231578.3231581) (2018)
* [Wide BVH Traversal with a Short Stack](https://www.intel.com/content/dam/develop/external/us/en/documents/wide-bvh-traversal-with-a-short-stack-837099.pdf) (2019)
* Stackless Traversal
* [Restart Trail for Stackless BVH Traversal](https://dl.acm.org/doi/pdf/10.5555/1921479.1921496) (2010)
* [Efficient Stack-less BVH Traversal for Ray Tracing](https://dcgi.fel.cvut.cz/home/havran/ARTICLES/sccg2011.pdf) (2013)
* [Efficient Stackless Hierarchy Traversal on GPUs with Backtracking in Constant Time](https://diglib.eg.org/bitstream/handle/10.2312/hpg20161191/041-050.pdf) (2016)
* Reduced Precision / Bandwidth-Efficient
* [Cache-Efficient Layouts of Bounding Volume Hierarchies](http://gamma.cs.unc.edu/COLBVH/CELBVH.pdf) (2006)
* [Towards Hardware Ray Tracing using Fixed Point Arithmetic](https://ieeexplore.ieee.org/document/4342599?reload=true&tp=&arnumber=4342599&contentType=Conference%20Publications&sortType%3Dasc_p_Sequence%26filter%3DAND(p_IS_Number:4342574)=) (2007)
* [RACBVHs: Random-Accessible Compressed Bounding Volume Hierarchies](https://ieeexplore.ieee.org/document/5128906/) (2009)
* [Ordered depth-first layouts for ray tracing](https://dl.acm.org/doi/10.1145/1899950.1900005) (2010)
* [Memory Efficient Ray Tracing with Hierarchical Mesh Quantization](https://dl.acm.org/doi/pdf/10.5555/1839214.1839242) (2010)
* [Reduced Precision for Hardware Ray Tracing in GPUs](https://diglib.eg.org/handle/10.2312/hpg.20141091.029-040) (2014)
* [A mobile ray tracing engine with hybrid number representations](https://dl.acm.org/doi/10.1145/2818427.2818446) (2015)
> 17-bit fixed-point, 13-bit floating-point
* [Watertight Ray Traversal with Reduced Precision](https://diglib.eg.org/handle/10.2312/hpg20161190) (2016)
> bounding plane sharing, incremental traversal
* [Bandwidth-Efficient BVH Layout for Incremental Hardware Traversal](https://diglib.eg.org/handle/10.2312/hpg20161192) (2016)
> reduced address space, novel bvh layout to fit cache line
* [Dual-precision fixed-point arithmetic for low-power ray-triangle intersections](https://www.sciencedirect.com/science/article/pii/S009784932030008X) (2020)
* [Intersection Prediction for Accelerated GPU Ray Tracing](https://people.ece.ubc.ca/~aamodt/publications/papers/liu.micro2021.pdf) (2021)
> any-hit predictor, ray hash, warp repacking, ray tracing unit, GPGPU-Sim
### Monte Carlo Denoising
* [deep learning-based Monte Carlo denoising](https://link.springer.com/content/pdf/10.1007/s41095-021-0209-9.pdf) (2020)
* Kernel Prediction
* [Kernel-Predicting Convolutional Networks for Denoising Monte Carlo Renderings](https://la.disneyresearch.com/wp-content/uploads/Kernel-Predicting-Convolutional-Networks-for-Denoising-Monte-Carlo-Renderings-Paper33.pdf) (2017)
* [Denoising with Kernel Prediction and Asymmetric Loss Functions](https://dl.acm.org/doi/pdf/10.1145/3197517.3201388) (2018)
* [Machine-learning denoising in feature film production | ACM SIGGRAPH 2019 Talks](https://dl.acm.org/doi/10.1145/3306307.3328150) (2019)
* [Sample-based Monte Carlo Denoising using a Kernel-Splatting Network](https://groups.csail.mit.edu/graphics/rendernet/data/mc_denoising.pdf) (2019)
### CGRA
* Survey
* [A Survey of Coarse-Grained Reconfigurable Architecture and Design: Taxonomy, Challenges, and Applications](https://dl.acm.org/doi/pdf/10.1145/3357375) (2019)
* [A Survey on Coarse-Grained Reconfigurable Architectures From a Performance Perspective](https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9149601) (2020)
* [Twenty Years of Automated Methods for Mapping Applications on CGRA](https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9835368) (2022)
### Heterogeneous Communication
* [Out-of-core Data Management for Path Tracing on Hybrid Resources](https://diglib.eg.org/bitstream/handle/10.2312/CGF.v28i2pp385-396/v28i2pp385-396.pdf?sequence=1&isAllowed=y) (2009)
* [Combinatorial Bidirectional Path-Tracing for Efficient Hybrid CPU/GPU Rendering](https://onlinelibrary.wiley.com/doi/full/10.1111/j.1467-8659.2011.01863.x) (2011)
## previous Ray Tracing Unit
### Resources
[Lucy's github](https://github.com/ubc-aamodt-group/ray-intersection-predictor)
[Lucy's paper](https://dl.acm.org/doi/pdf/10.1145/3466752.3480097)
[GPU Wattch manual](http://gpgpu-sim.org/gpuwattch/#4_Using_the_Power_Model)
### Notes
[bvh](https://hackmd.io/@leonhsi/SytOTQwM5/)
[RT unit notes](https://hackmd.io/@leonhsi/Hkh5ZYCTF)
[BVH ideas & algorithms](https://hackmd.io/5BZnApaUT2uDdUmoGa1oeg?view)
[Ray Tracer Notes](/YO3Gn8M4T4W67GBml3XldA)
### Topics
* A clear picture of CGRA's architecture and usage
* [凱雋的筆記](https://hackmd.io/5e12xCClQJ-A2-JiVmKDKA)
* [Interactive Ray Tracing Using a SIMD Reconfigurable Architecture](https://ieeexplore.ieee.org/document/1180755)
* [TRaX: A Multicore Hardware Architecture for Real-Time Ray Tracing](https://www.researchgate.net/publication/224078501_TRaX_A_Multicore_Hardware_Architecture_for_Real-Time_Ray_Tracing)
* [Implementation of Floating-Point Operations for 3D Graphics on a Coarse-Grained Reconfigurable Architecture](https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=4545442)
* Router architecture and algorithm
* Gemm5 ACC architecture
* Applications of ray tracing
* Ambient Occlusion
* router paper:
* [Cache-Conscious Wavefront Scheduling](https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6493609)
### Ideas
### Goals
## Weekly Progress
* [06/23/2022 - 06/30/2022](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/B1RDvbd99/edit)
* [05/12/2022 - 05/19/2022](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/Hy-SVQmvq)
* [04/28/2022 - 05/05/2022](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/r1vwdReL5/edit)
* [04/21/2022 - 04/28/2022](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/HJ8TStPr5)
* [03/24/2022 - 03/31/2022](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/BkRQuubm9)
* [03/17/2022 - 03/23/2022](https://hackmd.io/KlDCqKzORD-L_TIU3OsbxQ?view)
* [02/17/2022 - 02/24/2022](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/ryR5yqjyq)
* [01/24/2022 - 02/17/2022](https://hackmd.io/@nx1bTzFpQvaKD_yxYRmBaQ/r1BR5B5kc)