News for hackers. Stuff that matters.
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.