Simple C++: The Main Function
5:57
Parallel C++: MPI
16:42
Жыл бұрын
Parallel C++: OpenMP Reduction
9:56
Parallel C++: OpenMP Synchronization
7:19
Parallel C++: OpenMP
11:03
2 жыл бұрын
Parallel C++: Thread Sanitizer
7:52
2 жыл бұрын
Parallel C++: Thread Affinity
11:54
2 жыл бұрын
Пікірлер
@program-fox
@program-fox 28 минут бұрын
WHY! is this so underrated? excellent explanation
@nicolascosta1349
@nicolascosta1349 4 күн бұрын
*"If (Score > 85) { std::print("pass"); } else { std::print("failed");}"* Ahh Test😮
@DylanMendoza-l9c
@DylanMendoza-l9c 7 күн бұрын
is a double and floating point number the same thing?
@NotesByNick
@NotesByNick 5 күн бұрын
They are both floating point numbers, but "float" specifically refers to single precision floating point numbers (32 bits), and "double" refers to double precisions floating point numbers (64 bits).
@syeds4380
@syeds4380 9 күн бұрын
Loving the course so far!
@adhipshukla6632
@adhipshukla6632 9 күн бұрын
Great series, just setting up SIL harness for my C project this would help!
@Kenneth-n4z4e
@Kenneth-n4z4e 10 күн бұрын
i want to learn more c++ software development knowlege from you
@Kenneth-n4z4e
@Kenneth-n4z4e 15 күн бұрын
thanks very much for your great explaination
@Mahm00dM0hanad
@Mahm00dM0hanad 15 күн бұрын
Short, nice, clear and straight to the point, no IDE no hidden config files, just simple command line & gcc Thanks a lot Ps: it would be nice if you showered us how can we automate this using makefile
@breakdancerQ
@breakdancerQ 19 күн бұрын
Thanks dude, feels like the first time its explained to me from a normal person
@moosasaghir
@moosasaghir 19 күн бұрын
For the sum example, it looks more like the form (pack op ...)? Why have you said it's of the form (... op pack) when the fold expression is on the right?
@nunoguterres8csrc
@nunoguterres8csrc 20 күн бұрын
Great video!
@amolj1306
@amolj1306 24 күн бұрын
What I didn't understand is how integers were 4 bytes apart
@robertkrawczyk2936
@robertkrawczyk2936 26 күн бұрын
Very nice, thank you
@Iamine1981
@Iamine1981 26 күн бұрын
The only useful cuda tutorial that I could find to fit my needs in 2025!
@fdjerourou3050
@fdjerourou3050 28 күн бұрын
Bravo pour la vidéo.;)
@debhaitulua3445
@debhaitulua3445 Ай бұрын
Why are they scaled by 0.85
@vladislav_artyukhov
@vladislav_artyukhov Ай бұрын
Bro get recommended to me by ChatGPT. Great video, tho!
@arthurjeulin4171
@arthurjeulin4171 Ай бұрын
Great explanation !
@Kaassap
@Kaassap Ай бұрын
twohundredandfiftysix
@SofSchwald
@SofSchwald Ай бұрын
explanation was great, super easy to follow. also I like your beard
@atuldivekar
@atuldivekar Ай бұрын
Could you please explain more clearly why this solves bank conflicts? With the sequential code, th 0 accesses integers(32 bit) at addr 0,1 which are in banks 0,1. th1 accesses ints at addr 2,3 and th 255 will access ints at 255*2 and 255*2+1 . I understand that when these addresses %32 are the same, they access the same bank and require serial access. But with the new code, th 0 accesses addr 0,128, th 1 accesses addr 1,129 and so on. addr 0 and 128 access bank 0, so aren't they causing conflict as well?
@atuldivekar
@atuldivekar Ай бұрын
what is the purpose of the for loop in the kernel? why not just use a[tid] for the single item this thread will handle?
@Dreamcatcher_Lvl_
@Dreamcatcher_Lvl_ Ай бұрын
Thank you so much
@arminhejazian5306
@arminhejazian5306 Ай бұрын
well explained
@Mohamed.GadAllah
@Mohamed.GadAllah Ай бұрын
May you give an order or sort for playlists in your channel if someone start programming from scratch? Thanks 😊
@HamzaEngineering
@HamzaEngineering Ай бұрын
Superb video structure. you started with introducing valgrind, then essential useful commands and how to use valgrind without going too much in detail like those tutorials hell. amazing 👌🏻
@abul4933
@abul4933 Ай бұрын
I swear you are probably one of the most underrated content creator ever
@normbograham3
@normbograham3 Ай бұрын
In the past, Nearly every time I have used constexpr, eventually, the requirements change, and I can no longer use it. 99% of programming is not mathy, but loaded with business rules.
@sky_is_the_limit_13
@sky_is_the_limit_13 Ай бұрын
Awesome! Thank you!
@maryyam361
@maryyam361 Ай бұрын
kya baat ha bhai maza agaya
@aragon5956-p4j
@aragon5956-p4j Ай бұрын
salut , où est ce que tu pourrais nous fournir de la documentation ?
@mohammedhijazi1
@mohammedhijazi1 Ай бұрын
Thank you Nick ! that was helpful and straight to the point, you're amazing!
@chunlinyang-g6p
@chunlinyang-g6p Ай бұрын
It helps!
@manuelsuarez7521
@manuelsuarez7521 Ай бұрын
nice video
@mojtabavalizadeh5144
@mojtabavalizadeh5144 Ай бұрын
Hi. I think we should use TB_SIZE * sizeof(int) for the size of our dynamic shared memory in this code. Is n * sizeof(int) necessary? Is not it too big for a shared memory?
@alexv1841
@alexv1841 2 ай бұрын
What might be the reason for me not seeing cache misses (~2% vs ~0.1%) when compiling and running direct_sharing example on my pc?
@yetao501
@yetao501 2 ай бұрын
Amazing work!
@tonyzhang1854
@tonyzhang1854 2 ай бұрын
This is so clutch thank you
@khoavo5758
@khoavo5758 2 ай бұрын
9:10 I can’t figure out what is non-intuitive about this. Processor 0 writes to x and reads to y, processor 1 writes to y and reads to x. I guess if you expect at least r0 or r1 to be 1, it would be a bug, but idk why that would ever come up…
@Rekarika
@Rekarika 2 ай бұрын
OMG I am so excited for this new series
@gergelyfarago8544
@gergelyfarago8544 2 ай бұрын
Thank you! Very useful and clear to understand.
@thestarinthesky_
@thestarinthesky_ 2 ай бұрын
I think what you explained about NRVO example (the first example) is called mandatory copy Ellison! NRVO is when no temporary created from return statement and value in front of return statement returns not its copy!
@thestarinthesky_
@thestarinthesky_ 2 ай бұрын
Thank you! I was wondering if there is a book or something to explain this topic specifically ?
@a_laso
@a_laso 2 ай бұрын
Great video :-)
@sky_is_the_limit_13
@sky_is_the_limit_13 2 ай бұрын
You didn't explain what (N)RVO is in the first place! It is a feature that allows us to optimize away the creation of a return value from a named object in a return statement. If we already have a local object that we return in a function by value, the compiler can use the object directly as a return value instead of copying or moving it. Also @8:02 you should have made it clear that NRVO is a form of copy elision so we didn't get NRVO(a form of copy elision)
@GGSHANE-u9k
@GGSHANE-u9k 2 ай бұрын
Love these random videos being helpful and better than other videos.