On Mon, Nov 04, 2024 at 09:29:43AM +0000, Alastair McKinstry wrote:Hi On 04/11/2024 09:06, Adrian Bunk wrote:All of the SONAMES and ABI/APIs are preserved, except for C++ and Java which were not formally standardized I believe. This means that both OpenMPI 4 and OpenMPI 5 are shipping identical libraries libmpi.so.40 and so will clash. I'd need to investigate further if libmpi_cxx.so would cope working with OpenMPI 5+ , but at minimum we would need to ship OpenMPI4 and 5 as separate source packages, with a complex arrangement of OpenMPI 4 only shipping libmpi_cxx.so, which I'm not sure would work.Noone wants to ship both versions in a release. My point/question was whether e.g. mixing libraries from OpenMPI 5 and OpenMPI 6 in a binary would work. If OpenMPI is a collection of libraries that are only guaranteed to work together when everything is the same version, then splitting would not bring any benefits.
I really doubt mixing libraries from 5 and 6 would work.
Longer term, we need to add symbols to OpenMPI to avoid transitions.Symbols don't avoid transitions.
Some transitions. They don't stop all,eg removing libraries and functionality. But they've been relatively successful in eg glibc and MPI itself is pretty conservative in removing stuff.
Alastaircu Adrian
-- Alastair McKinstry, GPG: 82383CE9165B347C787081A2CBE6BB4E5D9AD3A5 e: alastair@mckinstry.ie, im: @alastair:mckinstry.ie @amckinstry@mastodon.ie Commander Vimes didn’t like the phrase “The innocent have nothing to fear,” believing the innocent had everything to fear, mostly from the guilty but in the longer term even more from those who say things like “The innocent have nothing to fear.” - T. Pratchett, Snuff