You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mxnet.apache.org by GitBox <gi...@apache.org> on 2021/03/25 23:00:52 UTC

[GitHub] [incubator-mxnet] leezu opened a new issue #20095: package libgomp.so in pypi wheels

leezu opened a new issue #20095:
URL: https://github.com/apache/incubator-mxnet/issues/20095


   libgomp, just like libgfortran is [covered by GCC Runtime Library Exception](https://www.gnu.org/licenses/gcc-exception-3.1-faq.html) and we may include it inside our pypi wheel to ensure consistent performance even on systems that have outdated libgomp. The wheel currently assumes that the libgomp from host operating system can be used, but that is prohibited by manylinux2014 policy (and has the negative performance impact on old OS): https://www.python.org/dev/peps/pep-0599/#id20


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@mxnet.apache.org
For additional commands, e-mail: issues-help@mxnet.apache.org


[GitHub] [incubator-mxnet] leezu commented on issue #20095: package libgomp.so in pypi wheels

Posted by GitBox <gi...@apache.org>.
leezu commented on issue #20095:
URL: https://github.com/apache/incubator-mxnet/issues/20095#issuecomment-841314954


   > So do we still need to put libgomp.so into the wheels but will have to do it in another way or just simply ignore this right now?
   
   If we want to be compliant with manylinux2014 policy, yes, we need to put it in the wheel.
   But the easiest option for now is probably to ask users to install system libgomp. That works because libgomp maintainers were careful to avoid `soversion` bumps of the libgomp and the newer libgomps are still compatible with the older ones.
   
   
   If we want to package libgomp.so into the wheel, we have to be careful because manylinux2014 requires us to compile on CentOS7, which comes with a very old libgomp that may contains bugs.
   So if we would put that in the wheel, mxnet may run slower for users of newer distributions, compared to if they install system libgomp. We would need to benchmark that first. If it indeed causes a slowdown, we'd have two options:
   
   1) Build a newer libgomp from source on CentOS7 and package the optimized/new libgomp (this is not officially supported by gcc, but "possible" - though may take substantial effort).
   2) wait until perennial manylinux https://github.com/pypa/manylinux/issues/542 get's adapted and switch the CD to CentOS 8
   
   So I'd suggest to ask users to install libgomp for now (don't be fully manylinux2014 compliant) and revisit the decision once https://github.com/pypa/manylinux/issues/542 is resolved
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@mxnet.apache.org
For additional commands, e-mail: issues-help@mxnet.apache.org


[GitHub] [incubator-mxnet] Duconnor commented on issue #20095: package libgomp.so in pypi wheels

Posted by GitBox <gi...@apache.org>.
Duconnor commented on issue #20095:
URL: https://github.com/apache/incubator-mxnet/issues/20095#issuecomment-841586218


   @leezu Got it. Thanks for your thorough explanation.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@mxnet.apache.org
For additional commands, e-mail: issues-help@mxnet.apache.org


[GitHub] [incubator-mxnet] leezu commented on issue #20095: package libgomp.so in pypi wheels

Posted by GitBox <gi...@apache.org>.
leezu commented on issue #20095:
URL: https://github.com/apache/incubator-mxnet/issues/20095#issuecomment-807683082


   To implement this, search the whole codebase for "libgfortran" and just add the analogous code for "libgomp" at each location


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@mxnet.apache.org
For additional commands, e-mail: issues-help@mxnet.apache.org


[GitHub] [incubator-mxnet] Duconnor commented on issue #20095: package libgomp.so in pypi wheels

Posted by GitBox <gi...@apache.org>.
Duconnor commented on issue #20095:
URL: https://github.com/apache/incubator-mxnet/issues/20095#issuecomment-841290127


   That's okay :) since I'm also starting to learn about wheels and packaging in python through working on this issue. So do we still need to put libgomp.so into the wheels but will have to do it in another way or just simply ignore this right now?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@mxnet.apache.org
For additional commands, e-mail: issues-help@mxnet.apache.org


[GitHub] [incubator-mxnet] leezu commented on issue #20095: package libgomp.so in pypi wheels

Posted by GitBox <gi...@apache.org>.
leezu commented on issue #20095:
URL: https://github.com/apache/incubator-mxnet/issues/20095#issuecomment-841284101


   Sorry @Duconnor, I later realized that "To implement this, search the whole codebase for "libgfortran" and just add the analogous code for "libgomp" at each location" won't work on the CD, as with RedHat devtoolset, the libgfortran.so is just a text file containing linker commands to point to a different file.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@mxnet.apache.org
For additional commands, e-mail: issues-help@mxnet.apache.org