The only parallelization that rosetta supports is MPI. For either 3.0 or 3.1, you can add “extras=mpi” to the command line to get the MPI build.
With the exception of the OptE code (used to calculate optimal weight sets), rosetta only parallelizes at the job distributor level. In other words, running rosetta on two processors in MPI will start two completely independent trajectories, one on each processor (with two database copies in memory). This is not any more efficient than running one copy of rosetta on each processor in terms of computational time, the only benefits are A) it makes it easier to organize the output and many large academic clusters require parallelized code even when it’s only pseudoparallel. I use the MPI build all the time myself – I’m just warning you it’s not internally parallelized, it’s just a gloss.