Mini Project: How to program a GPU? | CUDA C/C++

Поділитися
Вставка
  • Опубліковано 3 гру 2024

КОМЕНТАРІ • 81

  • @jarrodangove1921
    @jarrodangove1921 3 дні тому +65

    Some days the internet makes me sad. Other days it reminds me of all the people with the same niche interests as me and how incredibly talented some of them are. Thanks for putting so much effort into this :)

    • @0mean1sigma
      @0mean1sigma  3 дні тому +1

      Thanks a lot. Glad you liked the video 😃

    • @psibarpsi
      @psibarpsi 8 годин тому

      *skilled. not talented. talent is god-given. skill is developed through practice. I think it's a little disrespectful to call someone talented - almost makes it seem like they didn't work for it.
      🙂

  • @Otakutaru
    @Otakutaru 3 дні тому +93

    "MINI" Project? What the heck?! You just munched a lot of hard to grasp technical implementations, coded a working example, shared it on your blog, AND made a fully animated video about it!! You make me mad.

  • @sanesanyo
    @sanesanyo 13 годин тому +1

    Great stuff Tushar. I have been keen on learning GPU programming so great to see your videos in my feed. Keep it up and all the best.

  • @nathanpotter1334
    @nathanpotter1334 4 дні тому +8

    Yay, CUDA video. Feel like my timeline has been needing CUDA content

  • @eyannoronha831
    @eyannoronha831 2 дні тому +10

    I am reading the CUDA C programming book and your videos are super helpful in visualizing the memory access process! Thank you very much!

  • @markzakharyan
    @markzakharyan День тому +4

    dude this is actually amazing. you’re the cs version of 3b1b… keep up the great work!

    • @0mean1sigma
      @0mean1sigma  23 години тому

      Thanks a lot! I appreciate it 😃

  • @jorgegimenezperez9398
    @jorgegimenezperez9398 3 дні тому +10

    Hey, I’ve been going through the Programming Massively Parallel Processors book lately and doing some CUDA and this was a GREAT video!!!

    • @0mean1sigma
      @0mean1sigma  3 дні тому

      Thanks a lot! Glad the video was helpful!

  • @jojodi
    @jojodi 11 годин тому

    Good job. The reason workgroups are laid out in 1d/2d/3d grids is that all GPU compute APIs were first designed and implemented on top of existing graphics concepts where calculating outputs as e.g. 2D grids is a natural thing.

  • @epic_mole
    @epic_mole 2 дні тому +1

    I am from embedded systems background but I love your work. Keep Going brother, Just don't quit ! There's always an audience for great content.

    • @0mean1sigma
      @0mean1sigma  2 дні тому +1

      Thanks a lot! I’m in this for the long run 😃

  • @antoninmeunier
    @antoninmeunier День тому

    This is not a "mini" project, you made some real content here! Fantastic video, congrats!

  • @Friedbutter101
    @Friedbutter101 День тому

    Super satisfying to see Manim to show the algorithm like that.

  • @anwar6336
    @anwar6336 3 дні тому +1

    Great video. I love the simplicity, and the great explanation.

    • @0mean1sigma
      @0mean1sigma  2 дні тому

      Thanks. Glad you found it useful.

  • @MariusNiveriHH
    @MariusNiveriHH 2 години тому

    Crazy good manim skills! perfect video

  • @slowedreverb6819
    @slowedreverb6819 День тому +1

    This is so beautiful and magnificent to see ❤❤❤🎉

  • @qwickstart
    @qwickstart 2 дні тому

    Beautiful visualization!! i am enjoying watching your videos. Keep up the good work

  • @zeugzeugzeug
    @zeugzeugzeug 2 дні тому

    Thanks for the research! Keep going! I would like to see other algorithms being run an optimized on GPUs...

  • @huzaifamalik2346
    @huzaifamalik2346 3 дні тому

    Your content is very helpfull and your method teach is great

  • @siddharth-gandhi
    @siddharth-gandhi 4 дні тому

    Beautiful video as usual. I'll am motivated to pick up PMPP after sem end just from watching your videos!

  • @taufiquzzamanpeyash6008
    @taufiquzzamanpeyash6008 3 дні тому

    High quality content. Subscribed.

    • @0mean1sigma
      @0mean1sigma  3 дні тому

      Thanks a lot. I really appreciate it 😃

  • @theintjengineer
    @theintjengineer 4 дні тому +1

    Amazing🎉.
    Thank you!

  • @appleWhisky43
    @appleWhisky43 2 дні тому

    Gonna enjoy this knowledge

  • @JoeyLutes
    @JoeyLutes 2 дні тому

    yay i know a little about this now, thank you!!

  • @TheVirtualArena24
    @TheVirtualArena24 День тому

    I'm so dumb to understand this but I know this is something good. I'll understand it someday

  • @JohnMullee
    @JohnMullee 2 години тому

    really nice stuff, thanks

  • @7uz330
    @7uz330 День тому

    i study linear algebra and im shocked right now now cuz it’s important to program the hardware system

  • @brianmeehan6235
    @brianmeehan6235 2 дні тому

    Nice Manim work!

  • @w花b
    @w花b День тому

    Can you talk about scan operations like Blelloch and Hillis/Steele algorithms? Maybe you've already talked about them I haven't seen all your videos. This would be nice to know in what context they're used and provide a cool visualisation of them too.

    • @0mean1sigma
      @0mean1sigma  23 години тому

      I can take these topics for some future videos. Thanks a lot for suggesting. 😀

  • @trapkat8213
    @trapkat8213 День тому

    Great content!
    One thing I have never understood is, for matrix multiplication, what is the sort of threshold in size that makes a GPU implementation faster than a CPU implementation? If I want to do one million multiplications of 4 x 4 matrices, ignoring the overhead required to set up the computations, is the GPU faster than the CPU? Surely not. What about 100 x 100? 1000 x 1000?

    • @0mean1sigma
      @0mean1sigma  22 години тому

      GPUs are suited for large dataset. I can’t specify a number as it will depend on the algorithm and GPU specs.

  • @uonliaquat7957
    @uonliaquat7957 3 дні тому

    Thanks for the video, from where did you learn all this stuff? Any book or course?

    • @0mean1sigma
      @0mean1sigma  3 дні тому +1

      I've put links to a couple of Blog posts in the description. They were very helpful (especially when it came to verifying my code).

    • @uonliaquat7957
      @uonliaquat7957 3 дні тому

      But you didn’t take any course right?

    • @0mean1sigma
      @0mean1sigma  3 дні тому +1

      Nope

  • @gauravpatil1630
    @gauravpatil1630 День тому

    What did you do? Compared with GFLOP you developed your own function to handle matrix mul ?

    • @0mean1sigma
      @0mean1sigma  23 години тому

      I wrote SGeMM from scratch (that runs on a gpu)

    • @gauravpatil1630
      @gauravpatil1630 17 годин тому

      @ got it 🔥great man !!

  • @erichpoly4434
    @erichpoly4434 4 дні тому +1

    Thans for you Service

  • @engineeredarmy1152
    @engineeredarmy1152 2 дні тому

    Yet another Indian banger video

  • @spacepxl
    @spacepxl 3 дні тому

    What was the reason for surprise at the x-horizontal / y-vertical layout? It's the standard convention for image processing, which is what GPUs are designed for

    • @0mean1sigma
      @0mean1sigma  3 дні тому

      y-axis is generally vertical up and I'm not bothered too much about this as well. What confused me was (z, y, x). I understand that GPUs weren't designed to work with these kind of computations but it always confused me (when I started out).

    • @acasualviewer5861
      @acasualviewer5861 День тому

      @@0mean1sigma i think you mean i,j vs x,y.. i often means the row in matrix operations. But x is always horizontal in cartesian coordinates.

  • @nikhilkande336
    @nikhilkande336 4 дні тому

    I was hoping that someone would simplify GPU's Matrix multiplication to me , so thank you .

  • @Vuden13
    @Vuden13 День тому

    W project

  • @vkrotevich6171
    @vkrotevich6171 3 дні тому

    So, after trying your benchmarks, I've got that cuBLAS is fastest in comparison to any of your approach.
    Though, nice video

    • @0mean1sigma
      @0mean1sigma  3 дні тому

      Thanks a lot for your comment. Yes, my implementations are slower than CUDA but my focus was more on understanding the GPU programming concepts.

  • @AbhishekGupta-ny8ig
    @AbhishekGupta-ny8ig 2 дні тому

    i have a question ... from where can i learn these concepts

    • @0mean1sigma
      @0mean1sigma  2 дні тому

      I’ve provided some of the links in the video description. There are also some good textbooks. Good luck!

  • @__logan__duvalier__
    @__logan__duvalier__ 2 дні тому

    are these floating point or integer matrices ?

  • @croncoder862
    @croncoder862 2 дні тому

    Are you using manim?

  • @juliansantos1900
    @juliansantos1900 2 дні тому +1

    Why it feels like 3blue1brown vid... You use manim???

  • @__hannibaalbarca__
    @__hannibaalbarca__ 2 дні тому

    Where is Cuda/C/C++

    • @0mean1sigma
      @0mean1sigma  2 дні тому

      Check out the links in the description

  • @domdom2447
    @domdom2447 2 дні тому

    Mini💀

  • @JohnnyAlex2u
    @JohnnyAlex2u День тому

    5 minutes in and I’m starting to stroke

  • @JohnnyAlex2u
    @JohnnyAlex2u День тому

    wtf did I just watched ? 😬

  • @imnbmusic
    @imnbmusic 2 дні тому

    Are you using manim??