Skip to content

Latest commit

 

History

History
37 lines (33 loc) · 2 KB

README.md

File metadata and controls

37 lines (33 loc) · 2 KB

Raytracing in CUDA C++

Introduction

Visualime

This project's visualization is not in the form of writing a "hard to see" .ppm file, instead, it's based on my previous project in visualime, which is a simple 2D visualization rendering engine, I borrow its capability of directly popping up an opengl window given a CUDA&OpenGL Interoperability memory(which is visualime::opengl_wrapper::cuda_opengl_wrapper). So, that's pretty neat, if you haven't checked out visualime, you should definitely check it out.

Raytracing in C++

You can find my previous project on raytracing in C++ in this repository.

Raytracing in CUDA C++

Work progress:

  • visualization based on visualime
  • basic rendering complete (naive raytracing)
  • accumulative ray color

TODOs:

  • speed up by Importance Sampling
  • ...

Nvidia Nsight Compute Analysis

Recently I just found out that Nvidia Nsight Compute is a perfect tool for analyzing CUDA code. So in this project, I just simply use it to analyze the instruction level fp32/fp64 arithmetic call. Also, I tried out the System Trace functionality, though I currently didn't work it out very nicely.

Demonstration

output_an_image basic_rendering_in_cuda

References