Parallel kinetic particle-in-cell code simulation of astrophysical plasmas affecting magnetic reconnection (non-reviewed)

An important goal for astrophysical researchers is to develop a better analytical and empirical understanding of what commonly called "space weather". This term refers to the electromagnetic conditions on the sun, solar wind, thermosphere, ionosphere, and magnetosphere. A better understanding of the space weather phenomena is needed to insure the safety of human kind and electronic and electric systems on earth and in space during periods of high solar activity. To adequately study space weather requires the use of advanced computational science methodologies to model and simulate the electromagnetic behavior of space weather phenomena in various regions of its continuum. The results of these simulations can then be compared to empirical data collected from satellite observations. To minimize the amount of computation required to effectively simulate the phenomena and to facilitate parallel processing, Particle-in- Cell (PIC), techniques have often been employed. In these simulations, the medium under consideration is described by a large number of "macroparticles", where each macroparticle is used to model the combined effects of a certain number of electrons or ions. All macroparticles must reside within a simulation space, which has finite geometric boundaries along each physical dimension. The simulation space is further subdivided into regions of space, called as cells, which can be one, two, or three- dimensional. The simulation can employ either a subset of Maxwell's equations or a full electromagnetic encoding. The trade-off is that the computational resources (both memory and computing time) greatly increase as the dimension of the simulation space increases and the computational set governing equations becomes more extensive. The focus of this paper is to highlight the parallel processing aspects of applying PIC techniques to the general problem of Magnetic Reconnection (MR), which is one of the major open problems in the area of space weather research. A better understanding of this phenomenon is applicable to astrophysical plasmas such as solar flares, Coronal Mass Ejections (CMEs), solar jets, and geomagnetic sub-storms. Such phenomenon is powered by the conversion of stored magnetic energy into kinetic energy of plasma particles and electromagnetic energy. The energy conversion is accompanied with MR, which in cases of impulsive events occurs at a faster time scales. In order to study this problem adequately, it requires the extensive use of distributed, multi-core, multi-threaded and parallel processing technology. The research outlined in this paper requires the development of fully kinetic simulations of plasma instabilities in current sheets using 3-dimensional electromagnetic PIC codes. These parallel representations have been written in a general manner utilizing standard Multiple Instruction Single Program (MISP), programming methods that can be ported across a wide range of parallel computing platforms. The parallel representations differ from one another by the specific type of parallel domain employed. For example, one such technique is a variant of spatial partitioning, where particles are placed in the local processor's memory space based upon the given particle's positional coordinates within the simulation space. Another technique is based on replicating the grid points among the processors allowing the particle calculations to be made locally across the entire grid space. The performance, processing load balance, scalability, portability, and maintainability of the program code have been important issues in the parallel processing portion of this work. This paper will first introduce the general problem of Magnetic Reconnection (MR) in a manner that highlights the algorithmic and computational aspects. The basic particle-in-cell methodology used to implement 3- dimensional electromagnetic code will be outlined. The specific domain decomposition method used for parallel execution will then be illustrated after which an analytical performance model developed for this parallelization technique will be discussed. The paper will then highlight the performance obtained when this model was executed on a multiple processor SGI Altix processing environment present at the Alabama Supercomputer Authority. This measured performance will then be compared to the analytical model as the number of processors is varied. Bottlenecks to performance will be identified and areas for future research will be outlined.