I was not able to find clear, good documentation for installing MxNet on Windows. Is MXNet “really” supported on Windows?
Can someone knowledgeable please provide clear instructions for installing the pre-built MxNet packages on Windows?
Here is my saga of trying to do this so far. Queries by others on the internet seems to suggest installing MXNet on Windows has been difficult for others as well. Clear instructions will help a lot.
- Went to the Install tab of MXNet website. I first selected the “Windows”, “Python”, “CPU” combination. Wow, that gives a blank page! I consoled myself saying “OK, don’t bother about the CPU version for now; let me get the GPU version”.
- So, I selected the “Windows”, “Python”, “GPU” combination. The resulting page is confusing. At the top it says “Follow the installation instructions in this guide to set up MXNet.” and near the bottom it says “Install MXNet with GPU support using CUDA 8.0” and then gives the command “pip install mxnet-cu80==1.0.0”.
- I first tried the “pip install mxnet-cu80==1.0.0”. Ouch, pip says “Could not find a version that satisfies the requirement mxnet-cu80==1.0.0”. Seems like only older versions of MxNet are available via pip on Windows??
- Alright, now that pip install didn’t work, I thought I shall try the other way, by following the “Follow the installation instructions in this guide to set up MXNet.”. So, I clicked on the link for “this guide” which took me to a page titled “Installing MxNet in Windows”.
- One set of instructions there are for building the libraries yourself. Another more attractive option listed there is “Installing the Prebuilt Package on Windows”. So, I decided to go for the latter.
- I followed the link given with “Download the latest prebuilt package from the Releases tab of MXNet.”. Clicking the “Releases” link there took me to the following page: https://github.com/apache/incubator-mxnet/releases.
- Ouch! Bad luck again. The promised pre-built binaries can’t be found there! I could find only source code zip.
- Alright, after spending some time Googling, I found that people stopped posting the pre-built packages for Windows at that location (without updating the link at the MXNet site?). Instead, the new place to find the pre-built binaries seems to be https://github.com/yajiedesign/mxnet/releases.
- So, I go to that page. Sure enough, there are some 7z packages there. But, I could not find any instructions there about what to do with those packages!
- After some Googling around again and reading random posts by people who have tried going through the pain before, I downloaded “prebuildbase_win10_x64_vc14_v2.7z” and “prebuildbase_win10_x64_vc14_v2.7z”. Wondered what should be done with them…
- Anyway, created the folder called “C:\MxNet” as suggested in some of those (rather old) random posts and extracted the first package there.
- Now, where exactly should the second package be extracted into? I guessed that the second package is probably intended to be extracted so that the “lib” and “include” folders created by the two packages are same. Was that really correct guess? Anyway, as per that wild guess, I placed the contents of those two packages so that the “lib” and “include” folders of the two align.
- The “README.txt” file there says to download CUDNN. But, I also see that the cudnn dlls are included in the “prebuildbase_win10_x64_vc14_v2.7z”. So, is downloading CuDNN from NVidia site really necessary (i.e., README.txt not updated after beginning to include CUDNN dll)? Anyway, to be safe, I downloaded and installed CUDNN from NVidia site also.
- Opened a command prompt from the folder C:\MXNet and ran “setupenv.cmd”.
- Now, from the README file, I was supposed to run
setup.pyin c:/MXNet/python folder. So, I brought up Anaconda prompt, went to the folder c:\MXNet\python and ran “python
setup.pyinstall”. That ran fine.
- After this, I go to Anaconda prompt and try “import mxnet”. But, that gives “module not found” error. What should I do for this?
P.S. I am using Anaconda distribution of Python.