Julia performance tips
Use the following tools to develop a fast CFD code in Julia
- ProfileView.jl to ensure that there are no type instabilities
- TimeOutputs.jl to ensure that there are no unexpected memory allocations
These tools will give you hints to the location of your problem in your code. After that, you should aim to construct a minimal working example (MWE). This video has an excellent strategy on creating an MWE in Julia https://www.youtube.com/watch?v=g-iOOhh2U6o. Once you have an MWE, you will very often be able to resolve the problem with your own intuition and maybe some hints through the official docs. If you aren’t able to, you will find that the Julia community is very glad to help. You can post in Julialang discourse, Slack or Zulip.