[jira] [Updated] (MXNET-106) [ONNX] Adding ONNX Model zoo tests
[ https://issues.apache.org/jira/browse/MXNET-106?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Rajan updated MXNET-106: Summary: [ONNX] Adding ONNX Model zoo tests (was: [ONNX] Fix Maxpool and BatchNorm operator.) > [ONNX] Adding ONNX Model zoo tests > -- > > Key: MXNET-106 > URL: https://issues.apache.org/jira/browse/MXNET-106 > Project: Apache MXNet > Issue Type: Bug >Reporter: Rajan >Priority: Major > Time Spent: 2h 10m > Remaining Estimate: 0h > > Maxpool and BatchNorm tests are failing on onnx backed tests. Needs to be > fixed. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Updated] (MXNET-120) FP16 support for distributed training
[ https://issues.apache.org/jira/browse/MXNET-120?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Rahul Huilgol updated MXNET-120: Status: In Progress (was: To Do) > FP16 support for distributed training > - > > Key: MXNET-120 > URL: https://issues.apache.org/jira/browse/MXNET-120 > Project: Apache MXNet > Issue Type: New Feature >Reporter: Rahul Huilgol >Assignee: Rahul Huilgol >Priority: Major > -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Created] (MXNET-120) FP16 support for distributed training
Rahul Huilgol created MXNET-120: --- Summary: FP16 support for distributed training Key: MXNET-120 URL: https://issues.apache.org/jira/browse/MXNET-120 Project: Apache MXNet Issue Type: New Feature Reporter: Rahul Huilgol -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Assigned] (MXNET-120) FP16 support for distributed training
[ https://issues.apache.org/jira/browse/MXNET-120?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Rahul Huilgol reassigned MXNET-120: --- Assignee: Rahul Huilgol > FP16 support for distributed training > - > > Key: MXNET-120 > URL: https://issues.apache.org/jira/browse/MXNET-120 > Project: Apache MXNet > Issue Type: New Feature >Reporter: Rahul Huilgol >Assignee: Rahul Huilgol >Priority: Major > -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Updated] (MXNET-101) Float 16: Leaky ReLU
[ https://issues.apache.org/jira/browse/MXNET-101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Hao Jin updated MXNET-101: -- Status: In Review (was: In Progress) > Float 16: Leaky ReLU > > > Key: MXNET-101 > URL: https://issues.apache.org/jira/browse/MXNET-101 > Project: Apache MXNet > Issue Type: Improvement >Reporter: Hao Jin >Assignee: Hao Jin >Priority: Major > Time Spent: 50m > Remaining Estimate: 0h > -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Created] (MXNET-119) int64 support for tensor dimension sizes
Anirudh Subramanian created MXNET-119: - Summary: int64 support for tensor dimension sizes Key: MXNET-119 URL: https://issues.apache.org/jira/browse/MXNET-119 Project: Apache MXNet Issue Type: New Feature Reporter: Anirudh Subramanian https://github.com/apache/incubator-mxnet/issues/10158 -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Commented] (MXNET-118) Add tutorial on data augmentation with masks
[ https://issues.apache.org/jira/browse/MXNET-118?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16407179#comment-16407179 ] Thomas Lane commented on MXNET-118: --- PR: https://github.com/apache/incubator-mxnet/pull/10178 > Add tutorial on data augmentation with masks > > > Key: MXNET-118 > URL: https://issues.apache.org/jira/browse/MXNET-118 > Project: Apache MXNet > Issue Type: Improvement >Reporter: Thomas Lane >Priority: Minor > > When we adjust the position of the base image as part of data augmentation, > we also need to apply exactly the same operation to the associated masks. An > example would be after applying a horizontal flip to the base image, we'd > need to also flip the mask, to preserve the correspondence between the base > image and mask. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Created] (MXNET-118) Add tutorial on data augmentation with masks
Thomas Lane created MXNET-118: - Summary: Add tutorial on data augmentation with masks Key: MXNET-118 URL: https://issues.apache.org/jira/browse/MXNET-118 Project: Apache MXNet Issue Type: Improvement Reporter: Thomas Lane When we adjust the position of the base image as part of data augmentation, we also need to apply exactly the same operation to the associated masks. An example would be after applying a horizontal flip to the base image, we'd need to also flip the mask, to preserve the correspondence between the base image and mask. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Created] (MXNET-117) Sparse broadcast operator
Hao Jin created MXNET-117: - Summary: Sparse broadcast operator Key: MXNET-117 URL: https://issues.apache.org/jira/browse/MXNET-117 Project: Apache MXNet Issue Type: New Feature Reporter: Hao Jin Add sparse operator for broadcast_add/mul/div(csr, dense) -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Updated] (MXNET-117) Sparse broadcast operator
[ https://issues.apache.org/jira/browse/MXNET-117?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Hao Jin updated MXNET-117: -- Assignee: Hao Jin Status: In Progress (was: To Do) > Sparse broadcast operator > - > > Key: MXNET-117 > URL: https://issues.apache.org/jira/browse/MXNET-117 > Project: Apache MXNet > Issue Type: New Feature >Reporter: Hao Jin >Assignee: Hao Jin >Priority: Major > > Add sparse operator for broadcast_add/mul/div(csr, dense) -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Updated] (MXNET-92) Float 16: L2 Normalization
[ https://issues.apache.org/jira/browse/MXNET-92?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chris Olivier updated MXNET-92: --- Resolution: Fixed Status: Done (was: To Do) > Float 16: L2 Normalization > -- > > Key: MXNET-92 > URL: https://issues.apache.org/jira/browse/MXNET-92 > Project: Apache MXNet > Issue Type: Improvement > Components: MXNet Engine >Reporter: Chris Olivier >Assignee: Hao Jin >Priority: Major > Time Spent: 1h 40m > Remaining Estimate: 0h > -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Updated] (MXNET-92) Float 16: L2 Normalization
[ https://issues.apache.org/jira/browse/MXNET-92?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chris Olivier updated MXNET-92: --- Status: To Do (was: In Progress) > Float 16: L2 Normalization > -- > > Key: MXNET-92 > URL: https://issues.apache.org/jira/browse/MXNET-92 > Project: Apache MXNet > Issue Type: Improvement > Components: MXNet Engine >Reporter: Chris Olivier >Assignee: Hao Jin >Priority: Major > Time Spent: 1h 40m > Remaining Estimate: 0h > -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Updated] (MXNET-89) Bucketing Module bug: #9405
[ https://issues.apache.org/jira/browse/MXNET-89?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Anirudh Subramanian updated MXNET-89: - Status: Done (was: In Review) > Bucketing Module bug: #9405 > --- > > Key: MXNET-89 > URL: https://issues.apache.org/jira/browse/MXNET-89 > Project: Apache MXNet > Issue Type: Bug > Components: MXNet Engine >Reporter: Anirudh Subramanian >Assignee: Anirudh Subramanian >Priority: Minor > Time Spent: 50m > Remaining Estimate: 0h > > Please see: https://github.com/apache/incubator-mxnet/issues/9405 -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Updated] (MXNET-89) Bucketing Module bug: #9405
[ https://issues.apache.org/jira/browse/MXNET-89?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Anirudh Subramanian updated MXNET-89: - Status: In Review (was: In Progress) > Bucketing Module bug: #9405 > --- > > Key: MXNET-89 > URL: https://issues.apache.org/jira/browse/MXNET-89 > Project: Apache MXNet > Issue Type: Bug > Components: MXNet Engine >Reporter: Anirudh Subramanian >Assignee: Anirudh Subramanian >Priority: Minor > Time Spent: 50m > Remaining Estimate: 0h > > Please see: https://github.com/apache/incubator-mxnet/issues/9405 -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Updated] (MXNET-100) Float 16: Correlation
[ https://issues.apache.org/jira/browse/MXNET-100?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Hao Jin updated MXNET-100: -- Status: Done (was: In Review) > Float 16: Correlation > - > > Key: MXNET-100 > URL: https://issues.apache.org/jira/browse/MXNET-100 > Project: Apache MXNet > Issue Type: Improvement >Reporter: Hao Jin >Assignee: Hao Jin >Priority: Major > Time Spent: 3h > Remaining Estimate: 0h > -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Created] (MXNET-116) Object Detector using classifier and ImageClassifier functions
ROSHANI NAGMOTE created MXNET-116: - Summary: Object Detector using classifier and ImageClassifier functions Key: MXNET-116 URL: https://issues.apache.org/jira/browse/MXNET-116 Project: Apache MXNet Issue Type: Sub-task Reporter: ROSHANI NAGMOTE -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: issues-unsubscr...@mxnet.apache.org For additional commands, e-mail: issues-h...@mxnet.apache.org
[jira] [Updated] (MXNET-115) USE_LAPACK is forced on all platforms with OpenBLAS and cmake
[ https://issues.apache.org/jira/browse/MXNET-115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Anton Chernov updated MXNET-115: Description: When building with cmake, MXNET_USE_LAPACK is inappropriately forced on all platforms breaking the build if the library is not available. {code:java} tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/krprod_test.cc.o: In function `mxnet_lapack_dposv': /work/mxnet/src/operator/contrib/../c_lapack_api.h:260: undefined reference to `dposv_' /work/mxnet/src/operator/contrib/../c_lapack_api.h:265: undefined reference to `dposv_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:285: undefined reference to `sgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:302: undefined reference to `sorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:286: undefined reference to `dgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:303: undefined reference to `dorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:285: undefined reference to `sgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:302: undefined reference to `sorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dpotri': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:235: undefined reference to `dpotri_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_spotri': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:234: undefined reference to `spotri_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dpotrf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:233: undefined reference to `dpotrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_spotrf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:232: undefined reference to `spotrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dsyevd': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:323: undefined reference to `dsyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:323: undefined reference to `dsyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:323: undefined reference to `dsyevd_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_ssyevd': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:322: undefined reference to `ssyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:322: undefined reference to `ssyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:322: undefined reference to `ssyevd_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:286: undefined reference to `dgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:303: undefined reference to `dorgqr_' collect2: error: ld returned 1 exit status {code} The corresponding cmake override is in root [CMakeLists.txt|https://github.com/apache/incubator-mxnet/blob/master/CMakeLists.txt#L350-L359]: {code:java} # ---[ LAPack if(USE_LAPACK AND NOT MSVC) add_definitions(-DMXNET_USE_LAPACK=1) list(APPEND mxnet_LINKER_LIBS lapack) else(USE_LAPACK) # Workaround for Windows until using new Jenkinsfile. if(BLAS STREQUAL "Open" OR BLAS STREQUAL "open" OR USE_BLAS STREQUAL "Open" OR USE_BLAS STREQUAL "open") add_definitions(-DMXNET_USE_LAPACK=1) endif() endif() {code} This effectively forces the {{MXNET_USE_LAPACK}} define on all platforms (USE_LAPACK=OFF, MSVC=ON / USE_LAPACK=OFF, MSVC=OFF) if the intent was actually switching it off. Right now the problem is that some python tests depend on the lapack functions. h2. Possible solution An API function should be introduced to tell the language binding if lapack (or corresponding operators) is available and the tests should be skipped if not. was: When building with cmake, MXNET_USE_LAPACK is inappropriately forced on all platforms breaking the build if the library is not available. {code} tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/krprod_test.cc.o: In function `mxnet_lapack_dposv': /work/mxnet/src/operator/contrib/../c_lapack_api.h:260: undefined reference to `dposv_' /work/mxnet/src/operator/contrib/../c_lapack_api.h:265: undefined reference to `dposv_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:285: undefined reference to `sgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:302: undefined reference to `sorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dgelqf':
[jira] [Updated] (MXNET-115) USE_LAPACK is forced on all platforms with OpenBLAS and cmake
[ https://issues.apache.org/jira/browse/MXNET-115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Anton Chernov updated MXNET-115: Description: When building with cmake, MXNET_USE_LAPACK is inappropriately forced on all platforms breaking the build if the library is not available. {code} tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/krprod_test.cc.o: In function `mxnet_lapack_dposv': /work/mxnet/src/operator/contrib/../c_lapack_api.h:260: undefined reference to `dposv_' /work/mxnet/src/operator/contrib/../c_lapack_api.h:265: undefined reference to `dposv_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:285: undefined reference to `sgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:302: undefined reference to `sorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:286: undefined reference to `dgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:303: undefined reference to `dorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:285: undefined reference to `sgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:302: undefined reference to `sorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dpotri': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:235: undefined reference to `dpotri_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_spotri': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:234: undefined reference to `spotri_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dpotrf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:233: undefined reference to `dpotrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_spotrf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:232: undefined reference to `spotrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dsyevd': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:323: undefined reference to `dsyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:323: undefined reference to `dsyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:323: undefined reference to `dsyevd_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_ssyevd': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:322: undefined reference to `ssyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:322: undefined reference to `ssyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:322: undefined reference to `ssyevd_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:286: undefined reference to `dgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:303: undefined reference to `dorgqr_' collect2: error: ld returned 1 exit status {code} The corresponding cmake override is in root [CMakeLists.txt|https://github.com/apache/incubator-mxnet/blob/master/CMakeLists.txt#L350-L359]: {code} # ---[ LAPack if(USE_LAPACK AND NOT MSVC) add_definitions(-DMXNET_USE_LAPACK=1) list(APPEND mxnet_LINKER_LIBS lapack) else(USE_LAPACK) # Workaround for Windows until using new Jenkinsfile. if(BLAS STREQUAL "Open" OR BLAS STREQUAL "open" OR USE_BLAS STREQUAL "Open" OR USE_BLAS STREQUAL "open") add_definitions(-DMXNET_USE_LAPACK=1) endif() endif() {code} This effectively forces the {{MXNET_USE_LAPACK}} define on all platforms (USE_LAPACK=OFF, MSVC=ON / USE_LAPACK=OFF, MSVC=OFF) if the intent was actually switching it off. Right now the problem is that some python tests depend on the lapack functions. h3. Possible solution An API function should be introduced to tell the language binding if lapack (or corresponding operators) is available and the tests should be skipped if not. was: When building with cmake, MXNET_USE_LAPACK is inappropriately forced on all platforms breaking the build if the library is not available. {code} tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/krprod_test.cc.o: In function `mxnet_lapack_dposv': /work/mxnet/src/operator/contrib/../c_lapack_api.h:260: undefined reference to `dposv_' /work/mxnet/src/operator/contrib/../c_lapack_api.h:265: undefined reference to `dposv_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:285: undefined reference to `sgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:302: undefined reference to `sorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dgelqf':
[jira] [Updated] (MXNET-115) USE_LAPACK is forced on all platforms with OpenBLAS and cmake
[ https://issues.apache.org/jira/browse/MXNET-115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Anton Chernov updated MXNET-115: Description: When building with cmake, MXNET_USE_LAPACK is inappropriately forced on all platforms breaking the build if the library is not available. {code} tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/krprod_test.cc.o: In function `mxnet_lapack_dposv': /work/mxnet/src/operator/contrib/../c_lapack_api.h:260: undefined reference to `dposv_' /work/mxnet/src/operator/contrib/../c_lapack_api.h:265: undefined reference to `dposv_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:285: undefined reference to `sgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:302: undefined reference to `sorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:286: undefined reference to `dgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:303: undefined reference to `dorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:285: undefined reference to `sgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:302: undefined reference to `sorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dpotri': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:235: undefined reference to `dpotri_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_spotri': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:234: undefined reference to `spotri_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dpotrf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:233: undefined reference to `dpotrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_spotrf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:232: undefined reference to `spotrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dsyevd': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:323: undefined reference to `dsyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:323: undefined reference to `dsyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:323: undefined reference to `dsyevd_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_ssyevd': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:322: undefined reference to `ssyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:322: undefined reference to `ssyevd_' /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:322: undefined reference to `ssyevd_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:286: undefined reference to `dgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:303: undefined reference to `dorgqr_' collect2: error: ld returned 1 exit status {code} The corresponding cmake override is in root [CMakeLists.txt|https://github.com/apache/incubator-mxnet/blob/master/CMakeLists.txt#L350-L359]: {code} # ---[ LAPack if(USE_LAPACK AND NOT MSVC) add_definitions(-DMXNET_USE_LAPACK=1) list(APPEND mxnet_LINKER_LIBS lapack) else(USE_LAPACK) # Workaround for Windows until using new Jenkinsfile. if(BLAS STREQUAL "Open" OR BLAS STREQUAL "open" OR USE_BLAS STREQUAL "Open" OR USE_BLAS STREQUAL "open") add_definitions(-DMXNET_USE_LAPACK=1) endif() endif() {code} This effectively forces the {{MXNET_USE_LAPACK}} define on all platforms (USE_LAPACK=OFF, MSVC=ON / USE_LAPACK=OFF, MSVC=OFF) if the intent was actually switching it off. Right now the problem is that some python tests depend on the lapack functions. Possible solution An API function should be introduced to tell the language binding if lapack (or corresponding operators) is available and the tests should be skipped if not. was: When building with cmake, MXNET_USE_LAPACK is inappropriately forced on all platforms breaking the build if the library is not available. {code:java} tests/CMakeFiles/mxnet_unit_tests.dir/cpp/operator/krprod_test.cc.o: In function `mxnet_lapack_dposv': /work/mxnet/src/operator/contrib/../c_lapack_api.h:260: undefined reference to `dposv_' /work/mxnet/src/operator/contrib/../c_lapack_api.h:265: undefined reference to `dposv_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sgelqf': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:285: undefined reference to `sgeqrf_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_sorglq': /work/mxnet/src/operator/tensor/./.././c_lapack_api.h:302: undefined reference to `sorgqr_' libmxnet.a(la_op.cc.o): In function `MXNET_LAPACK_dgelqf':