https://www.pypy.org/features.html
> Our main executable comes with a Just-in-Time compiler. It is really fast in running most benchmarks—including very large and complicated Python applications, not just 10-liners.
> There are two cases that you should be aware where PyPy will not be able to speed up your code:
> Short-running processes: if it doesn't run for at least a few seconds, then the JIT compiler won't have enough time to warm up.
> If all the time is spent in run-time libraries (i.e. in C functions), and not actually running Python code, the JIT compiler will not help.
CFFI-based modules should work without a big penalty, but these are generally slower than extension modules.
What I have heard, though, is that string operations are more expensive in pypy than cpython.
Regardless, performance gains and regressions are unlikely to generalize; what's true for someone else's project may not be true for yours. If you're concerned about performance, I recommend benchmarking your own codebase.