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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Literatur
Ada Home: Ada 95 Reference Manual. http://www.adahome.com/rm95/, 2007.
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.
Adler R. M.: Distributed Coordination Models for Client/Server Computing. IEEE Computer, Vol. 28, No. 4, April 1995.
OpenMP Architecture Review Board. http://www.openmp.org, 2007.
Barnes J.G.P.: Programming in Ada 2005. Addison Wesley 2006.
Bengel G.: Betriebssysteme. Aufbau, Architektur und Realisierung. Hüthig Verlag 1990.
Butenhof D.R.: Programming with POSIX Threads. Addison Wesley Longman, Reading, Massachusetts, 1997.
Ben-Ari M: Principles of Concurrent and Distributed Programming. 2nd Edition. Pearson Education Limited 2006.
Buhr P.A., Harji A.S.: Implicit-Signal Monitors. ACM Transaction on Programming Languages and Systems, Vol. 27, No. 6, Nov. 2005.
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.
NVIDIA: CUDA API Reference Manual, Version 5, http://docs.nvidia.com/cuda/pdf/CUDA_Toolkit_Reference_Manual.pdf, 2012.
Cooper E.; Draves R.: C Threads. Technical Report; Departement of Computer Science, Carnegie Mellon University, Pittsburgh, Pennsylvania, Oct 1988.
Chandra R., Dagum L., Kohr D., et al.: Parallel Programming in OpenMP. Academic Press 2001.
The Portland Group: CUDA Fortran Programming Guide and Reference, Release 2013, http://www.pgroup.com/doc/pgicudaforug.pdf, 2013.
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.
Cook S.: A Developer’s Guide to Parallel Computing With Gpus. Morgan Kaufmann Publishers, 2012.
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.
Dagum L., Menon R.: OpenMP: An Industry-Standard API for Shared Memory Programming. IEEE Computational Science & Engineering. Vol. 5, No. 1. Jan/March 1998.
El-Ghazawi T., Carlson W., Sterling T. Yelick K.: UPC. Distributed Shared Memory Programming. John Wiley & Sons, Inc. 2005.
Edinburgh Parallel Computng Centre (EPCC), Java Grande: JOMP Home Page. http://www2.epcc.ed.ac.uk/computing/research_acitivities/jomp/index_1.html, 2007.
Farber R.: CUDA Application Design and Devlopment. Morgan Kaufmann, 2011.
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.
GNU: GNAT-GNU Project–Free Software Foundation (FSF) http://www.gnu.org/software/gnat/gnat.html, 2007.
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.
Herold H.: Linux/Unix Systemprogrammierung. 3. aktualisierte Auflage. Addison Wesley 2004.
P. Brinch Hansen P.: Monitors and Concurrent Pascal: A Personal History. In ACM SIGPLAN Notices, Vol. 28, No. 3, March 1993.
Hwu W.W, Editor: GPU Computing Gems. Emerald Edition, Morgan Kaufmann, 2011.
Hwu W.W, Editor: GPU Computing Gems. Jade Edition, Morgan Kaufmann, 2011.
Brinch Hansen P.: The Programming Language Concurrent Pascal. IEEE Transaction on Software Engineering, SE-1; pp 199–207, 1975.
Hughes C.; Hughes T.: Object-oriented Multithreading Using C++. John Wiley & Sons, Inc. 1997.
Hoare C. A. R.: Monitors – An Operating Systems Structuring Concept. Communications of the ACM, Vol. 11, No. 10, 1974.
Kirk D.B., Hwu W.W.: Programming Massively Parallel Processors, 2nd Edition: A Hands-on Approach. Morgan Kaufmann, 2012.
Kredel H., Yoshida A.: Thread und Netzwerkprogrammierung mit Java. 2. aktualisierte und erweiterte Auflage. dpunkt.verlag, 2002.
Marowka A.: Extending OpenMP for Task Parallelismus. Parallel Processing Letters, Vol. 13, No. 3, Sept. 2003.
Marowka A.: Parallel Computing on Any Desktop. Communications of the ACM, Vol. 50, No. 9, Sept. 2007.
Nagl M.: Software Technik mit Ada 95. Entwicklung großer Systeme. 2. Auflage, Vieweg Verlag 2003.
Nichols B.; Buttlar D.; Farrell J.: Pthreads Programming. O’Reilly Associates Inc. 1998.
Oechsle R.: Parallele Programmierung mit Java Threads. Fachbuchverlag Leipzig im Carl Hanser Verlag 2001.
Oechsle R.: Parallele und verteilte Programmierung in Java. 2., vollständig überarbeitete und erweiterte Auflage. Carl Hanser Verlag 2007.
Oaks s., Wong H.: Java Threads, Understanding and Mastering Concurrent Programming, 3rd Edition. O’Reilly 2004.
Quinn M., J.: Parallel Programming in C with MPI and OpenMP. McGraw-Hill Inc., 2004.
Reinders J.: Intel Threading Building Blocks. Outfitting C++ for MultiCore Processor Parallelism. O’Reilly Media, Inc. 2007.
Sanders J., Kandrot E.: Cuda by Example: An Introduction to General-Purpose GPU-Computing. Addison-Wesley Professional 2010.
The George Washington University, The High Performance Computing Laboratory: Unified Parallel C. http://upc.gwu.edu/, 2007.
Zahn M. Unix-Netzwerkprogrammierung mit Threads, Sockets und SSL. Springer Verlag 2006.
Zender Cyril, CUDA C/C++ Basics, Supercomputing 2011, Tutorial, Nividia Corperation, www.nvidia.com/docs/IO/116711/sc-11-cuda-C.basics.pdf, 2011.
Zimmermann Ch.; Kraas A.W.: Mach, Konzepte und Programmierung. Springer Verlag 1993.
Author information
Authors and Affiliations
Rights 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
DOI: https://doi.org/10.1007/978-3-8348-2151-5_4
Published:
Publisher Name: Springer Vieweg, Wiesbaden
Print ISBN: 978-3-8348-1671-9
Online ISBN: 978-3-8348-2151-5
eBook Packages: Computer Science and Engineering (German Language)