This alone was reason for me to move to PlatformIO. It's infuriating.
What did you do to your computer? My 5 year old Ryzen desktop opens the Arduino IDE in ~1.5 seconds.
My top of the line macbook, with a fresh arduino 2.0 ide install on MacOS, is the same way.
Meanwhile, literally everything else works great.
I blame windows stuff I guess, it's definitely not just CPU power
A main.cpp that includes all other .cpp files and a build.bat that recompile everything, it's always been instant.
And I do use a some amount of template and constexpr for peripheral setup code (computing all the constant values for GPIO config registers with a nice "DSL" of sort for example).
It all compiles nearly instantly. So you can have large apps that work fine in that space and time.
I haven't debugged the differences in compile options, etc. I suspect it is related to constant data handling differences (they both have the same RTTI, exceptions settings. They both use the same GCC version). But IMHO there can be very wide variation in the size of literally the same code.
In the case of arduino, they don't provide you anything that could be used to flamegraph it, but i suspect it's just recompiling a significant part of mbed each time or something.
The non-Mbed based ones are faster to compile for sure.
[1] The one thing Zephyr does not yet support is std::thread/std::mutex, but it's really easy to make it work in your app because the build system functions properly, so i did and sent them patches as an example. They are working on proper support in the toolchain. Just need to rebuild it with some different config flags and twiddle a few files. MBed fully supports std::thread/etc if i remember right.
This is absolutely an Arduino problem. avr-gcc for a small program often compiles faster than the time it takes to upload with avrdude. And the IDE uses both underneath. Or compared to Atmel Studio, which is surprisingly not bad.
It literally recompiles all code on every verify or upload (because "we don't want lots of machine objects littering hard disks")
So on any of the mbed based boards compiles are like a minute or two for anything. On platformio and other compatible ways, it is instant.
So even for basic messing around I don't use the Arduino ide because it makes it not fun