Library Hours
Monday to Friday: 9 a.m. to 9 p.m.
Saturday: 9 a.m. to 5 p.m.
Sunday: 1 p.m. to 9 p.m.
Naper Blvd. 1 p.m. to 5 p.m.
     
Limit search to available items
Results Page:  Previous Next
Author Gleim, Urs.

Title Multicore-Software : Grundlagen, Architektur und Implementierung in C/C++, Java und C♯ [O'Reilly electronic resource]

Imprint dpunkt.verlag, 2012.
QR Code
Description 1 online resource (370 pages)
Contents Vorwort; Inhaltsverzeichnis; I Grundlagen der parallelen Programmierung; 1 Einführung; 1.1 Paradigmenwechsel in der Softwareentwicklung; 1.2 Anwendungsbereiche; 1.3 Parallelität in der Hardware; 1.3.1 Prozessorarchitektur; 1.3.2 Multicore-Prozessoren und Multiprozessorsysteme; 1.4 Parallelität in der Software; 1.4.1 Prozesse und Threads; 1.4.2 Virtualisierung; 1.4.3 Parallelisierende Compiler; 1.4.4 Parallele Bibliotheken; 1.4.5 Amdahl'sches Gesetz; 2 Threads; 2.1 Arbeiten mit Threads; 2.1.1 Erzeugung und Beendigung; 2.1.2 Datenaustausch; 2.1.3 Threadpools; 2.2 Scheduling.
2.2.1 Lastverteilung2.2.2 Affinitäten und Prioritäten; 2.3 Speicherzugriff; 2.3.1 Speichermodelle; 2.3.2 Speicherhierarchie; 3 Synchronisation; 3.1 Konflikte; 3.1.1 Entstehung; 3.1.2 Kritische Abschnitte; 3.2 Synchronisationsmechanismen; 3.2.1 Mutexe; 3.2.2 Scoped Locking; 3.2.3 Monitore; 3.2.4 Lese-/Schreibsperren; 3.2.5 Semaphore; 3.2.6 Bedingungsvariablen; 3.2.7 Barrieren; 3.2.8 Einmalige Ausführung; 3.2.9 Atomare Operationen; 3.2.10 Spinlocks; 3.3 Fallstricke und Richtlinien; 3.3.1 Konflikterkennung; 3.3.2 Verklemmungen; 3.3.3 Nichtdeterminismus; 3.3.4 Fairness; 3.3.5 Skalierbarkeit.
3.3.6 Threadsicherheit und Wiedereintrittsfähigkeit3.3.7 Schnittstellenentwurf; 4 Task- und Datenparallelität; 4.1 Taskparallelität; 4.1.1 Erzeugung und Synchronisation von Tasks; 4.1.2 Parallelisierung rekursiver Algorithmen; 4.1.3 Taskgruppen; 4.1.4 Spekulation; 4.1.5 Implementierung eines Task-Schedulers; 4.1.6 Programmierrichtlinien; 4.2 Datenparallelität; 4.2.1 Schleifen ohne Datenabhängigkeiten; 4.2.2 Reduktionen; 4.2.3 Präfixberechnungen; 4.2.4 Partitionierung und Abbildung; 5 Datenstrukturen; 5.1 Threadsicherer Zugriff; 5.1.1 Grobgranulare Synchronisation.
5.1.2 Feingranulare Synchronisation5.1.3 Optimistische Synchronisation; 5.1.4 Nichtblockierende Synchronisation; 5.1.5 Weitere Optimierungen; 5.2 Auswahl der richtigen Datenstruktur; 5.2.1 Kriterien; 5.2.2 Listen; 5.2.3 Vektoren; 5.2.4 Assoziative Felder; 5.2.5 Warteschlangen und Stacks; 5.2.6 Multimengen; 6 Entwurfsmuster; 6.1 Zugriff auf gemeinsame Daten; 6.1.1 Grundlegende Synchronisationsmuster; 6.1.2 Threadlokaler Speicher; 6.1.3 Futures; 6.1.4 Synchronisationsproxy; 6.1.5 Active Object; 6.2 Zerlegung in parallel bearbeitbare Teilprobleme; 6.2.1 Grundlegende Zerlegungsmuster.
6.2.2 Master-Slave6.2.3 Erzeuger-Verbraucher; 6.2.4 Aktoren; 6.2.5 Reihenfolgebewahrender Threadpool; 6.3 Fließbandverarbeitung; 6.3.1 Pipelines; 6.3.2 Pipelines mit parallelen Stufen; 6.3.3 Parallele Pipelines; 7 Architektur paralleler Software; 7.1 Entwurf paralleler Algorithmen; 7.2 Entwurf paralleler Architekturen; II Sprachen und Bibliotheken; 8 Threads und Synchronisation in C/C++; 8.1 POSIX-Threads; 8.1.1 Threads; 8.1.2 Synchronisationsmechanismen; 8.1.3 Threadlokaler Speicher und Speicherallokation; 8.2 Windows-Threads; 8.2.1 Threads; 8.2.2 Synchronisationsmechanismen.
Note 8.2.3 Threadlokaler Speicher und Speicherallokation.
Summary Hauptbeschreibung Nur parallel arbeitende Software kann die Leistung heutiger Multicore-Prozessoren ausnutzen. Das Buch vermittelt ein solides Grundwissen über Softwareentwicklung im Multicore-Zeitalter und dient als Nachschlagewerk für die tägliche Arbeit. Der erste Teil führt gut lesbar durch alle praxisrelevanten Grundlagen der Programmierung und der Architektur paralleler Software. Mit dem zweiten Teil erhält der Leser einen kompakt und strukturiert aufbereiteten Leitfaden für die produktive Entwicklung in den Sprachen C/C++, Java und C♯. Biographische Inf.
Bibliography Includes bibliographical references and index.
Subject Computer software -- Development.
Multiprocessors.
Parallel programming (Computer science)
Systems on a chip.
Multiprocesseurs.
Programmation parallèle (Informatique)
Systèmes sur une puce.
Computer software -- Development
Multiprocessors
Parallel programming (Computer science)
Systems on a chip
Added Author Schüle, Tobias.
Other Form: Print version: Gleim, Urs. Multicore-Software : Grundlagen, Architektur und Implementierung in C/C++, Java und C♯. : dpunkt.verlag, ©2012 9783898647588
ISBN 9783864910807
3864910803
3898647587
9783898647588
338986475X
9783389864753
Patron reviews: add a review
Click for more information
EBOOK
No one has rated this material

You can...
Also...
- Find similar reads
- Add a review
- Sign-up for Newsletter
- Suggest a purchase
- Can't find what you want?
More Information