-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Running RapidCFD on openFoam9 #96
Comments
Hi, |
Hi, -ldriftFluxTransportModels -ldriftFluxRelativeVelocityModels -lfiniteVolume -lmeshTools -lsampling -lfvOptions -lincompressibleTransportModels -lturbulenceModels -lcompressibleTurbulenceModels -lOpenFOAM -ldl -lm -o /opt/RapidCFD-dev/platforms/linux64NvccDPOpt/bin/driftFluxFoam Why am I facing this error? any possible solutions that I can try? Kindly Help me with this error! Thanks In advance! |
Hello,
Thanks for this info. Hopefully we can figure this out together. |
Hi,
Thanks for helping me with this! |
Firstly, you can generally ignore RapidCFD compilation warnings as long as the compiled code works. If the solver you want to use was already compiled and works, you'll have to decide how much effort you put into figuring out how to compile driftFluxFoam, particularly if you do not plan to use driftFluxFoam. Hmm. I have used CUDA 11.4 and 11.5 and I found it possible to compile driftFluxFoam. There were other issues with CUDA > 11.1 that I described in Issue #92. Just be sure that when you change between CUDA 11.1 and 11.4 that you recompile. On my laptop I have several versions of CUDA installed in /usr/local/cuda-11.1 ... /usr/local/cuda-11.2, and so on... And then I have multiple versions of RapidCFD that are compiled for each version of CUDA with entirely separate directories. But if you are working in just one directory you should completely recompile RapidCFD if you change the CUDA version you are working with. So, in sum,
Thanks for checking these points. |
Hi, So, I have a small doubt in running the tutorial example now! now lets say I want to run icoFoam using rapidCFD solver! but rapidCFD-dev doesn't have the tutorial package in it right! so what are the ways I can run the icoFoam tutorial example using rapidCFD solver. (FYI: openFoam and rapidCFD-dev are both in /opt directory in my system). The question I asked may be dumb but I am new to this, so I am hoping that you could help! Thanks in advance! |
Hi, I hope this helps you get started! |
Hi TonkomoLLC, listed above is the rapidCFD compilation log, actually after going through the compilation i found I am facing errors at many points... The first error was missing of mpi.h which i resolved now! But after going through the log you can find this error /opt/RapidCFD-dev/src/OpenFOAM/lnInclude/PointHit.H(89): error: identifier "Foam::Vector ::zero" is undefined in device code
Thanks for checking the rapidCFD log! |
Hello, Please see #92. Issues 1 & 4. PointHit.H In PointHit.H, replace line 89:
with
Issues 2 & 3. Hopefully fixing PointHit.H as above will also fix cellClassification and the link errors Hopefully this quick fix will solve your immediate problems. Best regards, Eric |
Hi,
which I reffered issue #92 and checked the make file in src dynamicMesh and the "dynamicRefineFvMesh/dynamicRefineFvMesh.C" line was already commented. But also I was getting the above error. So, I commented other line in the file so after This I was not facing the above error. Is this the right way to do it?
and
This errors occures during the compilation of dynamicFvMesh file alone. Thanks for checking all points!! |
Oh you're right. #92 does not stop the error you found with Instead of editing
#92 has been updated with this advice. You will find that any library or solver that relies directly or indirectly on libdynamicMesh will fail. To completely avoid these problems, you should downgrade to CUDA 11.1. If you can live without dynamicMesh then CUDA 11.5 works for me. With respect to your libOpenFOAM.so and libfvOptions.so issues, please completely clean your RapidCFD installation (e.g., from the /opt/RapidCFD-dev directory, type I hope you find this advice helpful. Thanks and best regards. |
Hi TonKomoLLC, I have made most of the changes that you suggested and I am now able to compile the RapidCFD-Dev completely without any errors. Thanks to you! Now I am trying to run the RapidCFD-Tests and I am able to run cavity using icoFoam,
please clarify these points! Thanks in Advance! |
Hi, Glad you found a workaround for compilation with CUDA 11.4, and that a solution is to compile with commenting out just the multiSolidBodyMotionFvMesh.C file in the dynamicFvMesh Make/files . To your questions.
Recently in #97, @jiaqiwang969 reported ~128x speedup over a single core with a more modern A100 GPU. To reiterate what I quoted above, to see any significant speedup, you need to run a very large case, likely >> 1 million cells but your experience can vary.
Hope this is helpful. Good luck. |
Hi TonKomo, Thank you so much for your so fast and detailed reply all the time you gave.
So, If I can get the Data file like cavity for both dambreak and sloshingTank it would very helpful! Thanks in advance! |
Hi, I don't have the current ability to send the files you need. I think you are asking for polyMesh files for other examples? However, I am not sure because you asked for the data file for sloshing tank but I think the case includes polyMesh? The polyMesh for dambreak is very large and I would prefer that you prepare the polymesh for this case rather than my storing it on GitHub Please prepare meshes cases using blockMesh found in OpenFOAM for CPU, e.g., 2.3.x. You may not be able to use newer versions of OpenFOAM like v9 and newer because the file header format has changed. To question 6 - If you have a new GPU that has a different compute capability then you need to recompile RapidCFD from scratch. Sorry if I did not fully help you but I hope you can figure this out. |
Hi,
Thank you! |
Hello, I used a GeForce GTX 980M GPU for the DamBreak test, as described in the README. It has been a long time since I ran this test, but according to my notes in the referenced README file, this high resolution damBreak case requires more than 5B of GPU RAM. I am not sure how you ran this particular damBreak case with a 2GB GPU? How many cells are in your damBreak case (e.g., as reported by checkMesh)? If you are comparing a single GT 730 (from 2014) with a modern CPU with 8+ cores (e.g., from 2022) then it will be tough to see a speed-up effect, I think. That is, if you ran a case with a 2014-era single GPU vs. a 2022-era 8-core CPU (and the case is decomposed for 8 CPU cores), I would be surprised if you see a speed-up effect for the GPU. But since I did not run this test I need to be clear that this is only my speculation. Also, to be clear, when I am comparing speedup per core, not speedup per CPU (which can contain main cores). I hope this helps and you find the speedup you are expecting. It is there, especially for large cases and it is more pronounced when you compare GPU's and CPU's from the same time period. Best regards, |
Hi
I ran openFoam9 samples on CPU and everything is working fine. I want to run RapidCFD.
I am using ubuntu 18.04, Cuda 11.4 and openFoam9. Is it not possible to run RapidCFD with this specs or do I need to go with older versions on openFoam, Cuda and Ubuntu?
Please share the procedure to install rapidCFD with compatible versions! Also please share how to run RapidCFD and How to compile it!
Thanks in Advance!
The text was updated successfully, but these errors were encountered: