We will begin a brief overview of supercomputing with a focus on its use for scientific computing such as supernova simulations, nanoscale materials modeling, and climate modeling. From there, we will look at some specific examples and results from performance modeling and analysis of some real parallel codes that were run on the supercomputers at NERSC (Berkeley Lab) and elsewhere.