ci1xgk / Fellowship_Webpage

Smart forecasting: joined-up flood forecasting (FF) infrastructure with uncertainties
https://gow.epsrc.ukri.org/NGBOViewGrant.aspx?GrantRef=EP/R007349/1
17 stars 11 forks source link

CUDA compiling problem #11

Open WaitForIt55 opened 1 year ago

WaitForIt55 commented 1 year ago

Hello,

we want to use the LISFLOOD-FP 8.1 model for a city wide urban flood analysis. Due to the city wide scale we would prefer a GPU simulation. Therefore we try to compile the LISFLOOD 8.1 version with the CUDA 11.8 version unsuccessfully. We try this with different CUDA version for both model version on a windows and a linux system several times with the same result. Without CUDA the compiling process was done successfully using your description on zenodo. Can you recomment a CUDA version for the compiling of LISFLOOD-FP 8.1 or have you a short decription about settings for a CUDA compiling?

Thank you for helping

PaulRGit commented 1 year ago

Hi, I have encountered the same problem, with LISFLOOD-FP8.1. I have tried NVIDIA Cuda Toolkit 12.0 and 12.1 and both wouldn't work. I solved it by removing set(CMAKE_CUDA_FLAGS "-gencode=arch=compute_37,code=sm_37 -gencode=arch=compute_37,code=compute_37") in config.default.cmake on Line 9 Wouldnt the explanation be that 'compute_37' is deprecated on latest CUDA Toolkits? Paul

EDIT It worked with by changing sm architecture from 37 to 75 which corresponds to the compute compatibility of my GPU hardware (https://developer.nvidia.com/cuda-gpus)

msonowal commented 1 year ago

@PaulRGit what is the cuda versioon and GPU you used?

PaulRGit commented 1 year ago

Hi msonowal, Thanks for your reply. I have an NVIDIA Quadro RTX 4000, which compute capability is 7.5. Therefore I have used Cuda toolkit 10.2 to match it. I couldn't compile GPU solvers anyway, though I succeeded with CPU solvers. With cuda, I am encountering an issue at the last steps of the compilation due to a too long command line in Visual Studio. I may give some more details next week if I get back into it. Do you ave any idea how I can overcome the issue? Paul

thesadman commented 7 months ago

Hi msonowal, Thanks for your reply. I have an NVIDIA Quadro RTX 4000, which compute capability is 7.5. Therefore I have used Cuda toolkit 10.2 to match it. I couldn't compile GPU solvers anyway, though I succeeded with CPU solvers. With cuda, I am encountering an issue at the last steps of the compilation due to a too long command line in Visual Studio. I may give some more details next week if I get back into it. Do you ave any idea how I can overcome the issue? Paul

Hi @PaulRGit have you sorted the 'too long command line' issue? I also cannot compile the lisfloodfp 8.1 codes with GPU.

PaulRGit commented 7 months ago

Hi @thesadman, no I couldn't. I have had no real reply from the dev so far.

thesadman commented 7 months ago

Hi @thesadman, no I couldn't. I have had no real reply from the dev so far.

Thanks for your prompt reply. I recently downloaded the codes and cannot compile the 8.1 version on my PC, while the 8.0 version can be compiled but cannot work well with GPU parallel computing when setting point boundary conditions. Gush,

Swagata1998 commented 6 months ago

Hi all, I am having the same issue as CUDA is no compiling with lisflood-fp build. Now my runtime is very slow and taking 2 hours at least for a simulation time of 1800 seconds. I need help urgently since I have an internship to submit and I am stuck with this. Also, I am having trouble figuring out some things:

  1. how to you understand the run time for your study area?
  2. I have monthly rainfall data (.csv), how do I translate into that rainfall in seconds??
  3. lisflood.exe makes many wd, wd1x, wd1y files for each second (if I am not wrong). How do I visualize them?

Please help if possible, since I am quite stuck in this matter..

Cir-cles commented 3 months ago

Hi all @msonowal @thesadman @WaitForIt55 @PaulRGit @Swagata1998 . It's really a challenge to compile the code whith cuda. I tried different combinations of cmake versions and cuda versions. But they didn't work on windows. I also recongnised the same problem on compute_37, as described by @PaulRGit . But other problems still remain, such as can't find icl.exe, etc. I successfully (but not sure) compiled the code on linux with NVIDIA 3080, cuda 11.6. Hundreds of warnings occurred during the compiling process, but eventually the compilation was done. I tried some testing files and they successfully produce results. But I can't verify the reliability of the results because in one case, it generated elev files with different number at different seconds, while in another case, the results were all the same as different seconds.

Cir-cles commented 3 months ago

I wonder whether there is any progress in compiling the code. I've been working recently on simulating flooding in watersheds through rainfall inputs. I have yet to find a more suitable software than this one. But unfortunately, I haven't compiled it successfully.