Are there any matrix reordering algorithms available in the MKL API, such as Reverse-Cuthill-McKee or Gibbs-Poole-Stockmeyer? I can't seem to find any references one way or the other.
such reodering algorithms are used internally in Direct Solver (Pardiso ).MKL doesn't provide the API for that functionality.
Note that the dss_reorder routine can write back the permutation it computes via the MKL_DSS_GET_ORDER option. The size of the buffer you'd need to supply is, of course, the same as the dimension of the equation you're solving.
For more complete information about compiler optimizations, see our Optimization Notice.