The Python programming language delivers new amazing versions once a year, along with a feature-locked beta release in the previous half of the year, and the concluding release comes up at the end of the year. The feature finalized set for Python 3.11 has been finalized with a beta version reachable for testing. Developers are inspired to try their hands on this latest non-production code to ensure that it works well with your programs and to get an overview of whether the code you are working on will get advantage from its performance enrichments.
Python function calls also require less overhead in Python 3.11. Stack frames for function call now use less memory and are more efficiently designed. Also, while recursive calls aren't tail-optimized (which probably isn't possible in Python, anyway), they are more efficient than in previous versions. The Python interpreter itself also starts faster, and core modules needed for the Python runtime are stored and loaded more efficiently.
According to the official Python benchmark suite, Python 3.11 runs around 1.25 times faster than version 3.10. Note that this speedup is an aggregate measure: some things are much faster, but many others are only slightly faster or about the same. Still, the best part about these improvements is that they come for free. You don't need to make any code changes for Python programs to take advantage of 3.11's speedups.
According to the news, the performance advancements are accomplished only by gaining the advantage of Faster CPython- a Microsoft-funded, smartly developed project. Faster CPython has the default interpreter known as 'CPython'. This interpreter adopts just-in-time compiler technology and finds out the code that can be advantageous from this special and smart solution. This grants instructions in executed code objects to be framed with a new instruction. The new instruction is executed faster. This, after all, makes all of Python run faster.
CPython is the reference implementation of the Python programming language. Written in C and Python, CPython is the Python language's default and most widely used implementation. CPython can be defined as an interpreter and a compiler as it compiles Python code into bytecode before interpreting it. It has a foreign function interface with several languages, including C, in which one must explicitly write bindings in a language other than Python.
Python 3.11 is the first release to benefit from a project called Faster CPython, where CPython is the standard version of the interpreter. Faster CPython is a project funded by Microsoft, whose members include Python inventor Guido van Rossum, Microsoft senior software engineer Eric Snow, and Mark Shannon – who is under contract to Microsoft as tech lead for the project.
Python 3.11 is expected to have an even better error locating feature in the tracebacks. This would make it clear which syntax or object had triggered the reported error.
In version 3.11, the CPython interpreter is much more optimized and much faster than in version 3.10. CPython 3.11 is on average 1.22x faster than CPython 3.10 when measured with the performance benchmark suite, and compiled with GCC on Ubuntu Linux. Depending on your workload, the speedup could be up to 10–60% faster.
In this version, Python will cache the bytecode in the pycache directory to speed up the process of loading modules. Interpreter startup is expected to be 10–15% faster in Python 3.11.
In Python, frames are created whenever Python calls a user-defined function. This frame holds the information about the function execution. There are new frame optimizations in version 3.11 to make it faster during runtime.
The one factor which was not possible in Python is not only present but also more efficient in Python 3.11, which is recursive calls in this are not tail-optimized, and also the stack frames of the function call in Python 3.11 are more effectively designed and used relatively less memory so by this we can say that Python function calls require fewer efforts in Python 3.11.
So, now, can we say Python is not overrated?
Join our WhatsApp Channel to get the latest news, exclusives and videos on WhatsApp
_____________
Disclaimer: Analytics Insight does not provide financial advice or guidance. Also note that the cryptocurrencies mentioned/listed on the website could potentially be scams, i.e. designed to induce you to invest financial resources that may be lost forever and not be recoverable once investments are made. You are responsible for conducting your own research (DYOR) before making any investments. Read more here.