CSIM5 is written in the Fortran 90 programming language in fixed source form. It is parallelized internally by grid decomposition using MPI (Message Passing Interface). There is an external layer of parallelization, also using MPI, that allows message passing between the ice model and the coupler.