Multi Your Threads
Coding
Hardware
-
Multi Your Threads #10: Nice GPU you have there, drawing this webpage…
Chapter 10 in my “Multi Your Threading” series Bringing together OpenGL and Emscripten, this time I’m running GPGPU on a browser
-
Multi Your Threads #9: Back to the classics with Khronos
Part 9 of my “Multi Your Threading” series. This time, it’s OpenGL, both with a Compute Shader, as well as the “legacy” way with a Fragment Shader
-
Multi your Threads #8: One doesn’t simply wasm into Mordor
Part 8 of my “Multi Your Threading” series. In this one I talk about my experience using emscripten to deploy toyBrot to the browser
-
Multi Your Threads #7: Feeling a little blue
Seventh chapter in the Multi Your Threading series, looking at Intel’s TBB and ISPC
-
Multi Your Threads #6: The Age of Radeon has begun
Post with updated benchmarks and introducing a new code for toyBrot which produces more relevant results
-
Multi your Threads #5 – Khronos strikes back
Fifth chapter on my multithreading series. In this one I talk about Vulkan and SYCL, Khronos’ new initiatives
-
Multi your Threads #4: ROCm Roll!
Fourth chapter on my multithreading series. In this one I talk about AMD’s ROCm and HC C++ and HIP
-
Multi your Threads #3: Put a computer in your computer
Part 3 in my Multi Your Threading Series. This time we get into the world of heterogeneous computing with CUDA and OpenCL
-
Multi your threads #2: The Scientific Method
Second on the multi-threading series, where I talk about OpenMP and MPI
-
So you wanted to multi your threading, huh?
An introduction to a series where I talk about different parallelisation technologies for C++, comparing different implementations of the same algorithm. In this one, modern C++ STL
-
Setting up your GDExtension with CMake and Qt Creator
Second post about GDExtensions. In this follow-up I focus on the specificities of building them using CMake instead of SCons, and some of the options and pitfalls along that way. I also talk about setting up a C++ IDE, Qt Creator, to help you deploy and debug your GDExtension project and point to a great…
-
Bringing C++ to Godot with GDExtensions
After playing with Godot within its own rules, I decided to check out what is the experience of bringing in external C++ code into a Godot project through their GDExtensions system. Using it, I bring over two different implementations of toyBrot into a regular Godot project. One with C++ threads and another with OpenCL, pushing…
-
nVidia performance round 2: Ampere, Wayland vs X11, AMD Navi
After looking at a LOT of numbers for my Maxwell Titan, I go back and do some additional checking: How does CUDA behave on a newer card? Does AMD suffer as much from running graphics on the same card? If graphics do matter, does X11 vs Wayland make any difference? How about we run even…
-
If you want performance, maybe you should drop CUDA
After having forced onto solely my nVidia Titan, I take a look, investigating why the performance is so much worse than I remember. Is newer CUDA just planned obsolence? Is CUDA itself just bad? Maybe the graphics card REALLY hates having to do graphics? Join me as I collect all of the numbers and chart…
-
GMM Dec/23 part 2 – Saving and loading in the web
Second part of December 2023’s Godot Mini Monthly After saving images from toyBrot, I now do it on the web. Not only this but I also added the ability to save and load “states” of the application, which you can even take between different versions. Being on the web means a lot more hoops to…
-
GMM Dec/23 part 1 – Saving images from interactive toyBrot
First part of my Godot Mini for December 2023. In this post I talk about adding screenshot saving functionality to interactive toyBrot. This includes file system access, introducing additional viewports and manipulating them to get the image parameters you want. This is all on desktop, laying a foundation for part 2 where I take this…
-
Games? Nah. Godot ALL of the things
In this post I go talk about my exploration of Godot as a general application framework. Mainly using Godot to write responsive GUIs with lots of controls and elements and whatnot
-
Cartomancer and the threat of half-hearted features
In this post I go over my experience writing the initial release of the Cartomancer library and its accompanying demo, Foreteller. In particular how I ended up in trouble due to both C++ and Qt having features I needed only half-implemented
-
It was Godot that was waiting for me all along
I talk a bit about my initial experiences with the Godot game engine and how it’s been learning it and using it for some introductory projects
-
What do when OpenGL just hates multithreading?
OpenGL will only accept calls from one thread in an application. This is about a work around this issue using C++ features such as template metaprogramming and std::packaged_tasks
-
Nerd Glossary: Compiled vs Interpreted and the curse of LLVM
A digression about the concepts of: Compiled vs Interpreted code Low and High level languages Assembly and Intermediary Representations And how almost all compilers are just CLANG now
-
The eXtreme Go Horse (XGH) Process
A detailed explanation about the legendary eXtreme Go Horse software development process. If you haven’t used it, you haven’t written software professionally
-
Some stuff I wish I was taught straight away about CMake
A tutorial I wrote with some core concepts of CMake that I didn’t easily find at the time I learned it
-
nVidia performance round 2: Ampere, Wayland vs X11, AMD Navi
After looking at a LOT of numbers for my Maxwell Titan, I go back and do some additional checking: How does CUDA behave on a newer card? Does AMD suffer as much from running graphics on the same card? If graphics do matter, does X11 vs Wayland make any difference? How about we run even…
-
If you want performance, maybe you should drop CUDA
After having forced onto solely my nVidia Titan, I take a look, investigating why the performance is so much worse than I remember. Is newer CUDA just planned obsolence? Is CUDA itself just bad? Maybe the graphics card REALLY hates having to do graphics? Join me as I collect all of the numbers and chart…
-
Multi Your Threads #6: The Age of Radeon has begun
Post with updated benchmarks and introducing a new code for toyBrot which produces more relevant results
-
Build Log: The Migrator gets an uplift
A build log of some watercooling maintenance and upgrades to my main rig























