Painful compile time

I have developed a big simulation system with Python+PyQt, and is changing some time-consuming tasks to Julia as the plugins. ZMQ is used for the data exchange between Python and Julia.

The system developed using Python runs quite smoothly, however, the start time of the Julia code is quite long. The Julia programs are still under developing and need to restart Julia code quite often for the debugging purpose. It takes a lot of time on waiting for the start of Julia code after any change of the code. The waiting experience is even worse than the compile time of C++ and Java (They are not so slow). How can I improve the coding experience?

The start time of some code is as followings.

Windows 7; SSD disk; Julia 0.6.4

2 Likes

The standard workaround for long start-up times is Revise.jl. You can also include frequently-used (but infrequently-modified) packages in your system image: https://docs.julialang.org/en/stable/devdocs/sysimg/

2 Likes

The code is not put in a Module. Moreover, the code use parallel calculation and ZMQ, and I have to restart the whole code to make it work correctly. The code is edited and run using Juno. I am not sure if it is suitable to use Revise.jl. I will have a try. @stillyslalom Thanks!

PackageCompiler might help. You might have to put some of the code in module.

I have tried Revise.jl, which avoids a lot of unnecessary restart of Julia. Maybe I can try PackageCompiler when the program is tested carefully. Thank you so much for your advice!