-
Notifications
You must be signed in to change notification settings - Fork 6.8k
Upgrade archive utility and add back FC improvement #15171
Upgrade archive utility and add back FC improvement #15171
Conversation
@mxnet-label-bot Add [pr-work-in-progress, Backend] |
@larroy @samskalicky @sandeep-krishnamurthy @Chancebair please help review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks @anirudh2290!
@@ -180,6 +180,8 @@ More information on turning these features on or off are found in the following | |||
There is a configuration file for make, | |||
[`make/config.mk`](https://github.com/apache/incubator-mxnet/blob/master/make/config.mk), that contains all the compilation options. You can edit it and then run `make` or `cmake`. `cmake` is recommended for building MXNet (and is required to build with MKLDNN), however you may use `make` instead. For building with Java/Scala/Clojure, only `make` is supported. | |||
|
|||
**NOTE:** When certain set of build flags are set, MXNet archive increases to more than 4 GB. Since MXNet uses archive internally archive runs into a bug ("File Truncated": [bugreport](https://sourceware.org/bugzilla/show_bug.cgi?id=14625)) for archives greater than 4 GB. Please use ar version 2.27 or greater to overcome this bug. Please see https://github.com/apache/incubator-mxnet/issues/15084 for more details. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we explicitly give the flags that causes such bloat, so that, not all users building from source need to worry new archive utility?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the most significant part comes from the GPU code, and it's already an explicit switch
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes most significant part comes from GPU code. If I provide set of flags that are failing today, no guarantee that tomorrow it would not bloat and not fail for a different set of flags (which includes USE_CUDA=1 and USE_CUDNN=1) and then these instructions may quickly become outdated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a way to detect this case so users are not faced with a strange error message but specifically prompted to upgrade ar? I'm afraid that users might not see this specific part of our documentation and just get frustrated. If our build pipeline would automatically notify them (ideally ahead of time or) after the error occured, that would be beneficial to the user experience.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@marcoabreu I have added a warning message for users if the ar is smaller than 2.27
I don't think it's a good idea to download a custom It also means that MXNet has to stop stating that it supports Ubuntu 16.04. The requirement should be lift to at least 18.04 then. If the community agrees, then we probably should embark on the quest of upgrading the AMI to the latest Ubuntu 18.04. @marcoabreu you might want to look at this. |
@edisongustavo We cannot drop support for 16.04 since its LTS period ends April 2021: https://ubuntu.com/about/release-cycle |
@edisongustavo As I suggested this is a short term solution to unblock the PRs. I imagine that upgrading the AMI would probably take longer and also needs more thought. Note that every day lost here is going to cause more pain for devs pushing code to MXNet. |
@szha @marcoabreu @sandeep-krishnamurthy Is this good to merge ? |
thanks @marcoabreu . will merge unless someone has objections. |
For more info see: https://github.com/apache/incubator-mxnet/issues/15084) | ||
$(shell sleep 5) | ||
endif | ||
endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about the corresponding modification to CMake?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we dont yet need it for cmake. we have encountered this issue only with make.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's weird. Thanks for your answer. I would expect to have similar amount of object code with both builds.
* Upgrade archive utility and add back FC improvement This reverts commit 6543488. * Change permissions for Ubuntu AR * Extract and cd into binutils dir * Allow AR path to be chosen by user * Add AR path to build * Fix AR paths * Revert AR flag in makefile * Build from source doc updated * Add comment * Add warning for smaller ar versions, add set -ex
This reverts commit 6543488.
Also upgrades archive utility and fixes: #15084
Description
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.
Changes
Comments