I wrote a Matlab finite-differnece code that solves the 3-D Laplace Equation for a large, complex geometry. Currently, I am using Matlab's preconditioned conjugate gradient gradient function -- which runs on one core only -- to iteratively solve the system of equations. The code takes several hours to solve with 64 million degrees of freedom. Eventually, I would like to increase the size of my domain, so a parallel implementation of the solver would be ideal, possibly one that runs on a cluster. Does anyone know of a free parallelized conjugate gradient code (written in any language) that I can wrap up into my Matlab code?