mboost-dp1

Nvidia

Nvidia klar med store nyheder i CUDA 6

- Via Nvidia dev blog - , redigeret af Net_Srak

Nvidia har sideløbende med understøttelse af DirectX og OpenGL/CL længe haft deres eget programmeringssprog, kaldet CUDA, til sine GPU’er, som gør det muligt at udnytte regnekraften i grafikprocessorerne til andet end grafik. Nu er det kommet i en ny udgave.

CUDA 6 introducerer en række nyheder og forbedringer, hvoraf flere er så omfattende, at Nvidia selv kalder dem de mest betydelige i CUDAs historie.

En af disse forbedringer er en ny måde at håndtere hukommelse. Hvor der hidtil har været forskel på tilgang til hukommelse for CPU og GPU, sker dette nu på samme måde.

Mark Harris, Nvidia skrev:
Managed memory is accessible to both the CPU and GPU using a single pointer. The key is that the system automatically migrates data allocated in Unified Memory between host and device so that it looks like CPU memory to code running on the CPU, and like GPU memory to code running on the GPU.

Med den nye måde at håndtere hukommelse på, vil det blive nemmere at udvikle programmer til platformen.

Ialt fremhæver Nvidia fem nyheder ved CUDA 6, hvor af den ene er ovennævnte. Du kan finde en gennemgang af punkterne, som du kan se i listen herunder, på Nvidias hjemmeside ved at følge linket til kilden.
[list][li]Support for Unified Memory[/li]
[li]CUDA on Tegra K1 mobile/embedded system-on-a-chip[/li]
[li]XT and Drop-In library interfaces[/li]
[li]Remote development in NSight Eclipse Edition[/li]
[li]Many improvements to the CUDA developer tools[/li][/list]





Gå til bund
Gravatar #1 - Montago.NET
23. apr. 2014 11:41
CUDA er programmering af de mange Unified Shaders som de nye kort har og kan ikke rigtig sammenlignes med DirectX og OpenGL som er abstrakte API'er til alle funktioner som kortet understøtter...

CUDA er en avanceret udgave af HLSL (High Level Shader Language) som er en DirectX version af Shader programmering.

AMD har deres egen variant kaldet AMD APP og Microsoft kalder det DirectCompute - men er i modsætning til Nvidia og AMD, cross platform ligesom OpenCL.
Gravatar #2 - Montago.NET
23. apr. 2014 12:00
Vil gerne lige rette lidt på mig selv:

CUDA og HLSL er to forskellige sprog og det ene bygger ikke på det andet. Det jeg mente var at CUDA ligesom HLSL, er Shader programmering. Hvor CUDA bare er mere avanceret og nemmere at skrive.
Gravatar #3 - CBM
23. apr. 2014 13:32
Montago.NET (1) skrev:
CUDA er programmering af de mange Unified Shaders som de nye kort har og kan ikke rigtig sammenlignes med DirectX og OpenGL som er abstrakte API'er til alle funktioner som kortet understøtter...

CUDA er en avanceret udgave af HLSL (High Level Shader Language) som er en DirectX version af Shader programmering.

AMD har deres egen variant kaldet AMD APP og Microsoft kalder det DirectCompute - men er i modsætning til Nvidia og AMD, cross platform ligesom OpenCL.


Det vil sige at OpenCL virker på både AMD og NVIDIA kort og både på Linux, OSX og Windows m.fl. ?

Hvis AMD APP og CUDA har nogle funktioner som er tilstrækkelige ens så kunne Microsoft måske med held tilføje et fælles API lag til deres OpenCL sådan at AMD APP funktioner og/eller CUDA funktioner kunne kaldes med fælles interface sammen med eventuelle relevante OpenCL funktioner.

Alternativt skulle der måske startes et joint API projekt sådan at udviklere ikke skal tage hensyn til to eller tre seperate shader systemer.
Gravatar #4 - markjensen
23. apr. 2014 13:45
CBM (3) skrev:
Alternativt skulle der måske startes et joint API projekt sådan at udviklere ikke skal tage hensyn til to eller tre seperate shader systemer.


Er det ikke det der er formålet med OpenCL? At lave en åben standard.
Gravatar #5 - tentakkelmonster
23. apr. 2014 14:56
Der vil nok også snart opstå et behov for decideret multi-tasking på GPU'en, for p.t. er det sådan, at når man kører noget tungt på CUDA, så hakker og sprutter éns system fordi GPU'en jo får travlt. - F.eks. hvis Blender står og renderer.

Hvis der så var et multitasking OS på grafikkortet, ville man kunne prioritere her-og-nu opgaver (som optegning af vinduer) højere end ting som godt kan vente et par millisekunder (f.eks. rendering af 3D.)
Gravatar #6 - arne_v
23. apr. 2014 15:09

haft deres eget programmeringssprog, kaldet CUDA


Montago.NET (2) skrev:
CUDA og HLSL er to forskellige sprog


Hm.

Jeg troede at CUDA var et API/library/framework som kunne bruges fra forskellige sprog typisk C/C++/Fortran.
Gravatar #7 - BetaLyte
23. apr. 2014 17:56
#5
Det vil jo kræve MIMD kerner på kortet, hvilket vil modvirke idéen med at en GPU er SIMD. Så skulle man sætte en CPU på, men det modvirker stadig idéen, og lyder egentlig ikke særlig effektivt. En GPU's styrke er jo netop SIMD, det er nok svært st lave om på.
Gravatar #8 - CBM
23. apr. 2014 18:42
#7: Du har ret, men der forskes dog stadig i alternativer til Single Instruction Multiple Data modellen til GPUer.
Gravatar #9 - emher
23. apr. 2014 19:07
#6 - Tænk, det var det også, sidst jeg kodede CUDA :)
Gravatar #10 - arne_v
23. apr. 2014 19:11
BetaLyte (7) skrev:
#5
Det vil jo kræve MIMD kerner på kortet, hvilket vil modvirke idéen med at en GPU er SIMD.


Hvorfor?

Du kan have multitasking CPU som ikke er MIMD. Hvorfor så ikke en multitasking GPU uden MIMD?

Altså jeg tror heller ikke på ideen, men jeg forstår ikke argumentet.
Gravatar #11 - BetaLyte
24. apr. 2014 07:02
#10
Jeg går ud fra du hentyder til time-slicing / sharing? Det vil jo heller ikke rigtig give mening på en GPU, der er udviklet til at foretage komplekse udregninger hurtigst muligt.

Der foregår dog sikkert noget time-slicing på consumer GPU'er alligevel, for at sikre at GUI'en er responsiv, men det giver jo ikke rigtig mening på systemer dedikerede til den slags store udregninger.

Alternativt, så kunne man måske overlade opdatering af skærmen til CPU'en, mens GPU'en gjorde sit arbejde?
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login