Until 3.8 py3 was slower than py2 in practically all benchmarks, and 3.8 is a marginal improvement at best. So I’m slapping a massive <citation needed> on your “massive” performance improvements
We switched a service from 2.7 to 3.5 and saw an immediate 45% reduction in memory usage and 20% reduction in runtime. That's massive IMO. We saw further (but smaller) performances benefits upgrading to 3.6, again when upgrading to 3.7, and expect to see even more with 3.8.