Cargando…

Multicore-Software : Grundlagen, Architektur und Implementierung in C/C++, Java und C♯

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...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Gleim, Urs
Otros Autores: Schüle, Tobias
Formato: Electrónico eBook
Idioma:Alemán
Publicado: dpunkt.verlag, 2012.
Temas:
Acceso en línea:Texto completo (Requiere registro previo con correo institucional)

MARC

LEADER 00000cam a2200000Mu 4500
001 OR_ocn798535939
003 OCoLC
005 20231017213018.0
006 m o d
007 cr |||||||||||
008 121121s2012 xx ob 001 0 ger d
040 |a EBLCP  |b eng  |e pn  |c EBLCP  |d OCLCQ  |d UMI  |d OCLCO  |d DEBSZ  |d OCLCQ  |d OCLCO  |d OCLCF  |d YDXCP  |d E7B  |d COO  |d OCLCQ  |d WYU  |d OCLCQ  |d VT2  |d OCLCQ  |d UAB  |d OCLCO  |d OCLCQ  |d EBLCP 
019 |a 829395478  |a 868937430  |a 1066460623  |a 1129379253  |a 1152980403  |a 1192346145  |a 1240514666 
020 |a 9783864910807 
020 |a 3864910803 
020 |a 3898647587 
020 |a 9783898647588 
020 |a 338986475X 
020 |a 9783389864753 
020 |z 9783898647588 
020 |z 9783389864758 
029 1 |a DEBBG  |b BV040381522 
029 1 |a DEBBG  |b BV041635347 
029 1 |a DEBSZ  |b 397336896 
029 1 |a AU@  |b 000055821440 
035 |a (OCoLC)798535939  |z (OCoLC)829395478  |z (OCoLC)868937430  |z (OCoLC)1066460623  |z (OCoLC)1129379253  |z (OCoLC)1152980403  |z (OCoLC)1192346145  |z (OCoLC)1240514666 
037 |a CL0500000197  |b Safari Books Online 
050 4 |a QA76.642 
082 0 4 |a 005.2/75  |a 005.275 
049 |a UAMI 
100 1 |a Gleim, Urs. 
245 1 0 |a Multicore-Software :  |b Grundlagen, Architektur und Implementierung in C/C++, Java und C♯ 
260 |b dpunkt.verlag,  |c 2012. 
300 |a 1 online resource (370 pages) 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
588 0 |a Print version record. 
505 0 |a 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. 
505 8 |a 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. 
505 8 |a 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. 
505 8 |a 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. 
505 8 |a 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. 
500 |a 8.2.3 Threadlokaler Speicher und Speicherallokation. 
520 |a 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. 
504 |a Includes bibliographical references and index. 
590 |a O'Reilly  |b O'Reilly Online Learning: Academic/Public Library Edition 
650 0 |a Computer software  |x Development. 
650 0 |a Multiprocessors. 
650 0 |a Parallel programming (Computer science) 
650 0 |a Systems on a chip. 
650 6 |a Multiprocesseurs. 
650 6 |a Programmation parallèle (Informatique) 
650 6 |a Systèmes sur une puce. 
650 7 |a Computer software  |x Development.  |2 fast  |0 (OCoLC)fst00872537 
650 7 |a Multiprocessors.  |2 fast  |0 (OCoLC)fst01029068 
650 7 |a Parallel programming (Computer science)  |2 fast  |0 (OCoLC)fst01052939 
650 7 |a Systems on a chip.  |2 fast  |0 (OCoLC)fst01141473 
655 0 |a Electronic books. 
700 1 |a Schüle, Tobias. 
776 0 8 |i Print version:  |a Gleim, Urs.  |t Multicore-Software : Grundlagen, Architektur und Implementierung in C/C++, Java und C♯.  |d : dpunkt.verlag, ©2012  |z 9783898647588 
856 4 0 |u https://learning.oreilly.com/library/view/~/9781457170874/?ar  |z Texto completo (Requiere registro previo con correo institucional) 
938 |a ProQuest Ebook Central  |b EBLB  |n EBL7240444 
938 |a ebrary  |b EBRY  |n ebr10717834 
938 |a YBP Library Services  |b YANK  |n 8935621 
994 |a 92  |b IZTAP