I’ve implemented the Craig-Bampton method for model reduction at https://github.com/JuliaFEM/ModelReduction.jl/blob/master/src/craig_bampton.jl. Now I would like to perform the reduction on very large models (at least 1 M x 1 M sized matrices), but some of the matrix operations (such as calculating a huge matrix inversion or instead perform huge matrix chain multiplication) would need an enormous amount of computational resources.

Would anyone have an idea how this method is implemented in commercial softwares? Is Julia able to operate on matrices at this scale? If it is, then what would be the trick to perform the matrix operations without getting an OutOfMemoryError or without taking a huge amount of time? Most implementations of this method are for academic use only and they only work on very small examples.