Accelerated Computing WAS IST GPU-BESCHRÄNKTES COMPUTER GPU-beschleunigtes Rechnen ist die Verwendung einer Grafikverarbeitungseinheit (GPU) zusammen mit einer CPU, um das tiefe Lernen zu beschleunigen. Analytik Und Engineering-Anwendungen. Pionier im Jahr 2007 von NVIDIA, GPU-Beschleuniger jetzt Energie energieeffiziente Rechenzentren in staatlichen Labors, Universitäten, Unternehmen und kleine und mittlere Unternehmen auf der ganzen Welt. Sie spielen eine große Rolle bei der Beschleunigung der Anwendungen in Plattformen von Künstliche Intelligenz zu Autos, Drohnen und Roboter. WIE GPUs SOFTWARE-ANWENDUNGEN BESCHLEUNIGEN GPU-beschleunigtes Computing entlastet rechenintensive Teile der Anwendung an die GPU, während der Rest des Codes noch auf der CPU läuft. Aus der Sicht der Anwender laufen Anwendungen einfach schneller. GPU vs CPU Performance Ein einfacher Weg, um den Unterschied zwischen einer GPU und einer CPU zu verstehen ist zu vergleichen, wie sie Prozesse verarbeiten. Eine CPU besteht aus wenigen Kerne, die für eine sequentielle serielle Verarbeitung optimiert sind, während eine GPU eine massiv parallele Architektur aufweist, die aus Tausenden kleinerer, effizienterer Kerne besteht, die für das gleichzeitige Handhaben mehrerer Aufgaben ausgelegt sind. GPUs haben Tausende von Kerne, um parallele Workloads effizient zu verarbeiten Überprüfen Sie den Videoclip unten für eine unterhaltsame GPU versus CPU Mit über 400 HPC-Anwendungen beschleunigt, darunter 9 von oben 10 alle GPU-Benutzer können dramatische Durchsatz steigern für ihre Arbeitsbelastung zu erleben. Finden Sie heraus, ob die Anwendungen, die Sie verwenden, GPU-beschleunigt sind in unserem Anwendungskatalog (PDF 1.9 MB). GET Started TODAY Es gibt drei grundlegende Ansätze, um GPU-Beschleunigung für Ihre Anwendungen hinzuzufügen: Fallenlassen in GPU-optimierten Bibliotheken Hinzufügen von Compiler-Hinweisen, um Ihren Code automatisch zu parallelen Verwenden von Erweiterungen zu Standardsprachen wie C und Fortran Lernen, wie GPUs mit der CUDA-Parallelprogrammierung verwendet werden Modell ist einfach. Für kostenlose Online-Klassen und Entwickler-Ressourcen besuchen CUDA zone. ATI Eyefinity-Grafikkarten sind Gaming-Grafikkarten, die dazu neigen, eine hohe Anzahl von Monitor-Ausgänge auf der Rückseite von ihnen haben. Dies führt viele Menschen zu glauben, sie sind eine gute Wahl für eine professionelle Multi-Screen-oder Handelsrechner, leider ist dies falsch. Bei Multiple Monitoren hängt unser Lebensunterhalt davon ab, dass wir Experten in Multi-Screen-Systemen sind, und als solche müssen wir auf dem neuesten Stand der neuesten Hardware auf dem Markt bleiben. Hübsch offensichtlich, als wir zuerst Wind dieser neuen Eyefinity Karten erhielten, waren wir ziemlich aufgeregt, um sie zu sehen, in der Theorie, die sie ein vollkommenes Gleiches für unsere Computersysteme gewesen sein sollten aber in der Praxis können wir sie nicht empfehlen. Die Probleme mit Ihnen Sie müssen bedenken, dass die Technologie gebaut wurde, um einen Gaming-Markt nicht eine professionelle dienen, sind alle Eyefinity-Karten für das Werfen von 3D-Grafiken um mehrere Bildschirme optimiert. Sie erreichen dieses Kunststück in einer weit erfolgreicheren Art und Weise zu früheren Karten jedoch dieser Technologie-Weg hat einige Nachteile für den professionellen Benutzer. Hohe Geräuschpegel Zuerst neigen die Karten dazu, sehr laut zu sein, weil sie große Kühlventilatoren auf ihnen benötigen, um sicherzustellen, dass sie nicht überhitzen, finden Sie so ziemlich alle Gaming-Grafikkarten, Eyefinity oder nicht, darunter leiden. Jetzt für einen Gamer, der ihren Ton laut aufgedreht hat, dann wird das Rauschen weniger von einem Problem, aber für einen Benutzer saß vor der Maschine für längere Zeit, mit einem Sound-Äquivalent zu einem Jet-Motor läuft kontinuierlich unter Ihrem Schreibtisch ist Nicht eine große Situation zu finden Sie sich in. High Power Consumption Um diese Karten zu generieren, müssen Sie in der Regel ein System mit einem größeren Netzteil mit direkten Stromzuführungen für jede Eyefinity-Karte zu bauen, fügt dies sowohl die ersten System-Build-Kosten und die auf Laufende Kosten für den Betrieb des PCs. Mehr Leistung bedeutet mehr Wärmeentwicklung, was zu zusätzlichen Kühlanforderungen führt. Oft finden Sie Systembauer ignorieren diese Tatsache, die Hitze baut sich kontinuierlich in einem PC, die die Lebensdauer der umgebenden Komponenten reduziert. Schlechte Software-Treiber Alle PC-Komponenten benötigen Software, die Treiber genannt wird, um ordnungsgemäß zu funktionieren. Diese Treiber informieren das Betriebssystem im Wesentlichen über die Verwendung des Geräts. Fragen Sie jemanden, der High-End-Gaming über Grafikkartentreiber spielt und sie werden Ihnen sagen, was für ein Albtraum sie sein können, sind Hersteller ständig neue Treiber, die mehr als oft nicht mehr Bugs als sie lösen. Dies bedeutet im Grunde, dass System Abstürze und Lockups ziemlich häufig werden kann. Nach unserer Erfahrung leidet Eyefinity in dieser Abteilung mehr als normal. Bei all unseren Testsystemen (von denen es in den letzten 2 Jahren viele gab) sind die Fahrer extrem schlecht. In realen Weltbedingungen bedeutete dies, dass wir manchmal den Computer neu booten und alle Anzeigeeinstellungen ohne ersichtlichen Grund verlieren würden, was dazu führte, dass jeder Bildschirm zurückgesetzt werden musste. Eyefinity verwandelt dieses Problem in der Tat, wie Windows interagiert mit mehreren Monitoren bedeutet, dass die Einrichtung von Bildschirmen nimmt phänomenal länger als es normalerweise dauern würde. Unsere Standard-PCs dauern ca. 1 2 Minuten, um die Bildschirme zu konfigurieren. Die Eyefinity-Systeme haben unsere Experten rund 20 bis 30 Minuten in Anspruch genommen und jedes Mal, wenn die Einstellungen verloren gingen. Allgemeine Empfehlungen Wie Sie vermutlich sammeln können, empfehlen wir niemand, der einen zuverlässigen PC benötigt, um Eyefinity Karten zu benutzen. Sie können sagen, wenn ein System Eyefinity hat, da die Grafikkarten im Allgemeinen ATI sind. PC-Builder empfehlen sie oft, wie sie eine einfache Möglichkeit, eine hohe Anzahl von Bildschirmausgaben zu erreichen scheinen, aber vertrauen Sie uns, werden Sie für sie auf lange Sicht mit all den Ärger, dass sie mit bezahlen. Unsere Methode, mehrere Dual-Monitor-fähige Grafikkarten zu verwenden, ist bei weitem der stabilste Weg, ein zuverlässiges und leistungsstarkes Multi-Screen-PC-System zu realisieren. Deshalb sehen Sie keine Eyefinity-basierten Grafikkarten, die von uns angeboten werden. Geschrieben von: Darren Multiple Monitors Letzte Aktualisierung: April, 2012PU ist eine Grafikkarte mit programmierbarer Schnittstelle. Fügen Sie es in einen Steckplatz auf Ihrem Motherboard, installieren Sie Treiber und erhalten Sie Zugriff auf nach oben von 100 von Verarbeitungseinheiten mit 1 GB oder mehr Speicher mit wahlfreiem Zugriff. Es dauert jetzt Millisekunden zu tun, was verwendet, um Sekunden zu tun. Sie gehen von spürbaren Verzögerung zu keiner Verzögerung überhaupt. Dies ist, was passiert, wenn GPU-Verarbeitung ein Nachdenken ist: für ein durchschnittliches PC-System, verbringen 400 Dollar für eine Mid-Range-GPU-Karte und Sie sind in einer neuen Welt. Es ist möglich, ein System zusammenzubauen, das einen Stapel von High-End-GPU-Einheiten treibt. Für eine Investition von unter 100K kann man einen Supercomputer zusammensetzen, der in der Lage ist, quantitative Informationen in Echtzeit für industrielle Größenportfolios zur Verfügung zu stellen. CUDA ist eine Software-Schnittstelle für GPU. Nicht jede Grafikkarte unterstützt CUDA. CUDA ermöglicht die GPU-Codierung mit einer Version von C. Es ist möglich, Anwendungen zu erstellen, die gleichzeitig auf CPU und einem oder mehreren GPUs laufen. Es gibt eine einfache Schnittstelle für den Speicheraustausch zwischen CPU und GPUs. Für spätere Versionen von GPUs gibt es eine Schnittstelle für die Speicherzuordnung zwischen CPU und GPUs. Es gibt Barriere-, Ereignis - und Strombasierte Synchronisationen, Atomarithmetik und Konstrukte für eine nahtlose Skalierbarkeit. Gewinde sind extrem leicht. Zum Beispiel ist es sinnvoll, 256 Threads zu erstellen, um zwei Vektoren in 256 Dimensionen hinzuzufügen. Ein entscheidendes Merkmal ist das Vorhandensein von sehr schnellem Cache-Speicher von beträchtlicher Größe auf jedem Verarbeitungskern. Zum Beispiel führen wir die Matrixmultiplikation nicht mehr durch eine einfache Definition der Definition aus. Stattdessen kopieren wir Matrixblöcke im Cache-Speicher parallel und führen dann parallel Block-Matrix-Multiplikation durch. Für numerische Verfahren bedeutet dies, dass Verfahren auf der Grundlage von Dreiecksfaktoren nicht mehr eine gute Möglichkeit sind, Gleichungen zu invertieren, da diese für aufeinander folgende Berechnungen angepasst werden. Die Matrix-Multiplikation eignet sich hingegen ideal für Berechnungen mit dieser Technologie. Um Beschränkungen der Technologie zu verstehen, muss man den Begriff der Warp verstehen. Der GPU-Code wird in Gruppen von 32 Threads (Warp) ausgeführt, die von derselben Befehlssequenz gesteuert werden. Somit hat jeder Durchflußregelungsvorgang (wenn, während, für) das Potential, die Kette aufzuteilen und eine wesentliche Leistungsabgabe einzuführen. Wenn zu viel solcher Divergenz angetroffen wird, dann wirft Cuda runtime globale Stapelüberlaufausnahme. Eine solche Ausnahme erfordert das Starten der Cuda-Laufzeit. Obwohl die Flußsteuerbefehle im Gerätecode verfügbar sind, wird erwartet, daß der Programmierer die meisten Strömungssteuerung auf Host (CPU) schaltet und Code mit einer minimalen Menge an Flußsteuerung in das Gerät abgibt. Ein aufwendiges Beispiel einer solchen Trennung ist in dem Abschnitt (Skalarprodukt in N-Dimensionen) dargestellt. Natürlich gibt es keine Ausnahme Wurf oder Handling im Gerätecode.
No comments:
Post a Comment