Skip to main content

Programmiermodelle für gemeinsamen Speicher

  • Chapter
  • First Online:
  • 10k Accesses

Zusammenfassung

Wir setzen bei den nachfolgenden beschriebenen Programmiermodellen einen gemeinsamen Speicher voraus, auf den alle auf den Prozessoren ablaufenden Programme zugreifen können. Der gemeinsame Speicher ist bei Einprozessorsystemen und eng über den gemeinsamen Speicher gekoppelte Systeme per se gegeben. Lose gekoppelte Multiprozessoren lassen sich von der Programmierung her als eng gekoppelte Systeme betrachten, wenn sie einen verteilten gemeinsamen Speicher realisiert haben (siehe Abschn. 2.4.2 Verteilter gemeinsamer Speicher). Durch den verteilten gemeinsamen Speicher besitzen die Programme, die auf den Prozessoren ablaufen, einen gemeinsamen Speicher. Der gemeinsame Speicher kann jedoch verteilt sein auf unterschiedliche Speicher.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   49.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   64.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Literatur

  1. Ada Home: Ada 95 Reference Manual. http://www.adahome.com/rm95/, 2007.

    Google Scholar 

  2. The Programming Language Ada. Reference Manual. American National Standards Institute, Inc., ANSI/MIL-STD-1815A-1983. Lecture Notes in Computer Science 155, Springer Verlag, 1983.

    Google Scholar 

  3. Adler R. M.: Distributed Coordination Models for Client/Server Computing. IEEE Computer, Vol. 28, No. 4, April 1995.

    Google Scholar 

  4. OpenMP Architecture Review Board. http://www.openmp.org, 2007.

  5. Barnes J.G.P.: Programming in Ada 2005. Addison Wesley 2006.

    Google Scholar 

  6. Bengel G.: Betriebssysteme. Aufbau, Architektur und Realisierung. Hüthig Verlag 1990.

    MATH  Google Scholar 

  7. Butenhof D.R.: Programming with POSIX Threads. Addison Wesley Longman, Reading, Massachusetts, 1997.

    Google Scholar 

  8. Ben-Ari M: Principles of Concurrent and Distributed Programming. 2nd Edition. Pearson Education Limited 2006.

    Google Scholar 

  9. Buhr P.A., Harji A.S.: Implicit-Signal Monitors. ACM Transaction on Programming Languages and Systems, Vol. 27, No. 6, Nov. 2005.

    Google Scholar 

  10. Bull J. M., Kambites M. E.: JOMP – an OpenMp like interface for Java. Proceedings of the ACM 2000 Conference on Java Grande. San Francisco, California, USA, 2000.

    Book  Google Scholar 

  11. NVIDIA: CUDA API Reference Manual, Version 5, http://docs.nvidia.com/cuda/pdf/CUDA_Toolkit_Reference_Manual.pdf, 2012.

    Google Scholar 

  12. Cooper E.; Draves R.: C Threads. Technical Report; Departement of Computer Science, Carnegie Mellon University, Pittsburgh, Pennsylvania, Oct 1988.

    Google Scholar 

  13. Chandra R., Dagum L., Kohr D., et al.: Parallel Programming in OpenMP. Academic Press 2001.

    Google Scholar 

  14. The Portland Group: CUDA Fortran Programming Guide and Reference, Release 2013, http://www.pgroup.com/doc/pgicudaforug.pdf, 2013.

    Google Scholar 

  15. Campanoni S., Jones T.M., Holloway G., Wei G.-Y., Brooks D.: Helix: Making the Extraction of Thread-Level Parallelism Mainstream, IEEE Micro Vol. 32, No. 4, July/August 2012.

    Google Scholar 

  16. Cook S.: A Developer’s Guide to Parallel Computing With Gpus. Morgan Kaufmann Publishers, 2012.

    Google Scholar 

  17. Carter J. R., Sanden Bo I.: Practical Use of Ada 95’s Concurrency Features. IEEE Concurrency. Parallel, Distributed & Mobile Computing. Vol. 6, No. 4, Oct.–Dec. 1998.

    Google Scholar 

  18. Dagum L., Menon R.: OpenMP: An Industry-Standard API for Shared Memory Programming. IEEE Computational Science & Engineering. Vol. 5, No. 1. Jan/March 1998.

    Google Scholar 

  19. El-Ghazawi T., Carlson W., Sterling T. Yelick K.: UPC. Distributed Shared Memory Programming. John Wiley & Sons, Inc. 2005.

    Book  Google Scholar 

  20. Edinburgh Parallel Computng Centre (EPCC), Java Grande: JOMP Home Page. http://www2.epcc.ed.ac.uk/computing/research_acitivities/jomp/index_1.html, 2007.

    Google Scholar 

  21. Farber R.: CUDA Application Design and Devlopment. Morgan Kaufmann, 2011.

    Google Scholar 

  22. Fung W.W.L, Singh I., Brownsword A., Aamodt T.M.: Kilo TM: Hardware Transactional Memory for GPU Architectures. IEEE Micro, Vol. 32, No. 3, May/June 2012.

    Google Scholar 

  23. GNU: GNAT-GNU Project–Free Software Foundation (FSF) http://www.gnu.org/software/gnat/gnat.html, 2007.

    Google Scholar 

  24. Gosling J.; Yellin F.: Java Team: Das Java API, Band 1: Die Basispakete. [Übers. aus dem Amerikan. von Birgit Kehl]. Addison Wesley Longman Verlag 1997.

    Google Scholar 

  25. Herold H.: Linux/Unix Systemprogrammierung. 3. aktualisierte Auflage. Addison Wesley 2004.

    Google Scholar 

  26. P. Brinch Hansen P.: Monitors and Concurrent Pascal: A Personal History. In ACM SIGPLAN Notices, Vol. 28, No. 3, March 1993.

    Google Scholar 

  27. Hwu W.W, Editor: GPU Computing Gems. Emerald Edition, Morgan Kaufmann, 2011.

    Google Scholar 

  28. Hwu W.W, Editor: GPU Computing Gems. Jade Edition, Morgan Kaufmann, 2011.

    Google Scholar 

  29. Brinch Hansen P.: The Programming Language Concurrent Pascal. IEEE Transaction on Software Engineering, SE-1; pp 199–207, 1975.

    Article  Google Scholar 

  30. Hughes C.; Hughes T.: Object-oriented Multithreading Using C++. John Wiley & Sons, Inc. 1997.

    Google Scholar 

  31. Hoare C. A. R.: Monitors – An Operating Systems Structuring Concept. Communications of the ACM, Vol. 11, No. 10, 1974.

    Google Scholar 

  32. Kirk D.B., Hwu W.W.: Programming Massively Parallel Processors, 2nd Edition: A Hands-on Approach. Morgan Kaufmann, 2012.

    Google Scholar 

  33. Kredel H., Yoshida A.: Thread und Netzwerkprogrammierung mit Java. 2. aktualisierte und erweiterte Auflage. dpunkt.verlag, 2002.

    Google Scholar 

  34. Marowka A.: Extending OpenMP for Task Parallelismus. Parallel Processing Letters, Vol. 13, No. 3, Sept. 2003.

    Google Scholar 

  35. Marowka A.: Parallel Computing on Any Desktop. Communications of the ACM, Vol. 50, No. 9, Sept. 2007.

    Google Scholar 

  36. Nagl M.: Software Technik mit Ada 95. Entwicklung großer Systeme. 2. Auflage, Vieweg Verlag 2003.

    Book  Google Scholar 

  37. Nichols B.; Buttlar D.; Farrell J.: Pthreads Programming. O’Reilly Associates Inc. 1998.

    Google Scholar 

  38. Oechsle R.: Parallele Programmierung mit Java Threads. Fachbuchverlag Leipzig im Carl Hanser Verlag 2001.

    MATH  Google Scholar 

  39. Oechsle R.: Parallele und verteilte Programmierung in Java. 2., vollständig überarbeitete und erweiterte Auflage. Carl Hanser Verlag 2007.

    Google Scholar 

  40. Oaks s., Wong H.: Java Threads, Understanding and Mastering Concurrent Programming, 3rd Edition. O’Reilly 2004.

    Google Scholar 

  41. Quinn M., J.: Parallel Programming in C with MPI and OpenMP. McGraw-Hill Inc., 2004.

    Google Scholar 

  42. Reinders J.: Intel Threading Building Blocks. Outfitting C++ for MultiCore Processor Parallelism. O’Reilly Media, Inc. 2007.

    Google Scholar 

  43. Sanders J., Kandrot E.: Cuda by Example: An Introduction to General-Purpose GPU-Computing. Addison-Wesley Professional 2010.

    Google Scholar 

  44. The George Washington University, The High Performance Computing Laboratory: Unified Parallel C. http://upc.gwu.edu/, 2007.

    Google Scholar 

  45. Zahn M. Unix-Netzwerkprogrammierung mit Threads, Sockets und SSL. Springer Verlag 2006.

    Google Scholar 

  46. Zender Cyril, CUDA C/C++ Basics, Supercomputing 2011, Tutorial, Nividia Corperation, www.nvidia.com/docs/IO/116711/sc-11-cuda-C.basics.pdf, 2011.

    Google Scholar 

  47. Zimmermann Ch.; Kraas A.W.: Mach, Konzepte und Programmierung. Springer Verlag 1993.

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer Fachmedien Wiesbaden

About this chapter

Cite this chapter

Baun, C., Bengel, G., Kunze, M., Stucky, KU. (2015). Programmiermodelle für gemeinsamen Speicher. In: Masterkurs Parallele und Verteilte Systeme. Springer Vieweg, Wiesbaden. https://doi.org/10.1007/978-3-8348-2151-5_4

Download citation

Publish with us

Policies and ethics