Computer simulations of oil and gas reservoirs require the construction and solution of large, sparse linear systems with millions or even tens of millions of unknowns at each time step or Newton iteration. For efficiency, these tasks are often parallelized. While the parallel construction of the Jacobian matrix and right hand side vectors mainly depends on the load balance between the processors, the parallel solution of the resulting linear system is sensitive to the way the system is partitioned amongst processors during the solution process. We evaluate several different strategies to parallelize the solution of the linear system on both shared and distributed memory architectures, using a strategy to optimize both the load balance of processors and the convergence of the linear solver. We discuss partitioning strategies based on multi-level graph partitioning using an approach for optimal vertex/edge weighting for reservoir simulation models based on unstructured, 2½D finite volume spatial discretization. We present parallel scalability and timing results obtained from field studies, using ExxonMobil's proprietary reservoir simulator, EMpower.