Originally posted by HadrienG
View Post
Announcement
Collapse
No announcement yet.
Fedora Stakeholders Debate Statically Linking Python For Better Performance
Collapse
X
-
Originally posted by Vistaus View PostI thought Fortran was the choice of many scientists???
Comment
-
Originally posted by rene View Post
instead of having the shared object mapped once in each process using it, you would have a copy-on-write modified version in each process for the relocated jumps all over the place.
Comment
-
Originally posted by Ifr2 View PostIf there is something cheap in this world, that is disk space. I get that a ton of Python programs aren't even 3MB, so this change would more than double their size, but for such a potential improvement of performance is a no brainer to me.
There are other programs, which use libpython, i.e. some $WINDOW_MANAGER, which uses it for internal scripting stuff. They will possibly get statically linked, too.
Comment
-
-
Originally posted by Mathias View Post
I think all the go dependencies are statically compiled and only libc is dynamically linked. BTW Rust does the same. Rust can even statically link to two different versions of the same library. Think: Dependency1 depends on fooV1 and Dep2 depends on fooV2, foo will be compiled and linked twice.
You are correct regarding how other dependencies work in Go. All dependencies are statically linked into one fat binary together with the supplied Go-runtime. Another thing to note about dependencies in Go projects, is that they very often end up picking a plethora of random libraries from east and west on Github. As an example, consider the dependency list for Kubernetes. This is also partly encouraged by the Go eco-system and toolchain.
Comment
-
Originally posted by F.Ultra View PostWhy? The library will still jump to the same addresses regardless of how many processes that link to it.
Comment
Comment