I went through the excellent tutorial, I tried to take some "beginner mind" notes as I went through, in case they can be useful:
General
back/next navigation buttons or links would be really nice to have at the bottom of each notebook
Chater 2
2.0 "havign" typo
2.1 Many people know or remember fizz buzz details, but maybe not everyone especially data-science background as opposed to software dev. Suggest actually spelling out the the task (and maybe there is a more interesting simple example than fizz buzz?)
At this point, I have no idea how to choose good thread values
Chapter 3
3.1 same 3d (x, y, c) image as before, explain the why of a using a 2d grid this time
"need to access all color channels at once in each thread this time" is that accurate?
3.2 comment is "must multiply to 128" but (16, 16) in the answer multiplies to 256?
Chapter 4
4.0 "This tutorial is designed to be used with jupyterlab-nvdashboard" How do I do that exactly??
4.1 introduced cupy without link or explanation, maybe "we'll learn more about cupy next chapter"
4.1 "Notice that the GPU memory usage stays the same." Where am I supposed to be noticing this?
Chapter 5
5.0 what is the Chainer project?
5.0 NameError: name 'x_cpu' is not defined, same for x_gpu, is this a timeit issue? everything works if timeit is commented out
5.0 GPU timeit runs take much (~10x) longer the first time the cell is run. So much that "As we can see the GPU outperforms the CPU again with exactly the same API." is not always true from the output
5.0 device section confusing, "Suppose ID of the current device is 0" but then cp.cuda.Device(1) and this is "gpu0" ? Where did the 1 come from?
5.1 these are just very basic numpy things with "np -> cp", I don't really see what this adds is there something that can demonstrate the GPU usage more directly?
chapter 6
6.0 explain the UDF in words "Let's say we want to zero out requests values less than 5..."
6.0 results just show zeros in preview, maybe pageviews[pageviews.requests > 0] is more interesting output?
6.0 don't really understand the numba cudf example, also results look... wrong?
6.0 last example similar above, only a column of zeros in output cell, maybe pageviews[mean > 0] or some other cutoff?
Chapter 7
7.0 link to test_train_split docs
7.0 don't repeat "We also..." twice in immediate succession
Edit: I meant to attach a screenshor for 6.0 "looks wrong":
@bryevdv opened https://github.com/jacobtomlinson/gpu-python-tutorial/issues/10 to give some feedback on the original GPU Python 101 tutorial. Moving that issue over here to keep it with the material.
I went through the excellent tutorial, I tried to take some "beginner mind" notes as I went through, in case they can be useful:
General
Chater 2
At this point, I have no idea how to choose good thread values
Chapter 3
(16, 16)
in the answer multiplies to 256?Chapter 4
Chapter 5
NameError: name 'x_cpu' is not defined
, same for x_gpu, is this atimeit
issue? everything works iftimeit
is commented outcp.cuda.Device(1)
and this is "gpu0" ? Where did the 1 come from?chapter 6
pageviews[pageviews.requests > 0]
is more interesting output?pageviews[mean > 0]
or some other cutoff?Chapter 7
test_train_split
docsEdit: I meant to attach a screenshor for 6.0 "looks wrong":