Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

How to compile WRF with arm performance libraries?


New member

I'm trying to test/use WRF with on our aarch64 architecture system. I wanted to add the arm performance libraries and they are installed in our system. I'm confused whether I can just add the library flags to the wrf.exe execution commandor this will need a recompile.

(1) According to a blog post found here (in the comments), Do I just need add this flag -L/opt/arm/armpl-22.1.0_AArch64_RHEL-7_gcc_aarch64-linux/lib -lamath to the wrf.exe command? I haven't yet tested this out.

(2) Or do I need recompile WRF on the system and include "-L/opt/arm/armpl-22.1.0_AArch64_RHEL-7_gcc_aarch64-linux/lib -lamath" in the configure script? I think the script doesn't accept flags so I can manually edit it. The change I believe would be in the line with" LDFLAGS_LOCAL = ...". It is currently empty.

At first I thought I just need PATH and LD_LIBRARY_PATH to the armpl bin and lib locations but it seems it is not enough. I'm just needing to an em_real case so could someone point me to whether I can just point to already compiled wrf executable with a flag or do i need to recompile it and how? Lastly, how can one verify the armpl libraries are being used when running an example model.
Anytime you are planning to use new libraries or new compilers, or even new versions of those, you will need to recompile the code if you want to utilize them. Make sure to clean the code (./clean -a) and to reconfigure before recompiling.