Related Posts
I can smell your desk from the bathroom
6/23 check in! What are you up to today?
Anyone hiring for account management?
Additional Posts in Software Engineering
How do you all deal with the guilt of leaving a comany/ team? I have been working at Microsoft for 1 year now, and seriously considering moving. I find the code base to be very legacy and I mostly work on obscure bugs that I spend so much time on, mostly due to navigating this large code base and not having much docs to refer to. Hence I find the job slightly unsatisfying, and that I could learn more elsewhere. However, I love the wlb, the team and company culture. The guilt stops my applying.
New to Fishbowl?
unlock all discussions on Fishbowl.




It is taught in schools! I graduated in 2012 and one of the classes I took was computer graphics, and it covered GPU rendering as well as (non-GPU) raytracing.
If you want to learn how GPUs work at a low level, I found NVIDIA's CUDA educational material very helpful. You'll need some existing computer systems background to get the most out of it. While the terminology and specific details of CUDA are NV-specific, the general concepts are common to all modern GPUs.
If you want to learn how to do graphics with GPUs, start by learning the general basics of 3D rendering (transformation matrices, shading, etc). That will help tremendously with learning OpenGL/Vulkan/DirectX, which are the usual software interfaces. Under the hood they're using (mostly) the same low-level compute functionality as exposed by CUDA or OpenCL.
To what end? Are you planning to make video games? Do some physics experiments? Bitcoin mining? Do you want to build the GPUs drivers? All of which are pretty different segments of engineering.
Not planning any such thing! One of my interviewers asked me if I know about GPUs and I realized I don’t know anything. The resources over internet which I found is not well organized either. I wish to learn it step by step! It seems like a difficult topic! Any suggestions?