In case anyone stumbles upon this thread, you may want to check out the following combination of packages:
- SparseConnectivityTracer.jl for Hessian sparsity detection (faster than Symbolics.jl)
- SparseMatrixColorings.jl for coloring algorithms and decompression
- DifferentiationInterface.jl for compressed differentiation, with an interface that integrates the other two thanks to ADTypes.jl