cholla-hydro / cholla

A GPU-based hydro code
https://github.com/cholla-hydro/cholla/wiki
MIT License
60 stars 32 forks source link

Gpu particle feedback #199

Closed ojwg closed 1 year ago

ojwg commented 1 year ago

supernova feedback code

alwinm commented 1 year ago

Some checks are failing because we need to install hipRAND (I believe Orlando is already working on the other errors that arise).

I believe this command (really, a series of commands) installs hipRAND (tested using Docker):

    git clone https://github.com/ROCmSoftwarePlatform/rocRAND.git && \
    cd rocRAND; mkdir build; cd build && \
    git submodule update --init && \
    cmake -DCMAKE_CXX_COMPILER=hipcc ../. && \
    make -j2 && \
    make install

but this might be a good time to switch over to Docker containers since building hipRAND takes a long time to build and I cannot find a pre-compiled binary. I've uploaded the necessary hip docker container already: alwinm/cholla:hip_v0.1

Depending on how we want to move forward, I could push my container-based version of build_tests.yml to gpu_particle_feedback, or to dev

evaneschneider commented 1 year ago

@alwinm If you have a docker container ready, I think this is a good time to deploy it. Why don't you go ahead and submit it directly to dev, and that way this PR will pass the build tests self-consistently.

bcaddy commented 1 year ago

I also agree with a couple of caveats

  1. Give me the afternoon to figure out a more elegant way to install hipRAND, I think it comes with their apt repos but I need to check
  2. We need a way to know which versions of everything a particular action runs with. I think this is already in you script but some simple command --version ought to do it
  3. We need a simple way of updating the container for new versions of the various tools. A script would be perfect, even if we need to run it manually; we can discuss automating it later.
bcaddy commented 1 year ago

I checked. You should be able to install rocrand (which should include hiprand) the same way that rocfft is installed. Make sure to include the version you want so that you get the correct version, by default you get the latest version but we want the version that matches the other ROCm stuff.