A brief perspective on parallel programming

A large variety of multiple instruction, multiple data (MIMD) parallel machines-some with global shared memory and some without, some with few processors to some with a few thousand processors-are becoming commercially available, and more are being proposed, designed, or developed. Programming such machines for fast execution of desired applications remains a challenging problem. An examination is made of some broad approaches towards this goal, identifying relevant issues and presenting a few guidelines that should be helpful in parallel programming research and development. The Chare Kernel parallel programming system is proposed as a solution to the parallel programming problem.<<ETX>>