-
Notifications
You must be signed in to change notification settings - Fork 146
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
BEAMnrc fails to compile more than 15 CMs #734
Comments
Hello, I believe this is a duplicate of this question: https://www.reddit.com/r/EGSnrc/comments/o00bsu/error_compiling_beamnrc_i_have_tried_to_build/ Could you follow up there? I don't believe this is a bug with the code, but likely an installation or configuration issue. |
After some further investigation, I can reproduce the issue. See the link to the subreddit for more details, but essentially adding 15+ CMs to a BEAMnrc accelerator results in compilation warnings like this:
even though in the macros I have the maximum number of CMs set to 25. If you look in the .F file, there are corrupted lines:
@blakewalters any ideas about this? Here is an example .module file:
|
Hi!, Thanks for your answer, by lowering the number of modular components the error was solved. |
@rtownson, @camilabustos1: I've found this upper limit on the no. of CMs is CM-dependent. For example, change one of the PYRAMIDS in the above example to SLABS, and the accelerator will compile. In my experience, this has to do with the size of the MORTRAN macros associated with a particular CM. The larger the macros, the fewer the CMs you'll be able to concatenate and successfully compile. For the above example, replace PYRAMIDS with SYNCHDMLC and you won't even get 15 CMs to compile. In other words, this is an issue with the Mortran compiler and addressing it may require significant revamping/rationalization of the coding for a number of CMs. Moreover, it means that 15 CMs is not a hard limit. We can probably fix PYRAMIDS so that > 15 will compile by "subdividing" some macros, increasing the no. of coding blocks while decreasing the size, but this is a general issue that will require some time to address and likely only on a CM-by-CM basis. |
I am guessing then that there is a memory, stack or file size limit in the Mortran compiler. The Mortran compiler code is very obscure. I will check if by any chance I can find where that limit is set, anyone please feel free to hunt for it as well! |
Hi, I am having an issue in compiling in BEAMnrc code and i get this error
The text was updated successfully, but these errors were encountered: