NVIDIA / OptiX_Apps

Advanced Samples for the NVIDIA OptiX 7 Ray Tracing SDK
Other
283 stars 48 forks source link

nvlink_shared and rtigo returing parser error in Ubuntu #13

Closed bipul-mohanto closed 2 years ago

bipul-mohanto commented 2 years ago

System Overview:

OS: Ubuntu 22.04
cmake version 3.22.1
GNU Make 4.3
NVIDIA-SMI 515.65.01 
Driver Version: 515.65.01 
CUDA Version: 11.7
Build cuda_11.7.r11.7/compiler.31294372_0
GPU: NVIDIA RTX 3090
gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0

Problem

Process finished with exit code 132 (interrupted by signal 4: SIGILL)

#### Release Mode

```ruby
/home/highvive1/Desktop/OptiX_Apps/cmake-build-release/bin/rtigo3
ERROR: Parser::load() failed to open file. Additional Info on this error: file name = /home/highvive1/Desktop/OptiX_Apps/apps/rtigo3/src/Parser.cpp  Line: 56
ERROR: loadSystemDescription() failed in loadString()Additional Info on this error: file name = /home/highvive1/Desktop/OptiX_Apps/apps/rtigo3/src/Application.cpp   Line: 1030
ERROR: Application() failed to load system description file Additional Info on this error: file name = /home/highvive1/Desktop/OptiX_Apps/apps/rtigo3/src/Application.cpp  Line: 128
ERROR: Application() failed to initialize successfully.Additional Info on this error: file name = /home/highvive1/Desktop/OptiX_Apps/apps/rtigo3/src/main.cpp  Line: 73

Process finished with exit code 251

I guess the problem is in bool Parser::load(std::string const& filename) in Parser.cpp, but could not figure out what it is.

bipul-mohanto commented 2 years ago

P.S. I am trying to run your latest code, on OptiX 7.5. The last updated version also had the same problem for these two samples. All other sample codes are running fine. I have copied the data files in bin folder as well.

droettger commented 2 years ago

Application() failed to load system description file

And what were the command lines with which you started these two executables?

/home/highvive1/Desktop/OptiX_Apps/cmake-build-release/bin/rtigo3

Looks like you just started the executable without any command line options.

Both applications need two input files for the system description and scene description specified on the command line. That is explained inside the Running section of the README.md. https://github.com/NVIDIA/OptiX_Apps/blob/master/README.md

droettger commented 2 years ago

BTW, all examples print a usage message with either of the command line options ? or help or --help.

bipul-mohanto commented 2 years ago

I overlooked that instruction. It is working now.

droettger commented 2 years ago

I can manually set the working directory like this, but that is not working:

You mean you set the correct working directory with the executable and the application is not resolving the relative paths to that? Or do you mean you get the same errors as above again?

If the latter, looking at your screenshot, of course you must also provide the required command line arguments inside the field Program arguments to start the executable with that, like one of the command line options from the README: -s system_rtigo3_cornell_box.txt -d scene_rtigo3_cornell_box.txt

bipul-mohanto commented 2 years ago

I missed the Program Arguments, it is working fine (both from the terminal and IDE). Thanks a lot. Just one last query, the benchmark mode is not working, crashing with devIL ERROR: screenshot() failed with IL error 1290.

-m 1 -o -s system_rtigo3_single_gpu.txt -d scene_rtigo3_cornell_box.txt

droettger commented 2 years ago

That's because the folder into which the screenshots are written must exist. The folder name is user defined by the system option prefixScreenshot.

The README explains this when describing the keyboard input: P = Saves the current tonemapped output buffer to a new PNG file. (Destination folder must exist! Check the prefixScreenshot option inside the system text files.)

And the system description files describe this again here: https://github.com/NVIDIA/OptiX_Apps/blob/master/data/system_rtigo3_cornell_box.txt#L126

You need to create that folder or change the prefixScreenshot option to your liking to make it work.

Please, if anything is not working immediately out of the box, read at least the documentation. I wrote them for a reason.