Hinweis: Mit dieser praktischen Erweiterung „Markdown PDF“ können Sie diese Markdown-Datei ganz einfach in VSCode in eine PDF-Datei konvertieren.
Wie CPU und GPU beim Ausführen von Anwendungscode zusammenarbeiten.
Einheitliche Speicherarchitektur
GPU-Lernressourcen
Elektrische Ladung, Feld und Potenzial
Ladung und elektrische Kraft (Coulombsches Gesetz): Elektrische Ladung, Feld und Potenzial
Elektrisches Feld: Elektrische Ladung, Feld und Potenzial
Elektrische potentielle Energie, elektrisches Potenzial und Spannung: Elektrische Ladung, Feld und Potenzial
Schaltungen
Ohmsches Gesetz und Schaltungen mit Widerständen: Schaltungen
Schaltungen mit Kondensatoren: Schaltungen
Magnetische Kräfte, magnetische Felder und das Faradaysche Gesetz
Magnete und Magnetkraft: Magnetische Kräfte, Magnetfelder und das Faradaysche Gesetz
Durch einen Strom erzeugtes Magnetfeld: Magnetische Kräfte, Magnetfelder und das Faradaysche Gesetz
Elektromotoren: Magnetische Kräfte, Magnetfelder und das Faradaysche Gesetz
Magnetischer Fluss und Faradaysches Gesetz
Elektromagnetische Wellen und Interferenzen
Einführung in elektromagnetische Wellen: Elektromagnetische Wellen und Interferenz
Interferenz elektromagnetischer Wellen
Geometrische Optik
Reflexion und Brechung: Geometrische Optik
Spiegel: Geometrische Optik
Linsen
Lineare Algebra
Virtualisierung
Paralleles Rechnen
OpenCL-Entwicklung
CUDA-Entwicklung
Algorithmen
Maschinelles Lernen
Deep-Learning-Entwicklung
Entwicklung von Computer Vision
Spielen
Spieleentwicklung
OpenGL-Entwicklung
Vulkan-Entwicklung
DirectX-Entwicklung
Professionelle Audio-/Videoentwicklung
3D-Grafik und Design
Apple Silicon
Kern-ML-Entwicklung
Metallentwicklung
MATLAB-Entwicklung
C/C++-Entwicklung
Python-Entwicklung
R-Entwicklung
Julia-Entwicklung
Zurück nach oben
Die Graphics Processing Unit (GPU) ist eine Schaltung, die aus Hunderten von Kernen besteht, die Tausende von Threads gleichzeitig verarbeiten können. GPUS können den Speicher schnell manipulieren und ändern, um die Erstellung von Bildern in einem Bildpuffer für die Ausgabe an ein Anzeigegerät zu beschleunigen. Sie werden in eingebetteten Systemen, Mobiltelefonen, Personalcomputern, professionellen Workstations und Spielekonsolen eingesetzt.
Random Access Memory (RAM) ist eine Form von Computerspeicher, der in beliebiger Reihenfolge gelesen und geändert werden kann und normalerweise zum Speichern von Arbeitsdaten und Maschinencode verwendet wird. Im Gegensatz zu anderen Datenspeichermedien mit direktem Zugriff ermöglicht ein Speichergerät mit wahlfreiem Zugriff das Lesen oder Schreiben von Datenelementen in fast der gleichen Zeit, unabhängig vom physischen Speicherort der Daten im Speicher.
Video Random Access Memory (VRAM) ist der RAM, der zum Speichern von Bild- oder Grafikdaten zugewiesen ist. Es funktioniert auf die gleiche Weise wie RAM und speichert bestimmte Daten für einen einfacheren Zugriff und eine einfachere Leistung. Bilddaten werden zunächst vom Prozessor gelesen und in den VRAM geschrieben. Anschließend wird es von einem RAMDAC oder einem RAM-Digital-Analog-Wandler umgewandelt und als Grafikausgabe angezeigt.
Graphics Double Data Rate (GDDR) SDRAM ist eine Art synchroner Grafik-Random-Access-Speicher (SGRAM) mit einer Schnittstelle mit hoher Bandbreite („Double Data Rate“), der für den Einsatz in Grafikkarten, Spielekonsolen und Hochleistungsrechnern entwickelt wurde.
Die Integrated Graphics Processing Unit (IGPU) ist eine Komponente, die auf demselben Chip (integrierter Schaltkreis) wie die CPU (AMD Ryzen APU oder Intel HD Graphics) aufgebaut ist und einen Teil des System-RAM des Computers anstelle eines dedizierten Grafikspeichers nutzt.
Tensor ist ein algebraisches Objekt, das eine multilineare Beziehung zwischen Mengen algebraischer Objekte beschreibt, die sich auf einen Vektorraum beziehen. Objekte, die Tensoren zwischen Vektoren, Skalaren und anderen Tensoren abbilden können.
Tensoren sind mehrdimensionale Arrays mit einem einheitlichen Typ (D-Typ genannt).
Tensor-Kerne sind ein KI-Inferenzbeschleuniger in NVIDIA-GPUs, die eine um eine Größenordnung höhere Leistung bei reduzierter Präzision wie TF32, bfloat16, FP16, INT8, INT4 und FP64 bieten, um wissenschaftliche Berechnungen mit der höchsten erforderlichen Genauigkeit zu beschleunigen.
RT (Real-Time Ray Tracing) Cores ist eine hardwarebasierte Raytracing-Beschleunigung, die die Durchquerung der Bounding Volume Hierarchy (BVH) und Ray/Dreieck-Schnittpunkttests (Ray Casting) beschleunigt. RT-Kerne führen Sichtbarkeitstests im Auftrag von Threads durch, die im SM ausgeführt werden, sodass dieser andere Vertex-, Pixel- und Berechnungsschattierungsaufgaben bewältigen kann.
Die Zentraleinheit (CPU) ist eine Schaltung, die aus mehreren Kernen besteht und Anweisungen aus einem Computerprogramm ausführt. Die CPU führt grundlegende arithmetische, logische, steuernde und Ein-/Ausgabeoperationen (E/A) aus, die durch die Anweisungen im Programm festgelegt werden. Dies unterscheidet sich von anderen externen Komponenten wie Hauptspeicher, I/O-Schaltkreisen und Grafikprozessoren (GPUs).
AMD Accelerated Processing Unit (APU) ist eine Reihe von 64-Bit-Mikroprozessoren von Advanced Micro Devices (AMD), die als Zentraleinheit (CPU) und Grafikprozessor (GPU) auf einem einzigen Chip fungieren sollen.
Der Vektorprozessor ist eine Zentraleinheit (CPU), die einen Befehlssatz implementiert, dessen Befehle so konzipiert sind, dass sie effizient und effektiv mit großen eindimensionalen Datenarrays, sogenannten Vektoren, arbeiten.
Bei der digitalen Signalverarbeitung (DSP) handelt es sich um die Anwendung eines digitalen Computers zur Modifizierung eines analogen oder digitalen Signals. Es wird häufig in vielen Anwendungen eingesetzt, darunter Video-/Audio-/Datenkommunikation und -netzwerke, medizinische Bildgebung und Computer Vision, Sprachsynthese und -codierung, digitales Audio und Video sowie die Steuerung komplexer Systeme und industrieller Prozesse.
Bei der Bildsignalverarbeitung (ISP) handelt es sich um den Prozess der Umwandlung eines Bildes in digitale Form durch die Durchführung von Vorgängen wie Rauschunterdrückung, automatische Belichtung, Autofokus, automatischer Weißabgleich, HDR-Korrektur und Bildschärfung mit einem speziellen Medienprozessortyp.
Bei anwendungsspezifischen integrierten Schaltkreisen (ASICs) handelt es sich um integrierte Schaltkreise (IC), die für eine bestimmte Verwendung in eingebetteten Systemen, Mobiltelefonen, Personalcomputern und professionellen Workstations angepasst sind und nicht für den allgemeinen Gebrauch bestimmt sind.
Single Instruction, Multiple Data (SIMD) ist eine Art Parallelverarbeitung, die Computer mit mehreren Verarbeitungselementen beschreibt, die den gleichen Vorgang an mehreren Datenpunkten gleichzeitig ausführen.
Was ist eine GPU? Definierte Grafikverarbeitungseinheiten | Intel
Deep Learning Institute und Schulungslösungen | NVIDIA
Deep-Learning-Online-Kurse | NVIDIA
Bestehende Universitätskurse | NVIDIA-Entwickler
Verwendung von GPUs zur Skalierung und Beschleunigung von Deep Learning | edX
Top-GPU-Kurse online | Coursera
CUDA GPU-Programmierung Anfänger bis Fortgeschrittene | Udemy
GPU-Computing in Vulkan | Udemy
GPU-Architekturkurs | Universität Washington
Zurück nach oben
- Charge and electric force (Coulomb's law): Electric charge, field, and potential - Electric field: Electric charge, field, and potential - Electric potential energy, electric potential, and voltage: Electric charge, field, and potential
Elektrische potentielle Energie. Quelle: sparkfun
Zurück nach oben
- Ohm's law and circuits with resistors: Circuits - Circuits with capacitors: Circuits
Elektrische Schaltkreise. Quelle: sdsu-physics
Symbole von Schaltkreisen. Quelle: andrewpover.co.uk
Zurück nach oben
- Magnets and Magnetic Force: Magnetic forces, magnetic fields, and Faraday's law - Magnetic field created by a current: Magnetic forces, magnetic fields, and Faraday's law - Electric motors: Magnetic forces, magnetic fields, and Faraday's law - Magnetic flux and Faraday's law
Magnetfeld. Quelle: vecteezy
Ampheres Gesetz. Quelle: sdsu-physics
Faradys Gesetz. Quelle: sdsu-physics
Zurück nach oben
- Introduction to electromagnetic waves: Electromagnetic waves and interference - Interference of electromagnetic waves
Elektromagnetische Welle. Quelle: Differenz zwischen
EMI-Spektrum. Quelle: electric4u
Zurück nach oben
- Reflection and refraction: Geometric optics - Mirrors: Geometric optics - Lenses
Geometrische Optik – Raytracing. Quelle: sdsu-physics
Geometrische Optik - Reflexion. Quelle: sdsu-physics
Zurück nach oben
Lineare Algebra ist die Mathematik von Vektoren und Matrizen. Die einzige Voraussetzung für diesen Leitfaden ist ein grundlegendes Verständnis der Konzepte der High-School-Mathematik wie Zahlen, Variablen, Gleichungen und der grundlegenden arithmetischen Operationen für reelle Zahlen: Addition (bezeichnet mit +), Subtraktion (bezeichnet mit –), Multiplikation (bezeichnet implizit) und Division (Brüche). Außerdem sollten Sie mit Funktionen vertraut sein, die reelle Zahlen als Eingaben verwenden und reelle Zahlen als Ausgaben liefern, f : R → R.
Lineare Algebra – Online-Kurse | Harvard-Universität
Lineare Algebra | MIT Open Learning Library
Lineare Algebra – Khan Academy
Top-Kurse zur linearen Algebra auf Coursera
Mathematik für maschinelles Lernen: Lineare Algebra auf Coursera
Die besten Kurse zur linearen Algebra auf Udemy
Lernen Sie lineare Algebra mit Online-Kursen und -Kursen auf edX
Die Mathematik der Datenwissenschaft: Linearer Algebra-Kurs auf edX
Lineare Algebra in fünfundzwanzig Vorlesungen | UC Davis
Lineare Algebra | UC San Diego-Erweiterung
Lineare Algebra für maschinelles Lernen | UC San Diego-Erweiterung
Einführung in die lineare Algebra, interaktives Online-Video | Wolfram
Ressourcen zur linearen Algebra | Dartmouth
Wir definieren nun die mathematischen Operationen für Vektoren. Die Operationen, die wir an den Vektoren ~u = (u1, u2, u3) und ~v = (v1, v2, v3) durchführen können, sind: Addition, Subtraktion, Skalierung, Norm (Länge), Skalarprodukt und Kreuzprodukt:
Das Skalarprodukt und das Kreuzprodukt zweier Vektoren können auch durch den Winkel θ zwischen den beiden Vektoren beschrieben werden.
Vektoroperationen. Quelle: Slideserve
Vektoroperationen. Quelle: Pinterest
Wir bezeichnen mit A die Matrix als Ganzes und bezeichnen ihre Einträge als aij. Die für Matrizen definierten mathematischen Operationen sind die folgenden:
• Determinante (bezeichnet als det(A) oder |A|) Beachten Sie, dass das Matrixprodukt keine kommutative Operation ist.
Matrixoperationen. Quelle: SDSU Physics
Suchen Sie nach Modulen, die Matrixoperationen zulassen. Quelle: DPS Concepts
Das Matrix-Vektor-Produkt ist ein wichtiger Spezialfall des Matrixprodukts.
Es gibt zwei grundsätzlich unterschiedliche, aber gleichwertige Möglichkeiten, das Matrix-Vektor-Produkt zu interpretieren. Im Spaltenbild (C) erzeugt die Multiplikation der Matrix A mit dem Vektor ~x eine Linearkombination der Spalten der Matrix: y = A x = x1A[:,1] + x2A[:,2], Dabei sind A[:,1] und A[:,2] die erste und zweite Spalte der Matrix A. Im Zeilenbild (R) erzeugt die Multiplikation der Matrix A mit dem Vektor ~x einen Spaltenvektor mit Koeffizienten gleich den Skalarprodukten der Zeilen der Matrix mit dem Vektor ~x.
Matrix-Vektorprodukt. Quelle: Wikimedia
Matrix-Vektorprodukt. Quelle: mathisfun
Das Matrix-Vektor-Produkt wird verwendet, um den Begriff einer linearen Transformation zu definieren, der einer der Schlüsselbegriffe beim Studium der linearen Algebra ist. Die Multiplikation mit einer Matrix A ∈ R m×n kann man sich als Berechnung einer linearen Transformation TA vorstellen, die n-Vektoren als Eingaben verwendet und m-Vektoren als Ausgaben erzeugt:
Lineare Transformationen. Quelle: Slideserve
Elementarmatrizen für lineare Transformationen in R^2. Quelle: Quora
Grundsatz der linearen Algebra für Vektorräume. Quelle: Wikimedia
Grundsatz der linearen Algebra. Quelle: Wolfram
System linearer Gleichungen durch grafische Darstellung. Quelle: Slideshare
Gleichungssysteme als Matrixgleichungen. Quelle: mathisfun
In diesem Abschnitt betrachten wir verschiedene Ansätze zur Berechnung der Umkehrung einer Matrix. Die Matrixinverse ist eindeutig, sodass wir unabhängig von der Methode, mit der wir die Umkehrung finden, immer die gleiche Antwort erhalten.
Umkehrung der 2x2-Matrix. Quelle: Pinterest
Ein Ansatz zur Berechnung der Umkehrung ist die Verwendung des Gauß-Jordan-Eliminationsverfahrens.
Elementray-Zeilenoperationen. Quelle: YouTube
Jede Zeilenoperation, die wir an einer Matrix ausführen, entspricht einer Linksmultiplikation mit einer Elementarmatrix.
Elementare Matrizen. Quelle: SDSU Physics
Um die Umkehrung einer Matrix zu finden, verwenden Sie die Transpose-Methode.
Transponieren einer Matrix. Quelle: Slideserve
In diesem Abschnitt werden eine Reihe weiterer wichtiger Themen der linearen Algebra besprochen.
Intuitiv ist eine Basis jede Menge von Vektoren, die als Koordinatensystem für einen Vektorraum verwendet werden kann. Sie kennen sicherlich die Standardbasis für die xy-Ebene, die aus zwei orthogonalen Achsen besteht: der x-Achse und der y-Achse.
Basis. Quelle: Wikimedia
Basiswechsel. Quelle: Wikimedia
Matrixdarstellungen linearer Transformationen. Quelle: Slideserve
Die Dimension eines Vektorraums ist definiert als die Anzahl der Vektoren in einer Basis für diesen Vektorraum. Betrachten Sie den folgenden Vektorraum S = span{(1, 0, 0),(0, 1, 0),(1, 1, 0)}. Da der Raum durch drei Vektoren beschrieben wird, könnten wir annehmen, dass S dreidimensional ist. Dies ist jedoch nicht der Fall, da die drei Vektoren nicht linear unabhängig sind und daher keine Basis für S bilden. Zwei Vektoren reichen aus, um jeden Vektor in S zu beschreiben; Wir können S = span{(1, 0, 0),(0, 1, 0)} schreiben und sehen, dass diese beiden Vektoren linear unabhängig sind, sodass sie eine Basis bilden und dim(S) = 2. Es gibt ein Allgemeines Verfahren zum Finden einer Basis für einen Vektorraum. Angenommen, Sie erhalten eine Beschreibung eines Vektorraums anhand von m Vektoren V = span{~v1, ~v2, . . . , ~vm} und Sie werden gebeten, eine Basis für V und die Dimension von V zu finden. Um eine Basis für V zu finden, müssen Sie einen Satz linear unabhängiger Vektoren finden, die V aufspannen. Wir können dazu das Gauß-Jordan-Eliminationsverfahren verwenden diese Aufgabe erfüllen. Schreiben Sie die Vektoren ~vi als Zeilen einer Matrix M. Der Vektorraum V entspricht dem Zeilenraum der Matrix M. Verwenden Sie als Nächstes Zeilenoperationen, um die reduzierte Zeilenstufenform (RREF) der Matrix M zu ermitteln. Da Zeilenoperationen Ändern Sie den Zeilenraum der Matrix nicht. Der Zeilenraum der reduzierten Zeilenstufenform der Matrix M ist derselbe wie der Zeilenraum des ursprünglichen Satzes von Vektoren. Die von Null verschiedenen Zeilen im RREF der Matrix bilden eine Basis für den Vektorraum V und die Anzahl der von Null verschiedenen Zeilen ist die Dimension von V.
Basis und Dimension. Quelle: sliderserve
Erinnern Sie sich an die grundlegenden Vektorräume für Matrizen, die wir in Abschnitt II-E definiert haben: den Spaltenraum C(A), den Nullraum N(A) und den Zeilenraum R(A). Eine Standardprüfungsfrage zur linearen Algebra besteht darin, Ihnen eine bestimmte Matrix A zu geben und Sie zu bitten, die Dimension und eine Basis für jeden ihrer Grundräume zu finden. Im vorherigen Abschnitt haben wir ein auf der Gauß-Jordan-Eliminierung basierendes Verfahren beschrieben, mit dem eine Menge linear unabhängiger Vektoren „destilliert“ werden kann, die eine Basis für den Zeilenraum R(A) bilden. Wir werden dieses Verfahren nun anhand eines Beispiels veranschaulichen und außerdem zeigen, wie man die RREF der Matrix A verwendet, um Basen für C(A) und N (A) zu finden.
Zeilenraum und Spaltenraum. Quelle: Slideshare
Zeilenraum und Spaltenraum. Quelle: Slideshare
Rang und Nichtigkeit. Quelle: Slideshare
Es gibt einen wichtigen Unterschied zwischen Matrizen, die invertierbar sind, und solchen, die nicht durch den folgenden Satz formalisiert werden. Satz. Für eine n×n-Matrix A sind die folgenden Aussagen äquivalent:
Satz der invertierbaren Matrix. Quelle: SDSU Physics
Die Determinante einer Matrix, bezeichnet als det(A) oder |A|, ist eine besondere Möglichkeit, die Einträge einer Matrix zu kombinieren und zu überprüfen, ob eine Matrix invertierbar ist oder nicht.
Determinante einer Quadratmatrix. Quelle: Stackexchange
Determinante der Matrix. Quelle: onlinemathlearning
Der Satz der Eigenvektoren einer Matrix ist ein spezieller Satz von Eingabevektoren, für den die Wirkung der Matrix als einfache Skalierung beschrieben wird. Wenn eine Matrix mit einem ihrer Eigenvektoren multipliziert wird, ist die Ausgabe derselbe Eigenvektor, multipliziert mit einer Konstanten A eλ = λ eλ. Die Konstante λ heißt Eigenwert von A.
Verallgemeinerte Eigenvektoren. Quelle: YouTube
Die lineare Regression ist ein Ansatz zur Modellierung der Beziehung zwischen zwei Variablen durch Anpassen einer linearen Gleichung an beobachtete Daten. Eine Variable wird als erklärende Variable und die andere als abhängige Variable betrachtet.
Multiple lineare Regression. Quelle: Mittel
Zurück nach oben
HVM (Hardware Virtual Machine) ist ein Virtualisierungstyp, der die Möglichkeit bietet, ein Betriebssystem ohne Änderungen direkt auf einer virtuellen Maschine auszuführen, als ob es auf der Bare-Metal-Hardware ausgeführt würde.
PV (ParaVirtualization) ist eine effiziente und leichte Virtualisierungstechnik, die vom Xen-Projektteam eingeführt und später von anderen Virtualisierungslösungen übernommen wurde. PV erfordert keine Virtualisierungserweiterungen von der Host-CPU und ermöglicht somit die Virtualisierung auf Hardwarearchitekturen, die keine hardwaregestützte Virtualisierung unterstützen.
Bei der Netzwerkfunktionsvirtualisierung (NFV) handelt es sich um den Ersatz der Hardware von Netzwerkgeräten durch virtuelle Maschinen. Die virtuellen Maschinen verwenden einen Hypervisor, um Netzwerksoftware und Prozesse wie Routing und Lastausgleich auszuführen. NFV ermöglicht die Trennung von Kommunikationsdiensten von dedizierter Hardware wie Routern und Firewalls. Diese Trennung bedeutet, dass der Netzwerkbetrieb neue Dienste dynamisch und ohne die Installation neuer Hardware bereitstellen kann. Die Bereitstellung von Netzwerkkomponenten mit Netzwerkfunktionsvirtualisierung dauert nur Stunden im Vergleich zu Monaten wie bei herkömmlichen Netzwerklösungen.
Software Defined Networking (SDN) ist ein Netzwerkansatz, der softwarebasierte Controller oder Anwendungsprogrammierschnittstellen (APIs) verwendet, um mit der zugrunde liegenden Hardware-Infrastruktur zu kommunizieren und den Datenverkehr in einem Netzwerk zu leiten. Dieses Modell unterscheidet sich von herkömmlichen Netzwerken, die dedizierte Hardwaregeräte (Router und Switches) zur Steuerung des Netzwerkverkehrs verwenden.
Virtualized Infrastructure Manager (VIM) ist eine Servicebereitstellung und Kostenreduzierung durch leistungsstarkes Lebenszyklusmanagement. Verwalten Sie den gesamten Lebenszyklus der Software und Hardware, aus der Ihre NFV-Infrastruktur (NFVI) besteht, und pflegen Sie einen Live-Inventar- und Zuteilungsplan sowohl physischer als auch virtueller Ressourcen.
Management and Orchestration (MANO) ist eine von ETSI gehostete Initiative zur Entwicklung eines Open-Source-NFV-Management- und Orchestration-Software-Stacks (MANO), der auf ETSI NFV abgestimmt ist. Zwei der Schlüsselkomponenten des ETSI NFV-Architektur-Frameworks sind der NFV Orchestrator und der VNF Manager, bekannt als NFV MANO.
Magma ist eine Open-Source-Softwareplattform, die Netzwerkbetreibern eine offene, flexible und erweiterbare mobile Kernnetzwerklösung bietet. Ihre Mission ist es, die Welt mit einem schnelleren Netzwerk zu verbinden, indem sie Dienstanbietern den Aufbau kostengünstiger und erweiterbarer Netze auf Carrier-Niveau ermöglichen. Magma ist 3GPP-Generation (2G, 3G, 4G oder kommende 5G-Netzwerke) und unabhängig vom Zugangsnetzwerk (Mobilfunk oder WLAN). Es kann ein Funkzugangsnetzwerk mit minimalem Entwicklungs- und Bereitstellungsaufwand flexibel unterstützen.
OpenRAN ist ein intelligentes Radio Access Network (RAN), das auf Allzweckplattformen mit offener Schnittstelle zwischen softwaredefinierten Funktionen integriert ist. Das offene RANecosystem ermöglicht enorme Flexibilität und Interoperabilität bei völliger Offenheit für den Einsatz bei mehreren Anbietern.
Open vSwitch (OVS) ist ein mehrschichtiger virtueller Open-Source-Switch in Produktionsqualität, der unter der Open-Source-Apache-2.0-Lizenz lizenziert ist. Es ist darauf ausgelegt, eine umfassende Netzwerkautomatisierung durch programmgesteuerte Erweiterung zu ermöglichen und gleichzeitig Standardverwaltungsschnittstellen und -protokolle (NetFlow, sFlow, IPFIX, RSPAN, CLI, LACP, 802.1ag) zu unterstützen.
Edge ist ein verteiltes Computing-Framework, das Unternehmensanwendungen näher an Datenquellen wie IoT-Geräte oder lokale Edge-Server bringt. Diese Nähe zu den Daten an ihrer Quelle kann erhebliche Geschäftsvorteile mit sich bringen, darunter schnellere Erkenntnisse, verbesserte Reaktionszeiten und eine bessere Bandbreitenverfügbarkeit.
Multi-Access Edge Computing (MEC) ist eine Industry Specification Group (ISG) innerhalb von ETSI mit dem Ziel, eine standardisierte, offene Umgebung zu schaffen, die die effiziente und nahtlose Integration von Anwendungen von Anbietern, Dienstanbietern und Drittanbietern in Multi-Vendor-Multi-Anwendungen ermöglicht -Zugriff auf Edge-Computing-Plattformen.
Bei Virtualized Network Functions (VNFs) handelt es sich um eine Softwareanwendung, die in einer Network Functions Virtualization (NFV)-Implementierung verwendet wird, über klar definierte Schnittstellen verfügt und eine oder mehrere Komponenten-Netzwerkfunktionen auf definierte Weise bereitstellt. Ein Sicherheits-VNF stellt beispielsweise Network Address Translation (NAT) und Firewall-Komponentenfunktionen bereit.
Cloud-Native Network Functions (CNF) ist eine Netzwerkfunktion, die für die Ausführung in Containern entwickelt und implementiert wurde. CNFs erben alle cloudnativen Architektur- und Betriebsprinzipien, einschließlich Lebenszyklusmanagement, Agilität, Belastbarkeit und Beobachtbarkeit von Kubernetes (K8s).
Bei der Physical Network Function (PNF) handelt es sich um einen physischen Netzwerkknoten, der keiner Virtualisierung unterzogen wurde. Sowohl PNFs als auch VNFs (Virtualized Network Functions) können zur Bildung eines gesamten Netzwerkdienstes verwendet werden.
Die Network Functions Virtualization Infrastructure (NFVI) ist die Grundlage der gesamten NFV-Architektur. Es stellt die physische Rechen-, Speicher- und Netzwerkhardware bereit, die die VNFs hostet. Jeder NFVI-Block kann als NFVI-Knoten betrachtet werden und viele Knoten können geografisch bereitgestellt und gesteuert werden.
Virtualization-based Security (VBS) ist eine Hardware-Virtualisierungsfunktion zum Erstellen und Isolieren eines sicheren Speicherbereichs vom normalen Betriebssystem.
Hypervisor-Enforced Code Integrity (HVCI) ist ein Mechanismus, bei dem ein Hypervisor wie Hyper-V Hardwarevirtualisierung nutzt, um Kernel-Modus-Prozesse vor der Einschleusung und Ausführung von bösartigem oder nicht verifiziertem Code zu schützen. Die Validierung der Codeintegrität wird in einer sicheren Umgebung durchgeführt, die resistent gegen Angriffe durch Schadsoftware ist, und Seitenberechtigungen für den Kernelmodus werden vom Hypervisor festgelegt und verwaltet.
KVM (für Kernel-based Virtual Machine) ist eine vollständige Virtualisierungslösung für Linux auf x86-Hardware, die Virtualisierungserweiterungen (Intel VT oder AMD-V) enthält. Es besteht aus einem ladbaren Kernel-Modul, kvm.ko, das die Kern-Virtualisierungsinfrastruktur bereitstellt, und einem prozessorspezifischen Modul, kvm-intel.ko oder kvm-amd.ko.
QEMU ist ein schneller Prozessoremulator, der einen tragbaren dynamischen Übersetzer verwendet. QEMU emuliert ein vollständiges System, einschließlich eines Prozessors und verschiedener Peripheriegeräte. Es kann verwendet werden, um ein anderes Betriebssystem zu starten, ohne den PC neu zu starten, oder um Systemcode zu debuggen.
Hyper-V ermöglicht die Ausführung virtualisierter Computersysteme auf einem physischen Host. Diese virtualisierten Systeme können genauso verwendet und verwaltet werden, als wären sie physische Computersysteme, sie existieren jedoch in einer virtualisierten und isolierten Umgebung. Eine spezielle Software namens Hypervisor verwaltet den Zugriff zwischen den virtuellen Systemen und den physischen Hardwareressourcen. Virtualisierung ermöglicht eine schnelle Bereitstellung von Computersystemen, eine Möglichkeit, Systeme schnell wieder in einen zuvor bekanntermaßen guten Zustand wiederherzustellen, und die Möglichkeit, Systeme zwischen physischen Hosts zu migrieren.
VirtManager ist ein grafisches Tool zur Verwaltung virtueller Maschinen über libvirt. Die meiste Verwendung erfolgt mit virtuellen QEMU/KVM-Maschinen, aber Xen- und libvirt-LXC-Container werden gut unterstützt. Allgemeine Vorgänge für jeden libvirt-Treiber sollten funktionieren.
oVirt ist eine verteilte Open-Source-Virtualisierungslösung, die für die Verwaltung Ihrer gesamten Unternehmensinfrastruktur entwickelt wurde. oVirt verwendet den vertrauenswürdigen KVM-Hypervisor und basiert auf mehreren anderen Community-Projekten, darunter libvirt, Gluster, PatternFly und Ansible. Gegründet von Red Hat als Community-Projekt, auf dem Red Hat Enterprise Virtualization basiert und eine zentralisierte Verwaltung virtueller Maschinen und Computing ermöglicht , Speicher- und Netzwerkressourcen, über ein benutzerfreundliches webbasiertes Frontend mit plattformunabhängigem Zugriff.
HyperKit ist ein Toolkit zum Einbetten von Hypervisor-Funktionen in Ihre Anwendung. Es umfasst einen vollständigen Hypervisor, der auf xhyve/bhyve basiert und für die Bereitstellung einfacher virtueller Maschinen und Container optimiert ist. Es ist für die Verbindung mit übergeordneten Komponenten wie VPNKit und DataKit konzipiert. HyperKit unterstützt derzeit nur macOS mit dem Hypervisor.framework und ist damit eine Kernkomponente von Docker Desktop für Mac.
Die Intel® Graphics Virtualization Technology (Intel® GVT) ist eine vollständige GPU-Virtualisierungslösung mit vermitteltem Pass-Through, beginnend mit Intel Core(TM)-Prozessoren der 4. Generation mit Intel-Prozessorgrafiken (Broadwell und neuer). Es kann verwendet werden, um die GPU für mehrere virtuelle Gastmaschinen zu virtualisieren, wodurch eine nahezu native Grafikleistung in der virtuellen Maschine bereitgestellt wird und Ihr Host die virtualisierte GPU weiterhin normal nutzen kann.
Apple Hypervisor ist ein Framework, das Virtualisierungslösungen auf einem einfachen Hypervisor aufbaut, ohne Kernel-Erweiterungen von Drittanbietern. Hypervisor bietet C-APIs, sodass Sie mit Virtualisierungstechnologien im Benutzerbereich interagieren können, ohne Kernel-Erweiterungen (KEXTs) schreiben zu müssen. Daher sind die Apps, die Sie mit diesem Framework erstellen, für den Vertrieb im Mac App Store geeignet.
Apple Virtualization Framework ist ein Framework, das High-Level-APIs zum Erstellen und Verwalten virtueller Maschinen auf Apple-Chips und Intel-basierten Mac-Computern bereitstellt. Dieses Framework wird zum Starten und Ausführen eines Linux-basierten Betriebssystems in einer von Ihnen definierten benutzerdefinierten Umgebung verwendet. Es unterstützt auch die Virtio-Spezifikation, die Standardschnittstellen für viele Gerätetypen definiert, darunter Netzwerk-, Socket-, serielle Port-, Speicher-, Entropie- und Memory-Ballon-Geräte.
Apple Paravirtualized Graphics Framework ist ein Framework, das hardwarebeschleunigte Grafiken für macOS implementiert, die in einer virtuellen Maschine ausgeführt werden, im Folgenden als Gast bezeichnet. Das Betriebssystem stellt einen Grafiktreiber bereit, der im Gast ausgeführt wird und mit dem Framework im Host-Betriebssystem kommuniziert, um die Vorteile der Metal-beschleunigten Grafik zu nutzen.
Cloud Hypervisor ist ein Open-Source-Virtual Machine Monitor (VMM), der auf KVM läuft. Das Projekt konzentriert sich ausschließlich auf die Ausführung moderner Cloud-Workloads auf einer begrenzten Anzahl von Hardwarearchitekturen und Plattformen. Unter Cloud-Workloads versteht man solche, die normalerweise von Kunden innerhalb eines Cloud-Anbieters ausgeführt werden. Cloud Hypervisor ist in Rust implementiert und basiert auf den Rust-VMM-Kisten.
VMware vSphere Hypervisor ist ein Bare-Metal-Hypervisor, der Server virtualisiert; So können Sie Ihre Anwendungen konsolidieren und gleichzeitig Zeit und Geld bei der Verwaltung Ihrer IT-Infrastruktur sparen.
Xen konzentriert sich auf die Weiterentwicklung der Virtualisierung in einer Reihe verschiedener kommerzieller und Open-Source-Anwendungen, darunter Servervirtualisierung, Infrastructure as a Services (IaaS), Desktop-Virtualisierung, Sicherheitsanwendungen, eingebettete und Hardware-Appliances sowie Automobil/Luftfahrt.
Ganeti ist ein Cluster-Management-Tool für virtuelle Maschinen, das auf vorhandenen Virtualisierungstechnologien wie Xen oder KVM und anderer Open-Source-Software aufbaut. Nach der Installation übernimmt das Tool die Verwaltung der virtuellen Instanzen (Xen DomU).
Packer ist ein Open-Source-Tool zum Erstellen identischer Maschinen-Images für mehrere Plattformen aus einer einzigen Quellkonfiguration. Packer ist leichtgewichtig, läuft auf allen wichtigen Betriebssystemen und ist hochleistungsfähig, da er Maschinen-Images für mehrere Plattformen parallel erstellt. Packer ersetzt kein Konfigurationsmanagement wie Chef oder Puppet. Tatsächlich kann Packer beim Erstellen von Images Tools wie Chef oder Puppet verwenden, um Software auf dem Image zu installieren.
Vagrant ist ein Tool zum Erstellen und Verwalten von virtuellen Maschinenumgebungen in einem einzigen Workflow. Mit einem benutzerfreundlichen Workflow und dem Fokus auf Automatisierung verkürzt Vagrant die Einrichtungszeit der Entwicklungsumgebung, erhöht die Produktionsparität und macht die Ausrede „funktioniert auf meinem Rechner“ zu einem Relikt der Vergangenheit. Es bietet einfach zu konfigurierende, reproduzierbare und tragbare Arbeitsumgebungen, die auf branchenüblicher Technologie basieren und durch einen einzigen konsistenten Workflow gesteuert werden, um die Produktivität und Flexibilität von Ihnen und Ihrem Team zu maximieren.
Parallels Desktop ist ein Desktop-Hypervisor, der die schnellste, einfachste und leistungsstärkste Anwendung zum Ausführen von Windows/Linux auf Mac (einschließlich des neuen Apple M1-Chips) und ChromeOS bereitstellt.
VMware Fusion ist ein Desktop-Hypervisor, der Entwicklern und IT-Experten auf dem Mac virtuelle Desktop- und „Server“-Maschinen, Container und Kubernetes-Cluster bereitstellt.
VMware Workstation ist ein gehosteter Hypervisor, der auf x64-Versionen von Windows- und Linux-Betriebssystemen läuft; Es ermöglicht Benutzern, virtuelle Maschinen auf einer einzelnen physischen Maschine einzurichten und diese gleichzeitig zusammen mit der tatsächlichen Maschine zu verwenden.
Zurück nach oben
Parallel Computing ist eine Computerumgebung, in der zwei oder mehr Prozessoren (Kerne, Computer) gleichzeitig arbeiten, um ein einzelnes Problem zu lösen. Große Probleme lassen sich oft in kleinere aufteilen, die dann gleichzeitig gelöst werden können. Es gibt verschiedene Formen des parallelen Rechnens: [Bitebene]https://en.wikipedia.org/wiki/Bit-level_parallelism), Befehlsebene, Daten- und Aufgabenparallelität.
Beschleunigtes Rechnen - Schulung | NVIDIA-Entwickler
Grundlagen des beschleunigten Rechnens mit CUDA Python-Kurs | NVIDIA
Top-Parallel-Computing-Kurse online | Coursera
Top-Parallel-Computing-Kurse online | Udemy
Masterclass für wissenschaftliches Rechnen: Parallel und verteilt
Lernen Sie paralleles Rechnen in Python | Udemy
GPU-Computing in Vulkan | Udemy
Kurse zum Thema Hochleistungsrechnen | Udacity
Parallel-Computing-Kurse | Stanford Online
Paralleles Rechnen | MIT OpenCourseWare
Multithread-Parallelität: Sprachen und Compiler | MIT OpenCourseWare
Paralleles Rechnen mit CUDA | Pluralsicht
HPC-Architektur und Systemdesign | Intel
MATLAB Parallel Server™ ist ein Tool, mit dem Sie MATLAB®-Programme und Simulink®-Simulationen auf Cluster und Clouds skalieren können. Sie können Prototypen Ihrer Programme und Simulationen auf dem Desktop erstellen und diese dann ohne Neucodierung auf Clustern und Clouds ausführen. MATLAB Parallel Server unterstützt Batch-Jobs, interaktive parallele Berechnungen und verteilte Berechnungen mit großen Matrizen.
Parallel Computing Toolbox™ ist ein Tool, mit dem Sie rechen- und datenintensive Probleme mithilfe von Multicore-Prozessoren, GPUs und Computerclustern lösen können. Hochrangige Konstrukte wie parallele For-Schleifen, spezielle Array-Typen und parallelisierte numerische Algorithmen ermöglichen Ihnen die Parallelisierung von MATLAB®-Anwendungen ohne CUDA- oder MPI-Programmierung. Mit der Toolbox können Sie parallelfähige Funktionen in MATLAB und anderen Toolboxen verwenden. Sie können die Toolbox mit Simulink® verwenden, um mehrere Simulationen eines Modells parallel auszuführen. Programme und Modelle können sowohl im interaktiven als auch im Batch-Modus ausgeführt werden.
Die Statistics and Machine Learning Toolbox™ ist ein Tool, das Funktionen und Apps zum Beschreiben, Analysieren und Modellieren von Daten bereitstellt. Sie können deskriptive Statistiken, Visualisierungen und Clustering für die explorative Datenanalyse verwenden; Wahrscheinlichkeitsverteilungen an Daten anpassen; Generieren Sie Zufallszahlen für Monte-Carlo-Simulationen und führen Sie Hypothesentests durch. Mit Regressions- und Klassifizierungsalgorithmen können Sie Schlussfolgerungen aus Daten ziehen und Vorhersagemodelle erstellen, entweder interaktiv mithilfe der Classification and Regression Learner-Apps oder programmgesteuert mithilfe von AutoML.
OpenMP ist eine API, die die plattformübergreifende parallele Programmierung mit gemeinsamem Speicher in C/C++ und Fortran unterstützt. Die OpenMP-API definiert ein tragbares, skalierbares Modell mit einer einfachen und flexiblen Schnittstelle für die Entwicklung paralleler Anwendungen auf Plattformen vom Desktop bis zum Supercomputer.
CUDA® ist eine von NVIDIA entwickelte Parallel-Computing-Plattform und ein Programmiermodell für allgemeines Computing auf Grafikprozessoren (GPUs). Mit CUDA können Entwickler Computeranwendungen erheblich beschleunigen, indem sie die Leistung von GPUs nutzen.
Message Passing Interface (MPI) ist ein standardisierter und portabler Nachrichtenübermittlungsstandard, der für den Betrieb auf parallelen Computerarchitekturen entwickelt wurde.
Microsoft MPI (MS-MPI) ist eine Microsoft-Implementierung des Standards für Nachrichtenabschluss-Schnittstellen für die Entwicklung und Ausführung paralleler Anwendungen auf der Windows-Plattform.
Slurm ist ein kostenloser Open-Source-Workload-Manager, der speziell entwickelt wurde, um die anspruchsvollen Anforderungen von High Performance Computing zu erfüllen.
Tragbares Batch -System (PBS) Pro ist ein schneller, leistungsfähiger Workload -Manager, der die Produktivität verbessern, die Nutzung und Effizienz optimiert und die Verwaltung für Cluster, Wolken und Supercomputer vereinfacht.
AWS Parallelcluster ist ein AWS-unterstütztes Open-Source-Cluster-Management-Tool, mit dem Sie CLUSHER (HPC) auf AWS bereitstellen und verwalten können. Parallelcluster verwendet eine einfache Textdatei, um alle für Ihre HPC -Anwendungen benötigten Ressourcen automatisiert und sicher zu modellieren und bereitzustellen.
Numba ist eine Open-Source-Optimierungspiler für Python, die von Anaconda, Inc. gesponsert wird. Es verwendet das LLVM-Compiler-Projekt, um Maschinencode von Python Syntax zu generieren. Numba kann eine große Untergruppe von numerisch fokussierten Python zusammenstellen, einschließlich vieler Numpy-Funktionen. Darüber hinaus unterstützt NUMBA die automatische Parallelisierung von Schleifen, die Erzeugung von GPU-beschleunigten Code und die Erstellung von UFuncs und C-Rückrufe.
Chainer ist ein Python-basierter Deep Learning-Framework, der auf Flexibilität abzielt. Es liefert automatische Differenzierungs-APIs basierend auf dem Define-by-Run-Ansatz (dynamische Rechengrafs) sowie objektorientierter APIs auf hoher Ebene, um neuronale Netzwerke aufzubauen und zu trainieren. Es unterstützt auch CUDA/CUDNN mit Cupy für Hochleistungstraining und Inferenz.
XGBOOST ist eine optimierte verteilte Gradienten -Boosting -Bibliothek, die hocheffizient, flexibel und tragbar ist. Es implementiert Algorithmen für maschinelles Lernen im Rahmen des Gradienten -Boosting -Frameworks. XGBOOST bietet eine parallele Baumsteigerung (auch als GBDT, GBM bekannt), die viele Datenwissenschaftsprobleme schnell und genau löst. Es unterstützt verteilte Schulungen auf mehreren Maschinen, einschließlich AWS-, GCE-, Azure- und Garnclustern. Außerdem kann es in Flink-, Spark- und andere Cloud -Datenflow -Systeme integriert werden.
Cuml ist eine Reihe von Bibliotheken, die Algorithmen für maschinelles Lernen und mathematische Primitive -Funktionen implementieren, die kompatible APIs mit anderen Rapids -Projekten teilen. Mit Cuml ermöglicht es Datenwissenschaftlern, Forschern und Software -Ingenieuren, herkömmliche tabellarische ML -Aufgaben auf GPUs auszuführen, ohne sich auf die Details der CUDA -Programmierung einzulassen. In den meisten Fällen entspricht die Python-API von Cuml mit der API von Scikit-Learn.
Apache Cassandra ™ ist eine Open -Source -NoSQL -verteilte Datenbank, die von Tausenden von Unternehmen für Skalierbarkeit und hohe Verfügbarkeit vertraut ist, ohne die Leistung zu beeinträchtigen. Cassandra bietet lineare Skalierbarkeit und nachgewiesene Fehlertoleranz gegenüber Rohstoffhardware oder Cloud-Infrastruktur zur perfekten Plattform für missionskritische Daten.
Apache Flume ist ein verteilter, zuverlässiger und verfügbarer Service zum effizienten Sammeln, Aggregieren und Verschieben großer Mengen an Streaming -Ereignisdaten.
Apache Mesos ist ein Cluster -Manager, der eine effiziente Ressourcenisolierung und -heilung über verteilte Anwendungen oder Frameworks bietet. Es kann Hadoop, Jenkins, Spark, Aurora und andere Frameworks auf einem dynamisch gemeinsam genutzten Knotenpool ausführen.
Apache Hbase ™ ist ein verteilter Big-Data-Store von Open-Source, NoSQL. Es ermöglicht zufälligen, streng konsistenten Echtzeitzugriff auf Petabyte von Daten. HBase ist sehr effektiv für die Behandlung großer, spärlicher Datensätze. HBase dient als direkte Eingabe und Ausgabe für das Apache MapReduce-Framework für Hadoop und arbeitet mit Apache Phoenix zusammen, um SQL-ähnliche Abfragen über HBase-Tabellen zu ermöglichen.
Hadoop Distributed Dateisystem (HDFS) ist ein verteiltes Dateisystem, das große Datensätze übernimmt, die auf Warenhardware ausgeführt werden. Es wird verwendet, um einen einzelnen Apache -Hadoop -Cluster auf Hunderte (und sogar Tausende) Knoten zu skalieren. HDFS ist eine der Hauptkomponenten von Apache Hadoop, die anderen sind MapReduce und Garn.
Apache Arrow ist ein sprachunabhängiges Spaltenspeicherformat für flache und hierarchische Daten, das für effiziente analytische Operationen auf modernen Hardware wie CPUs und GPUs organisiert ist.
Apache Spark ™ ist eine einheitliche Analyse-Engine für die groß angelegte Datenverarbeitung. Es bietet hochrangige APIs in Scala, Java, Python und R sowie einer optimierten Engine, die allgemeine Berechnungsdiagramme für die Datenanalyse unterstützt. Es unterstützt auch eine Reihe von Tools auf höherer Ebene, einschließlich Spark SQL für SQL und DataFrames, MLLIB für maschinelles Lernen, Graphx für die Graphenverarbeitung und strukturiertes Streaming für die Stream-Verarbeitung.
Apache Predictionio ist ein Framework für maschinelles Lernen von Open Source für Entwickler, Datenwissenschaftler und Endbenutzer. Es unterstützt die Ereignissammlung, die Bereitstellung von Algorithmen, die Bewertung und die Abfragung von prädiktiven Ergebnissen über REST -APIs. Es basiert auf skalierbaren Open -Source -Diensten wie Hadoop, HBase (und anderen DBs), Elasticsearch, Funken und implementiert eine sogenannte Lambda -Architektur.
Microsoft Project Bonsai ist eine KI-Plattform mit niedrigem Code, die die Entwicklung von AI-betriebenen Automatisierungen und Teil der Autonomous Systems Suite von Microsoft beschleunigt. Bonsai wird verwendet, um KI -Komponenten zu erstellen, die Anleitungen für die Bediener bieten oder unabhängige Entscheidungen treffen können, um Prozessvariablen zu optimieren, die Produktionseffizienz zu verbessern und Ausfallzeiten zu verringern.
Cluster Manager für Apache Kafka (CMAK) ist ein Tool zum Verwalten von Apache Kafka -Clustern.
Bigdl ist eine verteilte Deep Learning Library für Apache Spark. Mit BigDL können Benutzer ihre Deep -Learning -Anwendungen als Standard -Spark -Programme schreiben, die direkt über vorhandene Spark- oder Hadoop -Cluster ausgeführt werden können.
Apache Cassandra ™ ist eine Open -Source -NoSQL -verteilte Datenbank, die von Tausenden von Unternehmen für Skalierbarkeit und hohe Verfügbarkeit vertraut ist, ohne die Leistung zu beeinträchtigen. Cassandra bietet lineare Skalierbarkeit und nachgewiesene Fehlertoleranz gegenüber Rohstoffhardware oder Cloud-Infrastruktur zur perfekten Plattform für missionskritische Daten.
Apache Flume ist ein verteilter, zuverlässiger und verfügbarer Service zum effizienten Sammeln, Aggregieren und Verschieben großer Mengen an Streaming -Ereignisdaten.
Apache Mesos ist ein Cluster -Manager, der eine effiziente Ressourcenisolierung und -heilung über verteilte Anwendungen oder Frameworks bietet. Es kann Hadoop, Jenkins, Spark, Aurora und andere Frameworks auf einem dynamisch gemeinsam genutzten Knotenpool ausführen.
Apache Beam ist ein Open Source, ein einheitliches Modell und ein Satz von sprachspezifischen SDKs zum Definieren und Ausführen von Datenverarbeitungs-Workflows sowie zur Aufnahme und Integration von Daten, wodurch Unternehmensintegrationsmuster (EIPs) und domänenspezifische Sprachen (DSLs) unterstützt werden.
Jupyter Notebook ist eine Open-Source-Webanwendung, mit der Sie Dokumente erstellen und freigeben können, die Live-Code, Gleichungen, Visualisierungen und narrative Text enthalten. Jupyter wird in Branchen, die Datenreinigung und -transformation, numerische Simulation, statistische Modellierung, Datenvisualisierung, Datenwissenschaft und maschinelles Lernen ausführlich verwendet.
NEO4J ist die einzige Graph-Datenbank für Unternehmensstärke, die den nativen Graphspeicher, die erweiterte Sicherheit, die skalierbare, spezoptimierte Architektur und die Einhaltung der Säure kombiniert, um die Vorhersehbarkeit und Integrität von relationsbasierten Abfragen sicherzustellen.
Elasticsearch ist eine Suchmaschine, die auf der Lucene -Bibliothek basiert. Es bietet eine verteilte, multitenant-fähige Volltext-Suchmaschine mit einer HTTP-Weboberfläche und schemafreien JSON-Dokumenten. Elasticsearch wird in Java entwickelt.
Logstash ist ein Tool zum Verwalten von Ereignissen und Protokollen. Bei allgemeiner Anwendung umfasst der Begriff ein größeres System der Protokollabwicklung, Verarbeitung, Speicherung und Suchaktivitäten.
Kibana ist ein Open -Source -Datenvisualisierungs -Plugin für Elasticsearch. Es bietet Visualisierungsfunktionen zusätzlich zu dem in einem Elasticsearch -Cluster indizierten Inhalt. Benutzer können Balken-, Linien- und Streudiagramme oder Kreisdiagramme und Karten auf großen Datenmengen erstellen.
Trino ist eine verteilte SQL -Abfrage -Engine für Big Data. Es ist in der Lage, ETL -Prozesse enorm zu beschleunigen, ihnen alle eine Standard -SQL -Anweisung verwenden und mit zahlreichen Datenquellen und Zielen im selben System zusammenarbeiten.
Extract, Transformation und Last (ETL) ist eine Datenpipeline, mit der Daten aus verschiedenen Quellen erfasst, die Daten nach Geschäftsregeln transformiert und in einen Zieldatenspeicher geladen werden.
Redis (Remote Dictionary Server) ist eine Open Source (BSD lizenziert), In-Memory-Datenstrukturspeicher, die als Datenbank, Cache und Message Broker verwendet wird. Es bietet Datenstrukturen wie Zeichenfolgen, Hashes, Listen, Sets, sortierte Sets mit Bereichsabfragen, Bitmaps, Hyperloglogs, Geospatial -Indexen und Streams.
Apache OpenNLP ist eine Open-Source-Bibliothek für ein maschinelles Lernbasis-Toolkit, das bei der Verarbeitung von natürlichen Sprachtext verwendet wird. Es verfügt über eine API für Anwendungsfälle wie die Erkennung von Entität, Satzerkennung, POS-Tagging (Teil-of-Speech), Tokenization Merkmalextraktion, Chunking, Parsing und Coreference-Auflösung.
Apache Airflow ist eine Open-Source-Workflow-Management-Plattform, die von der Community erstellt wurde, um die Workflows mit Autor, Planen und zu überwachen. Installieren. Prinzipien. Skalierbar. Airflow verfügt über eine modulare Architektur und verwendet eine Nachrichtenwarteschlange, um eine willkürliche Anzahl von Arbeitnehmern zu orchestrieren. Der Luftstrom ist bereit, in Unendlichkeit zu skalieren.
Open Neural Network Exchange (ONNX) ist ein offenes Ökosystem, das KI -Entwicklern ermöglicht, die richtigen Tools zu wählen, während sich ihr Projekt weiterentwickelt. ONNX bietet ein Open -Source -Format für KI -Modelle, sowohl Deep Learning als auch traditionelles ML. Es definiert ein erweiterbares Berechnungsgraphenmodell sowie Definitionen integrierter Operatoren und Standarddatentypen.
Apache MXNET ist ein Deep -Learning -Framework, das sowohl für Effizienz als auch für Flexibilität entwickelt wurde. Sie können symbolische und imperative Programmierung mischen, um die Effizienz und Produktivität zu maximieren. Im Kern enthält MXNET einen dynamischen Abhängigkeitsplaner, der sowohl symbolische als auch imperative Operationen im laufenden Fliegen automatisch parallelisiert. Eine Diagrammoptimierungsschicht darüber, die eine symbolische Ausführung schnell und speicher macht. MXNET ist tragbar und leicht und skaliert effektiv mit mehreren GPUs und mehreren Maschinen. Unterstützung für Python, R, Julia, Scala, Go, JavaScript und mehr.
Autogluon ist Toolkit für Deep Learning, das Aufgaben des maschinellen Lernens automatisiert, sodass Sie in Ihren Anwendungen problemlos eine starke Vorhersageleistung erzielen können. Mit nur wenigen Codezeilen können Sie Deep-Learning-Modelle mit hohen Genauigkeit zu Tabellen-, Bild- und Textdaten einsetzen.
Zurück nach oben
Open Computing Language (OpenCL) ist ein offener Standard für die parallele Programmierung heterogener Plattformen, die aus CPUs, GPUs und anderen Hardwarebeschleunigern bestehen, die in Supercomputern, Cloud -Servern, PCs, mobilen Geräten und eingebetteten Plattformen zu finden sind.
Openencl | GitHub
Khronos Group | GitHub
Khronos -Technologiekurse und Schulungen
OpenCL -Tutorials - StreamHPC
Einführung in Intel® OpenCL -Tools
Openencl | NVIDIA -Entwickler
Einführung in OpenCL auf FPGAS -Kurs | Coursera
Kompilieren von OpenCl -Kernel zu FPGAS -Kurs | Coursera
Renderdoc ist ein eigenständiger Grafikdebugger, der eine schnelle und einfache Einfassung und detaillierte Einführung jeder Anwendung mit Vulkan, D3D11, OpenGL & OpenGL ES oder D3D12 über Windows, Linux, Android, Stadia oder Nintendo Switch ™ ermöglicht.
Gpuverify ist ein Instrument zur formalen Analyse von GPU -Kerneln, die in OpenCL und CUDA geschrieben wurden. Das Tool kann beweisen, dass Kernel frei von bestimmten Arten von Defekten sind, einschließlich Datenrennen.
OpenCL ICD Loader ist ein Installierbarer Client -Treibermechanismus (ICD), mit dem Entwickler Anwendungen gegen einen installierbaren Client -Treiber -Loader (ICD -Loader) erstellen können, anstatt deren Anwendungen mit einer bestimmten OpenCL -Implementierung zu verknüpfen.
Clblas ist eine Softwarebibliothek mit BLAS -Funktionen, die in OpenCL geschrieben wurden.
CLFFT ist eine Softwarebibliothek mit FFT -Funktionen, die in OpenCL geschrieben wurden.
Clsparse ist eine Softwarebibliothek mit spärlichen Funktionen, die in OpenCL geschrieben wurden.
CLRNG ist eine OpenCL -basierte Softwarebibliothek mit Funktionen für die Erzeugung von Zufallszahlen.
CLSmith ist ein Tool, das zwei vorhandene Testtechniken, zufällige Differenzentests und Äquivalenzmodulo-Inputs (EMI) verwendet, um sie in einer Vielzahl von OpenCL anzuwenden. Das Hauptmerkmal ist die Erzeugung zufälliger OpenCL -Kernel, die viele Merkmale der Sprache ausüben. Es bringt auch eine neuartige Idee, EMI über die Injektion von Dead-Code anzuwenden.
Oclgrind ist ein virtueller OpenCL -Gerätesimulator, einschließlich einer OpenCL -Laufzeit mit ICD -Unterstützung. Ziel ist es, eine Plattform für die Erstellung von Tools zur Unterstützung der OpenCL -Entwicklung bereitzustellen. Insbesondere dieses Projekt implementiert derzeit Dienstprogramme zum Debuggen von Speicherzugriffsfehlern, zum Erkennen von Datenrammen und Barriere-Divergenz, zum Sammeln von Anweisungshistogrammen und zum interaktiven OpenCL-Kernel-Debugging. Der Simulator basiert auf einem Dolmetscher für LLVM IR.
NVIDIA® NSIGHT ™ Visual Studio Edition ist eine Anwendungsentwicklungsumgebung für heterogene Plattformen, die das GPU -Computer in Microsoft Visual Studio einbringt. Mit NVIDIA NSIGHT ™ VSE können Sie integrierte GPU -Kernel und native CPU -Code erstellen und debuggen sowie den Zustand der GPU und des Speichers inspizieren.
Der Radeon ™ GPU -Profiler ist ein Leistungstool, das von Entwicklern zum Optimieren von DirectX®12-, Vulkan®- und Opencl ™ -Anwendungen für AMD RDNA ™ und GCN -Hardware verwendet werden kann.
Radeon ™ GPU Analyzer ist ein Compiler- und Codeanalyse -Tool für Vulkan®, DirectX®, OpenGL® und OpenCL ™.
Amd Radeon Prorender ist eine leistungsstarke physikalisch basierende Rendering-Engine, mit der kreative Fachleute atemberaubend fotorealistische Bilder auf praktisch jeder GPU, jeder CPU und jedem Betriebssystem in über einem Dutzend führenden digitalen Inhaltserstellungen und CAD-Anwendungen produzieren können.
Nvidia Omniverse ist eine leistungsstarke, multi-gpu-, Echtzeit-Simulations- und Kollaborationsplattform für 3D-Produktionspipelines, die auf der universellen Szenenbeschreibung von Pixar und NVIDIA RTX basieren.
Intel® SDK für Opencl ™ -Anwendungen ist eine rechnungsintensive Workloads von Offload. Passen Sie heterogene Berechnung an und beschleunigen Sie die Leistung mit kernbasierter Programmierung.
NVIDIA NGC ist ein Hub für die GPU-optimierte Software für Deep-Lernen, maschinelles Lernen und Hochleistungs-Computing (HPC) -Workloads.
NVIDIA NGC-Container sind ein Register, das Forschern, Datenwissenschaftlern und Entwicklern einfachen Zugriff auf einen umfassenden Katalog der GPU-beschleunigten Software für KI, maschinelles Lernen und HPC bietet. Diese Container nutzen die NVIDIA-GPUs vor Ort und in der Cloud voll aus.
Nvidia Cudnn ist eine GPU-beschleunigte Bibliothek von Primitiven für tiefe neuronale Netze. CUDNN bietet hochgestaltete Implementierungen für Standardroutinen wie Vorwärts- und Rückwärtsverfolgung, Pooling, Normalisierung und Aktivierungsschichten. CUDNN beschleunigt weit verbreitete Deep -Lern -Frameworks, einschließlich Caffe2, Chainer, Keras, Matlab, Mxnet, Pytorch und TensorFlow.
NVIDIA Container Toolkit ist eine Sammlung von Tools und Bibliotheken, mit denen Benutzer GPU -beschleunigte Docker -Container erstellen und ausführen können. Das Toolkit enthält eine Container -Laufzeitbibliothek und Dienstprogramme, um Container automatisch so zu konfigurieren, dass NVIDIA -GPUs verwendet werden.
Zurück nach oben
Cuda Toolkit. Quelle: Nvidia -Entwickler CUDA
CUDA ist eine parallele Computerplattform und Programmiermodell, die von NVIDIA für allgemeine Computing auf grafischen Verarbeitungseinheiten (GPUs) entwickelt wurde. Mit CUDA können Entwickler die Computeranwendungen drastisch beschleunigen, indem sie die Leistung von GPUs nutzen. In GPU-beschleunigten Anwendungen läuft der sequentielle Teil der Workload auf der CPU, die für Single-Threaden optimiert ist. Der intensive Teil der Anwendung läuft parallel auf Tausenden von GPU -Kernen. Bei der Verwendung von CUDA können Entwickler in beliebten Sprachen wie C, C ++, Forran, Python und Matlab programmieren.
CUDA -Toolkit -Dokumentation
Cuda Schnellstartführer
CUDA auf WSL
CUDA -GPU -Unterstützung für Tensorflow
Nvidia Deep Learning Cudnn Dokumentation
Nvidia GPU Cloud -Dokumentation
NVIDIA NGC ist ein Hub für die GPU-optimierte Software für Deep-Lernen, maschinelles Lernen und Hochleistungs-Computing (HPC) -Workloads.
NVIDIA NGC-Container sind ein Register, das Forschern, Datenwissenschaftlern und Entwicklern einfachen Zugriff auf einen umfassenden Katalog der GPU-beschleunigten Software für KI, maschinelles Lernen und HPC bietet. Diese Container nutzen die NVIDIA-GPUs vor Ort und in der Cloud voll aus.
CUDA Toolkit ist eine Sammlung von Tools und Bibliotheken, die eine Entwicklungsumgebung für die Erstellung hochleistungsfähiger GPU-Bewertungsanwendungen bieten. Mit dem CUDA-Toolkit können Sie Ihre Anwendungen auf GPU-bewerteten eingebetteten Systemen, Desktop-Workstations, Unternehmens-Rechenzentren, Cloud-basierten Plattformen und HPC-Supercomputern entwickeln, optimieren und bereitstellen. Das Toolkit umfasst GPU-beschleunigte Bibliotheken, Debugging- und Optimierungstools, einen C/C ++-Compiler und eine Laufzeitbibliothek, um Ihre Anwendung auf wichtigen Architekturen einschließlich X86 zu erstellen und bereitzustellen.