Et hybridt computersystem er et system med en heterogen hardwarecomputerstruktur. En kombination af alle computerenheder eller -enheder, såsom computere, der bruger CPU og GPU sammen. [1] [2]
Typisk er den vigtigste computerkomponent i højtydende computersystemer, herunder klynger , den centrale behandlingsenhed . Men allerede fra Intel486DX- processorerne dukkede et sådant element som en coprocessor op i computere , som kan betragtes som hybridisering på hardwareniveau.
I midten af 2000'erne begyndte grafikbehandlingsenheder (GPU'er) at blive brugt til computerformål . [en]
Hovedproblemet er at finde måder at udføre beregningsopgaver med en GPU. Da NVIDIA indså efterspørgslen efter sådan databehandling, introducerede NVIDIA CUDA hardware- og softwareplatformen i 2007, som giver dig mulighed for at køre vilkårlig kode på GPU'en. Før fremkomsten af CUDA var programmører nødt til at bygge hybridsystemer fra konventionelle videokort og programmere dem ved hjælp af komplekse grafiske API'er .
ATI har udviklet sine egne CUDA- modstykker til GPGPU-applikationer. Disse er ATI Stream og Close to Metal teknologier .
Den nye Intel Larrabee - arkitektur forventedes at understøtte GPGPU - teknologier . Men, faktisk udgivet som en del af Intel MIC -produktlinjen, understøttede Xeon Phi kun generel databehandling (kompatibel med x86_64), efter at have mistet funktionerne i grafikprocessoren. Efterfølgende varianter af Xeon Phi blev implementeret ikke kun i form af PCI Express-udvidelseskort, men også i form af en enkelt central processor.
GPU'ens høje computerkraft skyldes arkitekturens særegenheder. Hvis moderne CPU'er indeholder flere kerner (på de fleste moderne systemer fra 2 til 8x, 2018, på de nordlige kan der maksimalt være 64x), blev GPU'en oprindeligt skabt som en multi-core struktur, hvor antallet af kerner måles i hundredvis (eksempel - Nvidia 1070 har 1920 kerner). Forskellen i arkitektur bestemmer forskellen i driftsprincipperne. Hvis arkitekturen af CPU'en forudsætter sekventiel behandling af information, så var GPU'en historisk set beregnet til behandling af computergrafik, derfor er den designet til massiv parallel computing. [3]
Hver af disse to arkitekturer har sine egne fordele. CPU'en fungerer bedre med sekventielle opgaver. Med en stor mængde information, der behandles, har GPU'en en åbenlys fordel. Der er kun én betingelse - opgaven skal have parallelitet.
GPU'er har allerede nået det punkt, hvor mange applikationer fra den virkelige verden kan køre på dem med lethed og hurtigere end på multi-core systemer. Fremtidige computerarkitekturer vil blive hybridsystemer med GPU'er, der består af parallelle kerner og arbejder sammen med multi-core CPU'er. [fire]
Originaltekst (engelsk)[ Visskjule] GPU'er har udviklet sig til det punkt, hvor mange applikationer i den virkelige verden nemt kan implementeres på dem og kører betydeligt hurtigere end på multi-core systemer. Fremtidige computerarkitekturer vil være hybridsystemer med parallel-core GPU'er, der arbejder sammen med multi-core CPU'er. [5]Professor Jack Dongarra,
direktør for Innovative Computing Laboratory
, Tennessee State University
IBM Cell - processorerne , der blev brugt i Sony PlayStation 3 -spilkonsollerne , indeholdt to typer kerner: en PPE, en kerne til generelle formål og en række af 8 SPE-coprocessorer.
BOINC GRID Computing Software understøtter muligheden for at bruge GPU'en til at udføre computeropgaver. [6]
distribueret og parallel computing | Software til|
---|---|
Standarder, biblioteker | |
Overvågningssoftware | |
Kontrol software |