So, hyperthreading is enabled in the desktop, all of these runs are with threading enabled in Julia. What’s bizarre is that in the last example where gc does not enter the picture, the speed difference between the laptop (8 core Ryzen 2) and the desktop (6 core Rocket Lake) is reasonable, and actually memory bandwidth should be a bottleneck in this code because it’s reading many, many times.
I already told the IT at my university about this, so I will check settings like those later, about the memory, I know it has 2 DIMMs installed out of 4 slots.
For the record, I am also using Python and parallelizing with Dask, when using Python the speed of this desktop is what I would expect, compared to my laptop and to a remote server I am also using for the project. Benchmarks like Geekbench and UserBenchmark also give the expected results, it’s only Julia’s garbage collector messing up ![]()