Overclock.net › Forums › Industry News › Hardware News › [TI] AMD thinks most programmers will not use CUDA or OpenCL
New Posts  All Forums:Forum Nav:

[TI] AMD thinks most programmers will not use CUDA or OpenCL - Page 7

post #61 of 64
Its not like most programs can even utilize CUDA or OpenCL.
Almost all the code written has no need to utilize heavy mathematical qoek, which is the main reason you want to utilize off-load to a GPU.

CUDA and OpenCL is meant for rendering, heavy calculations done in universities or research labs.
It was never written for heavy threaded applications or user oriented applications.

So I don't know what they are whining about.

I write CUDA applications to offload research data to GPU or render a movie. Its fun and easy to use once you get the hang of it.
In the two universities I have been in, people are utilizing OpenCL instead of waiting for CPU time on the linux farm.

The fact is, that nvidia CUDA is pretty easy to master over OpenCL or using the AMD drivers language. AMD are trying to seduce people to use their language by going to a different direction, as most places are trying to avoid the AMD cards like fire on this aspect. Trying to utilize GPGPU on two 7970 was such a horrible experience for me...
Main system
(16 items)
 
Editing PC
(8 items)
 
 
CPUGraphicsGraphicsRAM
E5-1680v2 AMD FirePro D700 AMD FirePro D700 64GB 1866mhz 
Hard DriveOSMonitorCase
1TB PCIE SSD OSX 10.10.x Dell U2713H Mac Pro 
  hide details  
Reply
Main system
(16 items)
 
Editing PC
(8 items)
 
 
CPUGraphicsGraphicsRAM
E5-1680v2 AMD FirePro D700 AMD FirePro D700 64GB 1866mhz 
Hard DriveOSMonitorCase
1TB PCIE SSD OSX 10.10.x Dell U2713H Mac Pro 
  hide details  
Reply
post #62 of 64
Quote:
Originally Posted by AlphaC View Post

Given the compute monster GCN is, it makes sense... see the very popular application of VLIW GPUs (HD 5000 series, HD6000 series) for password cracking but with more efficiency

VLIW GPUs are already pretty efficient at password cracking, GCN's main advantages seem to be in other areas.
Quote:
Originally Posted by Partol View Post

Maybe if Nvidia makes a cpu version of CUDA

NVIDIA has long had a CUDA emulator for x86 and PGI has a CUDA x86 compiler.

I'm pretty sure CPU PhysX still uses CUDA, to some extent.
Quote:
Originally Posted by Mopar63 View Post

You do know that nVidia has the CPU version basically broken and it does not make use of multicore CPUs effectively and the cosing is pure crap for optimization right? I seem to recall reading from a programmer somewhere that if nVidia optimized the code and added multi-core funcationality as it should have there would be a boost of a little over double if not half again in performance offf the CPU.

NVIDIA has been slow to optimize PhysX for CPUs, but the newest PhysX SDK is both well threaded and uses modern instruction sets.
Quote:
Originally Posted by Raghar View Post

That's a three years old article, is it even valid today?

Not really.
Quote:
Originally Posted by Defoler View Post

Its not like most programs can even utilize CUDA or OpenCL.
Almost all the code written has no need to utilize heavy mathematical qoek, which is the main reason you want to utilize off-load to a GPU.

OpenCL isn't just about off-loading stuff to a GPU. OpenCL stuff can run on all sorts of things.
Quote:
Originally Posted by Defoler View Post

CUDA and OpenCL is meant for rendering, heavy calculations done in universities or research labs.
It was never written for heavy threaded applications or user oriented applications.

One of the major purposes behind GPGPU is to leverage the massively parallel natures of GPUs, and there are plenty of "user oriented" applications that could potentially make use of CUDA and/or OpenCL.
Primary
(15 items)
 
Secondary
(13 items)
 
In progress
(10 items)
 
CPUMotherboardGraphicsRAM
5820K @ 4.3/3.6GHz core/uncore, 1.225/1.2v Gigabyte X99 SOC Champion (F22n) 2x Sapphire R9 290X Tri-X OC New Edition (10036... 4x4GiB Crucial @ 2667, 12-11-12-27-T1, 1.37v 
Hard DriveHard DriveHard DriveCooling
Plextor M6e 128GB (fw 1.05) M.2 (PCI-E 2.0 2x) 2x Crucial M4 256GB 4x WD Scorpio Black 500GB Cooler Master Nepton 280L 
OSMonitorKeyboardPower
Windows 7 Professional x64 SP1 BenQ BL3200PT Filco Majestouch Tenkeyless (MX Brown) Corsair RM1000x 
CaseMouseAudio
Fractal Design Define R4 Logitech G402 Realtek ALC1150 + M-Audio AV40 
CPUMotherboardGraphicsRAM
X5670 @ 4.4/3.2GHz core/uncore, 1.36 vcore, 1.2... Gigabyte X58A-UD5 r2.0 w/FF3mod10 BIOS Reference R9 290X w/Stilt's MLU 1000e / 1375m E... 2x Samsung MV-3V4G3D/US @ 2000, 10-11-11-30-T1,... 
RAMHard DriveHard DriveHard Drive
1x Crucial BLT4G3D1608ET3LX0 @ 2000, 10-11-11-3... OCZ (Toshiba) Trion 150 120GB Hyundai Sapphire 120GB 3x Hitachi Deskstar 7k1000.C 1TB 
CoolingOSPowerCase
Noctua NH-D14 Windows 7 Pro x64 SP1 Antec TP-750 Fractal Design R5 
Audio
ASUS Xonar DS 
CPUMotherboardGraphicsRAM
i7-6800K @ 4.3/3.5GHz core/uncore, 1.36/1.2v ASRock X99 OC Formula (P3.10) GTX 780 (temporary) 4x4GiB Crucial DDR4-2400 @ 11-13-12-28-T2, 1.33v 
Hard DriveHard DriveCoolingOS
Intel 600p 256GB NVMe 2x HGST Travelstar 7k1000 1TB Corsair H55 (temporary) Windows Server 2016 Datacenter 
PowerCase
Seasonic SS-860XP2 Corsair Carbide Air 540 
  hide details  
Reply
Primary
(15 items)
 
Secondary
(13 items)
 
In progress
(10 items)
 
CPUMotherboardGraphicsRAM
5820K @ 4.3/3.6GHz core/uncore, 1.225/1.2v Gigabyte X99 SOC Champion (F22n) 2x Sapphire R9 290X Tri-X OC New Edition (10036... 4x4GiB Crucial @ 2667, 12-11-12-27-T1, 1.37v 
Hard DriveHard DriveHard DriveCooling
Plextor M6e 128GB (fw 1.05) M.2 (PCI-E 2.0 2x) 2x Crucial M4 256GB 4x WD Scorpio Black 500GB Cooler Master Nepton 280L 
OSMonitorKeyboardPower
Windows 7 Professional x64 SP1 BenQ BL3200PT Filco Majestouch Tenkeyless (MX Brown) Corsair RM1000x 
CaseMouseAudio
Fractal Design Define R4 Logitech G402 Realtek ALC1150 + M-Audio AV40 
CPUMotherboardGraphicsRAM
X5670 @ 4.4/3.2GHz core/uncore, 1.36 vcore, 1.2... Gigabyte X58A-UD5 r2.0 w/FF3mod10 BIOS Reference R9 290X w/Stilt's MLU 1000e / 1375m E... 2x Samsung MV-3V4G3D/US @ 2000, 10-11-11-30-T1,... 
RAMHard DriveHard DriveHard Drive
1x Crucial BLT4G3D1608ET3LX0 @ 2000, 10-11-11-3... OCZ (Toshiba) Trion 150 120GB Hyundai Sapphire 120GB 3x Hitachi Deskstar 7k1000.C 1TB 
CoolingOSPowerCase
Noctua NH-D14 Windows 7 Pro x64 SP1 Antec TP-750 Fractal Design R5 
Audio
ASUS Xonar DS 
CPUMotherboardGraphicsRAM
i7-6800K @ 4.3/3.5GHz core/uncore, 1.36/1.2v ASRock X99 OC Formula (P3.10) GTX 780 (temporary) 4x4GiB Crucial DDR4-2400 @ 11-13-12-28-T2, 1.33v 
Hard DriveHard DriveCoolingOS
Intel 600p 256GB NVMe 2x HGST Travelstar 7k1000 1TB Corsair H55 (temporary) Windows Server 2016 Datacenter 
PowerCase
Seasonic SS-860XP2 Corsair Carbide Air 540 
  hide details  
Reply
post #63 of 64
Quote:
Originally Posted by Blameless View Post


OpenCL isn't just about off-loading stuff to a GPU. OpenCL stuff can run on all sorts of things.
One of the major purposes behind GPGPU is to leverage the massively parallel natures of GPUs, and there are plenty of "user oriented" applications that could potentially make use of CUDA and/or OpenCL.

Problem with this is that there is a big difference between being able and potential to run parallel on the GPUs, and actually doing so. Not big. Huge difference.

In order to run a lot of parallel work on GPUs, you need to actually write your code to support it, and have to make sure it is efficient enough to not make the process of organizing this parallel work to costs too much.
Its cheaper and easier a hundred times over the just buy a 4xCPU rack, put 4xE5s on it with 48 threads, and you don't have to code a damn thing to make it parallel except sending a thread out.

To make the same thing on a GPU takes a lot of men power to write the code and make it efficient enough, as well as the cost of constantly uploading the data to the GPU, getting the data, managing in the software level the parallel runs and tasking them to the GPU.
For short term transactions, its completely useless to use CUDA or OpenCL. I'm not talking about possible or not. I'm talking about actual usage.

The only reason to use them is when its more efficient to do so, and I don't see it as efficient unless you have big batches of calculations to do on larger scale data, or a huge amount of parallel jobs on the same data, which again for most applications its not needed.
Main system
(16 items)
 
Editing PC
(8 items)
 
 
CPUGraphicsGraphicsRAM
E5-1680v2 AMD FirePro D700 AMD FirePro D700 64GB 1866mhz 
Hard DriveOSMonitorCase
1TB PCIE SSD OSX 10.10.x Dell U2713H Mac Pro 
  hide details  
Reply
Main system
(16 items)
 
Editing PC
(8 items)
 
 
CPUGraphicsGraphicsRAM
E5-1680v2 AMD FirePro D700 AMD FirePro D700 64GB 1866mhz 
Hard DriveOSMonitorCase
1TB PCIE SSD OSX 10.10.x Dell U2713H Mac Pro 
  hide details  
Reply
post #64 of 64
A really big difference Cuda/OpenCL that is not mentioned very often is that ATI has far superior double precision performance compared to nVidia.

It doesn't have to be that way but is because nVidia cripple their consumer level cards not to canibalize their Tesla cards.

In float (single precision) nVidia is better and in many cases, especially consumers, will never know the difference.

Conclusion: if you want to run your calculations on consumer grade GPU cards, that is regular high-end graphics cards, you should use OpenCL on ATI cards.
If you have tons of money, use Cuda on special Tesla cards. Better tooling, which is worth a lot.

Sorry if I woke a really old thread...

/hpe
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Hardware News
Overclock.net › Forums › Industry News › Hardware News › [TI] AMD thinks most programmers will not use CUDA or OpenCL