Last night, I was trying to get a Lux tutorial running. This was the order in the tutorial:
using Lux, ComponentArrays, SciMLSensitivity, LuxAMDGPU, LuxCUDA,
Optimisers, OrdinaryDiffEq, Random, Statistics, Zygote, OneHotArrays, InteractiveUtils
Some I had. Others needed to be installed, which seemed to have worked fine.
However, when trying to use the packages, I kept getting a message to restart Julia because one of the packages was not precompiled correctly (ComponentArrays, or some ComponentArraysExt extension). Then it would repeat the precompilation attempt and give the same warning. Sorry I didn’t save the logs.
I found Zygote had to come first, then ComponentArrays, then Lux:
using Zygote, ComponentArrays, Lux, SciMLSensitivity, Optimisers,
OrdinaryDiffEq, Random, Statistics, OneHotArrays, InteractiveUtils
I moved the AMDGPU/CUDA packages out for another reason, but they didn’t seem to play a role here. Eventually I got the idea to put ComponentArrays before Lux and this fixed one of the warnings. Then I put Zygote before that and it fixed the last one.
Is this the expected behavior?