#464 Issue 421
Closed by pbokoc. Opened by shwetanaresh.
fedora-docs/ shwetanaresh/release-notes issue421_performance-improvement  into  f32

Download 464.patch

RN for https://pagure.io/fedora-docs/release-notes/issue/421

@mhroncok@redhat.com, could you please review the text? Thanks!

OK, I will do that

Can we reverse the oder of the information? Aka we first say things are faster and only later we say there is a price.

Why not simply Improved performance of Python?

Why not simply Improved performance of Python?

IMHO, for Fedora users, it is improved performance of python-based workloads. When we say 'Improved performance of Python', it can be considered as improved performance of Python as a programming language. For Fedora users this doesn't seem to be the case.

Maybe it's a language barrier for me, but I don't really understand what are you trying to say. It is improved performance of Python as an interpreter of the language.

Can we reverse the oder of the information? Aka we first say things are faster and only later we say there is a price.

Please let me if the following holds good:

+++++++++
Improved performance with Python-based workloads

The Python-dependent core components and other Python-based workloads now show improved performance.
The improved performance is seen due to the inclusion of -fno-semantic-interposition flag in the Python interpreters.
As a result of this inclusion the LD_PRELOAD variable is no longer available to override a symbol from libpython.
+++++++++++++

Improved performance with Python-based workloads

Python is faster

The Python-dependent core components and other Python-based workloads now show improved performance.

Software written in Python now runs faster.

The improved performance is seen due to the inclusion of -fno-semantic-interposition flag in the Python interpreters.

The improved performance is accomplished by building the Python interpreter with -fno-semantic-interposition -- internal libpython symbol lookups are faster. The speedup is up to 27% depending on the workload.

As a result of this inclusion the LD_PRELOAD variable is no longer available to override a symbol from libpython.

As a side effect...

I also suggest adding:

If Fedora users need to use LD_PRELOAD to override symbols in libpython, the recommended way is to build a custom Python build without -fno-semantic-interposition.

It is still possible to use LD_PRELOAD to override symbols in other libraries (for example in glibc).

Thank you for the suggestions, Miro!
I have tried to rephrase it a bit. Hope it holds good.

+++++++++++
Improved performance of Python

Depending on the workload, up to 27% improved performance is now observed in Python-based software.
The improved performance is accomplished by building the Python interpreter with -fno-semantic-interposition- an internal libpython symbol for which the look-ups are faster.
As a consequence, if Fedora users need to use LD_PRELOAD to override symbols in libpython, the recommended way is to build a custom Python build without -fno-semantic-interposition. However, it is still possible to use LD_PRELOAD to override symbols in other libraries (for example in glibc).
++++++++++

The improved performance is accomplished by building the Python interpreter with -fno-semantic-interposition- an internal libpython symbol for which the look-ups are faster.

I don't understand this sentence (the second half).

Just copied that from your earlier suggestion:

+++++
The improved performance is accomplished by building the Python interpreter with -fno-semantic-interposition -- internal libpython symbol lookups are faster.
++++++

There seemed to be something missing in "internal libpython symbol lookups are faster", so tried to phrase it as per my understanding. Let me know the updates required please.

There is no libpython symbol. Internal symbol lookups from libpython library to libpython library are now faster because they are direct and there is no semantic interposition.

Ah! Thanks much!
Here's the modified text:
(Fingers crossed! :)

+++++++++++
Improved performance of Python

Depending on the workload, up to 27% improved performance is now observed in Python-based software.
The improved performance is accomplished by building the Python interpreter with -fno-semantic-interposition. Because there is no semantic interposition now, the internal symbol look-ups from libpython to libpython library are direct and faster.
As a consequence, if Fedora users need to use LD_PRELOAD to override symbols in libpython, the recommended way is to build a custom Python build without -fno-semantic-interposition. However, it is still possible to use LD_PRELOAD to override symbols in other libraries (for example in glibc).
++++++++++

Just to clarify:
- Can we say 'The improved performance is accomplished by building the Python interpreter with -fno-semantic-interposition tag', or is a better term other than tag?
- In the sentence 'Because there is no semantic interposition now, the internal symbol look-ups from libpython to libpython library are direct and faster.', hope the part 'from libpython to libpython library' is correct.

it's perfect, thanks

Thanks, Miro! Appreciate your help!

1 new commit added

  • Included SME review

Merged manually, thanks!

Pull-Request has been closed by pbokoc

Metadata