Toward an Application Support Layer: Numerical Computation in Unified Parallel C

  • Jonathan Leighton Brown
  • Zhaofang Wen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3911)


Unified Parallel C is a parallel language extension to standard C. Data in UPC are communicated through shared arrays, which are physically distributed. Thus, data regions have locality, or affinity, to particular threads of execution. This affinity concept engenders a non-uniformity in shared memory accesses by a particular thread. Affinity should be considered when building data structures in algorithms and applications, but UPC provides limited tools for data locality management. We propose the creation of an application support layer to support a wide variety of common data decompositions and programming idioms. We present here a first step for this layer with a selection of mapping functions and packages for numerical computation and dense matrix operations. These are driven by specific algorithms from linear algebra and numerical computation, and could be readily incorporated in such an application support layer.


Mapping Function Shared Memory Sandia National Laboratory Iterative Solver Ghost Cell 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bowman, E., Devine, K., Heaphy, R., Hendrickson, B., Mitchell, W.F., St. John, M., Vaughan, C.: Zoltan: Data Management Services for Parallel Applications: User’s Guide. Sandia National Laboratories, 1.54 EditionGoogle Scholar
  2. 2.
    Brown, J.L., Wen, Z.: An Application Support Layer for Unified Parallel C. Technical report, Sandia National Laboratories (2004)Google Scholar
  3. 3.
    Bulirsch, S.R.: Introduction to Numerical Analysis. Springer, Heidelberg (2002)MATHGoogle Scholar
  4. 4.
    Cantonnet, F., El-Ghazawi, T., Lorenz, P., Gaber, J.: Fast Address Translation Techniques for Distributed Shared Memory Compilers. In: Proceedings of the International Parallel and Distributed Processing Symposium (2005)Google Scholar
  5. 5.
    Culler, D.E., Singh, J.P., Gupta, A.: Parallel Computer Architecture: A Hardware/Software Approach. Morgan Kaufmann, San Francisco (1999)Google Scholar
  6. 6.
    Edwards, C., Geng, P., Patra, A., van de Geijn, R.: Parallel Matrix Distributions: Have we been doing it all wrong? Technical report, The University of Texas at Austin (1995)Google Scholar
  7. 7.
    El-Ghazawi, T.A., Carlson, W.W., Draper, J.M.: UPC Language Specification v1.1.1 (2003)Google Scholar
  8. 8.
    Heroux, M., Willenberg, J.: Trilinos Users Guide. Technical report, Sandia National Laboratories (2003)Google Scholar
  9. 9.
    Karypis, G.: Multilevel algorithms for multiconstraint hypergraph partitioning. Technical report, University of Minnesota (1999)Google Scholar
  10. 10.
    Kernighan, B., Ritchie, D.: C Programming Lanuage, 2nd edn. Prentice-Hall, Englewood Cliffs (1988)Google Scholar
  11. 11.
    Numrich, R., Reid, J.: Co-Array Fortran for Parallel Programming. ACM Fortran Forum 17(2), 1–31 (1998)CrossRefGoogle Scholar
  12. 12.
    Oehmke, R.C.: High Performance Dynamic Array Structures. PhD thesis, University of Michigan, Ann Arbor, MI (September 2004)Google Scholar
  13. 13.
    van de Geijn, R.: Using PLAPACK. MIT Press, Cambridge (1997)Google Scholar
  14. 14.
    Wiebel, E., Greenberg, D., Seidel, S.: UPC Collective Operations Specification v1.0 (2003)Google Scholar
  15. 15.
    Katherine Yelick, L., Semenzato, G., Pike, C., Myamoto, B., Liblit, A., Krishnamurthy, P., Hilfinger, N., Graham, S.L., Gay, D., Colella, P., Aiken, A.: Titanium: A High Performance Java Dialect. Concurrency: Practice and Experience 10, 11–13 (1998)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Jonathan Leighton Brown
    • 1
  • Zhaofang Wen
    • 2
  1. 1.University of MichiganAnn ArborUSA
  2. 2.Sandia National LaboratoriesAlbuquerqueUSA

Personalised recommendations