News for hackers. Stuff that matters.
Re:An Introduction to GPU Programming in Julia by IshKebab on Thursday October 18, 2018 @03:05PM (#18251176)
It doesn't really describe the fundamental difference between a GPU and a 4000-core CPU, which is that the GPU has a shared program counter. All the cores must execute the same instruction at each cycle.
Re:An Introduction to GPU Programming in Julia by twtw on Thursday October 18, 2018 @03:37PM (#18251434)
The conceptually independent threads are executed on 32 wide SIMD cores. "All the cores" within a warp/wavefront must execute the same instruction each cycle.

GPU threads got even more independent in nvidia'a volta architecture - search Volta ITS for details.

Re:An Introduction to GPU Programming in Julia by why_only_15 on Thursday October 18, 2018 @04:43PM (#18251939)
Are you sure? I'm pretty sure I can branch on core-specific measures like (in CUDA) TheadIdx and BlockIdx
Re:An Introduction to GPU Programming in Julia by gpuhacker on Thursday October 18, 2018 @06:29PM (#18252749)
It's true that the programming model allows that, but underneath all threads within the warp will execute the same instructions. However if there is a branch, some threads can be predicated so their instructions have no effect. This is called warp divergence and can become a performance issue. If possible branch only on threadidx using multiples of the warp size. There's a cool slide deck on implementing a parallel sum algorithm that explains this really well.
Re:An Introduction to GPU Programming in Julia by dialecticDolt on Friday October 19, 2018 @12:43AM (#18254294)
Do you have any idea what the source of the slide deck could have been? It sounds very interesting and I'd love to see it.
Re:An Introduction to GPU Programming in Julia by gpuhacker on Friday October 19, 2018 @01:44AM (#18254448)
Re:An Introduction to GPU Programming in Julia by 0-_-0 on Friday October 19, 2018 @06:15AM (#18255560)
Yes but can you do that from Julia without writing CUDA/OpenCL code?

I'm happy that Julia supports GPU programming for simple code, but I don't see how you can run algorithms with inter-thread communication.

Re:An Introduction to GPU Programming in Julia by simondanisch on Friday October 19, 2018 @10:59AM (#18257134)
Re:An Introduction to GPU Programming in Julia by 0-_-0 on Saturday October 20, 2018 @05:56AM (#18262572)
Oh cool! Thanks!
Re:An Introduction to GPU Programming in Julia by byt143 on Friday October 19, 2018 @11:21AM (#18257305)
Yes you can.
Re:An Introduction to GPU Programming in Julia by llukas on Friday October 19, 2018 @12:19AM (#18254211)
On NVIDIA Volta architecture threads have individual PC.