On 31/05/2016 20:45, David Ongaro wrote:
> I suspect Aja is right and Remi should go the path of integrating the
> GPU even if it's just to get more "oomph" for CS. That he tried to
> learn GPU programming from scratch is a noble attempt but I guess
> it's just to ambitious to accomplish in a reasonable timeframe. Using
> one of the ready to use frameworks should make it feasible though.

They're a pretty annoying burden if you want to make the engine
commercial. I'm not even sure CuDNN can be bundled with the engine?

Additionally, not all customers might have a GPU that is enough faster
than the CPU (i.e. not the built-in one in modern CPUs, save maybe AMD's
APU units), so you need a good CPU fallback anyway. Oh, and if you use
CUDA, you lose about 1/3rd of your customers, again.

Those are things you can ignore if you're AlphaGo, not so much if you're
selling software.

You're overestimating the difficulty of programming a GPU though. Yes,
if you've never done it before the programming takes some adjustment,
but the SIMT model is very convenient to write code in, IMHO much easier
than trying to coerce things to SIMD layouts.

From what I understand the AVX512 instruction set in the next generation
of Intel CPUs will allow them to be programmed better using SIMT. I
can't wait!

What's more annoying is writing a GUI to allow the user to select his
GPU, being able to dynamically switch between CPU/GPU, include some
mini-benchmark so we know if the GPU is actually useful, add error
handling if the user has buggy drivers, etc... (aka the GPU version of
Leela won't be released quite yet)

-- 
GCP
_______________________________________________
Computer-go mailing list
[email protected]
http://computer-go.org/mailman/listinfo/computer-go

Reply via email to