
Nicholas Wilt
2.5K posts

Nicholas Wilt
@CUDAHandbook
Nicholas Wilt was on the inception team for CUDA, wrote The CUDA Handbook, and writes at https://t.co/YkR71W07I7
Katılım Nisan 2013
76 Takip Edilen7.2K Takipçiler

@Meronix15 See e.g. the commentary on how IA > AI:
cs.unc.edu/~brooks/Toolsm…
English

@Meronix15 There’s nothing like practice (“writing a lot of software”) to develop these skills: Gather requirements, decide on
implementation strategies on how best to meet them, implement and test, iterate.. Brooks also strongly advocated putting our skills in service to human endeavors.
English

BREAKING: The CUDA Handbook text is now available on the website, cudahandbook.com!
Svbstack article in the first reply.
English

@Meronix15 In the right hands, the models are massive force multipliers.
They do shift the landscape in favor of the folks Brooks called “architects” over code typists.
AI is the stiffest-ever test of the Jevons Paradox that has characterized software engineering for decades.
English

@CUDAHandbook Honestly with the latest models i feel a bit depressed do you think there will still be programming adjacent jobs in the future?
English

@lauriewired If IBM had won, the tech world be would be a tedious hellscape.. and that’s coming from a Microsoft alum, haha
English

I wonder what the world would look like if IBM won instead of UNIX.
IBM’s i operating system is gorgeous (and still updated)! Everything is an object, no binaries are native (translated bytecode, almost JVM-y), and pointers all have an absurd amount of (useful) metadata.
Technically it hides a lot of the underlying system…you don’t even get to choose if an object lives on RAM or disk! But, interesting to think how much safer software would be.
Overengineered maybe, but beautiful. Kind of reminds me of Symbolics, like an alternate reality LISP machine where everything is an object.

English

My first thought was of Hunt For The Wilderpeople, which is worth a watch if you haven’t seen
The Sting@TheStingisBack
It’s sad news that Sam Neill has passed away. Sam was a genre-crossing, multifaceted actor, just as at home in independent films like The Dish as in Hollywood blockbusters like Jurassic Park. When I heard today, my first thought was The Hunt for Red October. He’ll be missed.
English

@johnonmain My take on the whole West Coast is that it has a wet season and a dry season.
My hometown has four honest seasons though, and there’s something to be said for that. Regardless whether you are enjoying the weather, in six weeks’ time it is bound to be different.
English

The lack of seasons in SF is actually evil. Months slide past and nothing changes— perhaps different trees bloom, some new flowers pop up in the park, and the sun sets earlier— but nothing really seems to change. It's fun at first... you can go for a jog outside every day without worry, you can wear the same types of outfits week after week (pants, with a nice shirt and light jacket). But as time goes by it's eerie. Your life just races bay, with no visual or physical punctuation. There's no leaves on the ground, no crisp fall days, no scorching summer nights where you can wear shorts and a t shirt until midnight, no thunderstorms. It's spring. It's purgatory. Forever and ever.
PoIiMath@politicalmath
I live in one of the red zones in Tennessee and I can tell you that this map is bullshit
English

@maxxfuu If you’re trying to develop intuitions around CUDA, seek out workloads that benefit from shared memory (accessible only between blocks). That will illustrate how grids and blocks are not strictly software.
Elementwise operations like matrix addition don’t meet this criterion.
English

Day 4/90 of Inference Engineering
I built a CUDA kernel for matrix addition. The objective was to write correct CUDA while instilling the right intuition.
Mainly putting the reps in with allocating memory on the host and device and writing the actual kernel through the lens of writing a thread instead of a sequential program.
I learned that the idea of blocks and grids are just a software abstraction. However at launch time, grids are already partitioned into blocks. This allows the global block scheduler to schedule blocks and pin them to a SM for a lifetime. Without this abstraction we would have to schedule each thread individually for execution.
I also learned that the block abstractions are what allows threads to cooperate cheaply within a block. Since threads within the same block share the same shared memory, this gives threads visibility into each other's data, and __syncthreads__() synchronizes completion for every thread within the block.
Very interesting ideas. Love to hear a Kernel Engineer shed some light on this topic~
On the hardware side, I previously thought that the L1 Cache and Shared Memory were interchangeable terms. Turns out, they are two unique hardware components. I also forgot to include polymorph, TCP, Raster Engine within my old diagram. I attached an image below of the updated diagram that I drew.
I also went over some CUDA documentation to understand the syntax of cudamalloc(). Today was a great day, on to the next!



English

@xlrndo What’s funny is I think interviewed who asked me that question wouldn’t like the answer I gave. I have a gift for failing telepathy questions
English

@CUDAHandbook Occasionally I've been tempted to use this as an interview question: I edited 0xcc to 0x90 in memory thirty times yesterday. What was I doing?
Unfair, and I never asked it, and yet I'd think anyone in my line of work would get it instantly.
English


@xlrndo A hacker who chose that moniker would be sending an entirely different message lol
English

@meridi6n I’ll likely be archiving some material on old architectures that’s no longer relevant. No one needs to know about the __mul24() intrinsic anymore.
English

@meridi6n Yes—GPU architecture has changed surprisingly little, considering they have 250x as many transistors.
A lot of new features (both hardware and software) have been added that need to be covered, but the basics are still highly relevant.
English

@geofflangdale AI is nice for stretching the periphery of coding, (for me, variadic templates), but for stuff that’s completely outside my comfort zone (e.g., website design) it has unlocked use cases that simply would not be otherwise possible.
English

@Simon_Vt What about HIP, SCALE, and other CUDish technologies?
English

@CUDAHandbook Asynchronous memory transfers (cp.async/TMA), pipelining, tensorcores (wgmma, tcgen05) etc (I know I ask to much but I would be 100% willing to pay good money for such a book from you :D)
English

@Simon_Vt I am working on updates. Any areas of particular interest?
English

@CUDAHandbook This is such a great book. It would be nice if there would be a second part for modern GPUs :)))
English

@CUDAHandbook Small feedback. Looks like I can't access the top menu in mobile browser (chrome), so i can't access the chapters
English




