Curaga is right... I wrote a python app for an EV dash and found that boot times were not what I'd hoped, because of big python deps. However, I was able to reduce the time to boot and start the app to ~1/3rd my original time by using strace to create bespoke extension sets with only the functions I needed from each dep. Including one for all the relevant .pyc files, which are JIT-compiled python.
I haven't tried yet as I'm still making some improvements but you could use Nuitka to convert your python to C++ and compile it. Pyinstaller just packages the application, its dependencies and a python interpreter into a binary... basically just makes it portable but it'll be the same size. However, Nuitka actually algorithmically converts python to optimized C++. While it would still be better/smaller to start with C++, it could help-- you wouldn't need to load the python interpreter, or entire deps-- it'd be only what you need.