Bei Apple oder Apfeltalk?
Du machst mich neugierig: Ist da ne magsiche Lösung irgendwo in der Pipline und Apple schnallts einfach nicht?Nein, da der existierende Programmcode sich nicht magisch von einem reinem seriellen CPU Code zu einem Multicore Code umwandelt.
Das ist doch alle sehr akademisch hier. Leute die Zeug für Macs programmieren (Swift & Objective-C ) haben eine Lösung die der Hersteller unterstüztung und vermutlich in seinen Framework selber verwendet. Das Problem ist doch hinreichend gelöst.D.h. man muß weiterhin von Hand den Programmcode umschreiben. Ob man fürs Scheduling nun GCD oder OpenMP verwendet ist da sekundär. Für OpenMP spricht, daß man damit zusätzlich in der Lage ist den Code selbst zu parallelisieren. Momentan kann man mit OpenMP nur CPUs und XeonPhi ansprechen, aber die Arbeiten für nVidia GPUs haben begonnen. Mit OpenACC in Kombination mit OpenMP kann man schon jetzt nVidia und AMD GPUs ansteuern.
Die Problemlösung heißt Handarbeit, da man jeweils Code für die verschiedenen Ziele schreiben muß.Leute die Zeug für Macs programmieren (Swift & Objective-C ) haben eine Lösung
Zumindest weiß man nun, daß Intel TB3 nicht aufgibt. Allerdings wird wohl es wieder nicht Teil der PCHs (die Gerüchte weisen nicht darauf hin), so daß die Verbreitung von TB3 auch wieder gering bleiben wird. Persönlich empfände ich es bei einer Neuauflage des nMPs deutlich wichtiger, wenn folgende Dinge integriert wären: 10GbE, NVMe Ports, DP1.3 und USB 3.1.Ich denke neue Mac Pros mit TB3 kommen.
http://www.cnet.com/news/thunderbolt-3-and-usb-type-c-join-forces-for-one-port-to-rule-them-all/
GCD ist nur ein Dispatching Mechanismus, d.h. es verteilt Aufgabe auf die vorhandenen Resourcen - mehr nicht. Die eigentliche Aufgabe das Problem auf eine bestimmte Resource anzupassen übernimmt es nicht. Hierfür muß man dann trotzdem noch OpenCL, OpenMP, OpenACC, CUDA, … oder, oder verwenden. Der Nachteil von GCD ist, daß es nicht portabel ist (es gibt nur einen FreeBSD Port), d.h. man muß auf einer anderen Plattform zwingend einen anderen Dispatch Mechanismus verwenden, und man muß trotzdem immer noch das Problem parallelisieren.
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Für die Ihnen angezeigten Verarbeitungszwecke können Cookies, Geräte-Kennungen oder andere Informationen auf Ihrem Gerät gespeichert oder abgerufen werden.
Anzeigen und Inhalte können basierend auf einem Profil personalisiert werden. Es können mehr Daten hinzugefügt werden, um Anzeigen und Inhalte besser zu personalisieren. Die Performance von Anzeigen und Inhalten kann gemessen werden. Erkenntnisse über Zielgruppen, die die Anzeigen und Inhalte betrachtet haben, können abgeleitet werden. Daten können verwendet werden, um Benutzerfreundlichkeit, Systeme und Software aufzubauen oder zu verbessern.
Durch das Klicken des Buttons "Zustimmen" willigen Sie gem. Art. 49 Abs. 1 DSGVO ein, dass auch Anbieter in den USA Ihre Daten verarbeiten. In diesem Fall ist es möglich, dass die übermittelten Daten durch lokale Behörden verarbeitet werden.