3 Replies Latest reply on Jun 30, 2008 8:57 PM by Ceq

    CPU emulation

    jski
      CPU emulation

      When I run Brook+ on a 32-bit Athlon box with no GPU support (no Radeon 3870, just an older NVidai card), I get:

      Xlib:  extension "XFree86-DRI" missing on display ":0.0".
      Xlib:  extension "XFree86-DRI" missing on display ":0.0".
      Segment fault

      BRT_RUNTIMEtion is underfined.

      Shouldn't the "CPU backend which allows you to run completely on the CPU for easier debugging" (Michael Chu) work?

      ---jski

      BTW, the readme_install.txt for the 32-bit install appears to be a copy of the readme_install.txt for 64-bit install.  That should be changed.

       

        • CPU emulation
          Ceq
          You said BRT_RUNTIME was undefined, to enable software mode just set the environment variable BRT_RUNTIME = CPU
          However as far as I know, debugging kernels isn't easier to debug in this mode, they are much like a black box.
            • CPU emulation
              jski

              Thanks, "BRT_RUNTIME = CPU" did the job!

              But that raises a few questions:

              • What are the differences between running in native mode vs. CPU-emulation mode (besides performance)?
              • Is CPU emulation actually better for development/debugging?
              • What are its limitations?

              ---jski

            • CPU emulation
              Ceq
              Well, software mode is useful if you don't have the right GPU to run Brook+, so you can develop and test software without owning the hardware (in this aspect this it is better than nVidia's CUDA).
              I think it is also supposed to be the 'reference rendering': there are a few cases where the results on GPU may differ because Brook+ is still under development, however they will be eventually fixed.
              Other than speed there aren't any limitations, debugging kernels could become quite difficult in both, I think there isn't any specific tool for debugging running GPU code.