Thank you Anirudh for working on the fix! Update on the current status of RC1 release: Need to merge the following PRs: #10677 <https://github.com/apache/incubator-mxnet/pull/10677>,#10661 <https://github.com/apache/incubator-mxnet/pull/10661>,#10676 <https://github.com/apache/incubator-mxnet/pull/10676>,#10666 <https://github.com/apache/incubator-mxnet/pull/10666> Then we can proceed with running the nightlies and RAT checks before we cut the release candidate rc1.
On Mon, Apr 23, 2018 at 10:11 PM, Anirudh Acharya <[email protected]> wrote: > Yes ideally, the fix should be - > 1. take the padding tuple from onnx models and pass the appropriately sized > tuple to mxnet. And if the padding in the onnx model is asymmetric we > should throw an exception, saying it is not yet supported. > 2. And also explore supporting asymmetric padding in mxnet. > > The model used in the example tutorial that is failing is actually using > symmetric padding. And the code in onnx-mxnet can be fixed to handle this. > Will get a PR out to pass the padding tuple of the right length and raise > an exception when there is asymmetric padding. > > > > Regards, > Anirudh > > > On Mon, Apr 23, 2018 at 8:56 PM, Da Zheng <[email protected]> wrote: > > > Here is a temporary fix, so MKLDNN conv follows the behavior of MXNet > > conv (always uses the first two elements in the tuple as padding). > > https://github.com/apache/incubator-mxnet/pull/10666 > > > > I also created an issue regarding this problem so that we'll fix it > > properly in the future. > > https://github.com/apache/incubator-mxnet/issues/10663 > > > > Best, > > Da > > > > On Mon, Apr 23, 2018 at 8:00 PM, Anirudh <[email protected]> wrote: > > > Hi, > > > > > > Currently mkldnn support adds the check for tuple length for padding > and > > > raises the exception. Even though this is the correct approach, this is > > not > > > consistent with > > > MXNet behavior without MKLDNN enabled. > > > > > > I agree with Da and Haibin that the right approach in the longer term > > would > > > be to: > > > 1. raise an exception for MXNet conv operator when tuple size is 4. > > > 2. Fix onnx converter to convert paddings correctly > > > > > > This would prevent silents failures with wrong results and also have a > > > consistent behavior for MXNet with or without MKLDNN enabled. > > > > > > Having said that, in the shorter term I think it is okay to remove the > > > check in MKLDNN, if we can notify the user somehow(maybe a warning) in > > > ONNX-converter about (left, right, top, bottom) being interpreted as > > > (height, width) for Conv operator. > > > > > > Anirudh > > > > > > > > > > > > > > > On Mon, Apr 23, 2018 at 6:19 PM, Haibin Lin <[email protected]> > > > wrote: > > > > > >> Hi Da, > > >> > > >> After looking at your detailed description in github issue > > >> https://github.com/apache/incubator-mxnet/issues/10663, I would argue > > that > > >> the fix should go to mxnet-onnx instead of mxnet-mkldnn. > > >> > > >> In onnx padding params are in the form of (left, right, top, bottom), > > which > > >> supports asymmetric padding. In MXNet only symmetric padding is > > supported > > >> in the form of (height, width) tuple, which doesn't support asymmetric > > >> padding. > > >> > > >> If you remove the check in mkldnn, that means onnx-mxnet user can pass > > in > > >> an asymmetric padding of (left, right, top, bottom) but mxnet would > only > > >> look at the first 2 numbers in the tuple and compute the wrong result > > >> silently. > > >> > > >> One way to fix it is to support (left, right, top, bottom) in mxnet > > padding > > >> op (both with mkl-dnn and without mkl-dnn), which will take some time. > > >> Another way is that mxnet-onnx checks the (left, right, top, bottom) > > tuple, > > >> and pass the arguments in the form of (height, width) to mxnet ops if > > >> symmetric, or throw an exception for asymmetric paddings. > > >> > > >> I'm not an expert in onnx but I'm curious if this can be fixed in > > >> mxnet-onnx quickly. Removing the correct check in mkldnn doesn't sound > > >> reasonable... > > >> > > >> Best, > > >> Haibin > > >> > > >> On Mon, Apr 23, 2018 at 5:12 PM, Zheng, Da <[email protected]> wrote: > > >> > > >> > I think I have found the root of the problem. > > >> > > > >> > The tutorial loads a model from onnx, which uses padding (left, > right, > > >> > top, bottom). But mxnet uses padding (height, width). Currently, > when > > an > > >> > ONNX model is loaded to MXNet, the padding is converted correctly. > > MXNet > > >> > conv doesn't check the number of elements in the padding and ignores > > the > > >> > problem. However, mxnet-mkldnn checks it and fails. > > >> > > > >> > The correct way of fixing this issue is to check the number of > > elements > > >> in > > >> > the padding tuple in mxnet conv. If the tuple size mismatches, it > > should > > >> > fail. When an ONNX model is loaded to MXNet, the padding should be > > >> > converted correctly. > > >> > > > >> > For the time being, I'll just fix MKLDNN so it doesn't check the > tuple > > >> > length of padding. > > >> > > > >> > Best, > > >> > Da > > >> > > > >> > On 4/23/18, 2:58 PM, "Zheng, Da" <[email protected]> wrote: > > >> > > > >> > I can reproduce the bug now. I'm working on a fix for the bug. > > >> > > > >> > Currently, there are a few more bug fixes for MKLDNN. > > >> > https://github.com/apache/incubator-mxnet/pull/10651 > > >> > https://github.com/apache/incubator-mxnet/pull/10624 > > >> > https://github.com/apache/incubator-mxnet/pull/10619/files > > >> > https://github.com/apache/incubator-mxnet/pull/10616 > > >> > https://github.com/apache/incubator-mxnet/pull/10591/files > > >> > > > >> > They are ready for review. > > >> > > > >> > I just discussed with @Anirudh. Maybe we should say in the > release > > >> > note that MKLDNN in MXNet is still experimental. > > >> > What do you think? > > >> > > > >> > Best, > > >> > Da > > >> > > > >> > On 4/21/18, 7:59 PM, "Zheng, Da" <[email protected]> wrote: > > >> > > > >> > It seems I have problems of compiling scala when running > "make > > >> > docs". Please see the error below. > > >> > > > >> > Are there any instructions of compiling these scala code? I > > guess > > >> > I might miss some packages. > > >> > I tried installing libslf4j-java and didn't help. > > >> > > > >> > Best, > > >> > Da > > >> > > > >> > Execute "cd /home/ubuntu/apache-mxnet-src- > > >> > 1.2.0.rc0-incubating/docs/../scala-package; scaladoc `find . -type > f > > >> > -name "*.scala" | egrep "\/core|\/infer" | egrep -v "Suite"`; exit > 0" > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > objectdetector/SSDClassifierExample.scala:24: error: object kohsuke > > is > > >> > not a member of package org > > >> > import org.kohsuke.args4j.{CmdLineParser, Option} > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > objectdetector/SSDClassifierExample.scala:25: error: object slf4j > is > > not > > >> > a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > objectdetector/SSDClassifierExample.scala:41: error: class Option > is > > >> > abstract; cannot be instantiated > > >> > @Option(name = "--model-path-prefix", usage = "the input > > model > > >> > directory and prefix of the model") > > >> > ^ > > >> > warning: no valid targets for annotation on value > > modelPathPrefix > > >> > - it is discarded unused. You may specify targets with > > meta-annotations, > > >> > e.g. @(<error> @getter) > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > objectdetector/SSDClassifierExample.scala:43: error: class Option > is > > >> > abstract; cannot be instantiated > > >> > @Option(name = "--input-image", usage = "the input image") > > >> > ^ > > >> > warning: no valid targets for annotation on value > > inputImagePath > > >> - > > >> > it is discarded unused. You may specify targets with > meta-annotations, > > >> e.g. > > >> > @(<error> @getter) > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > objectdetector/SSDClassifierExample.scala:45: error: class Option > is > > >> > abstract; cannot be instantiated > > >> > @Option(name = "--input-dir", usage = "the input batch of > > >> images > > >> > directory") > > >> > ^ > > >> > warning: no valid targets for annotation on value > > inputImageDir - > > >> > it is discarded unused. You may specify targets with > meta-annotations, > > >> e.g. > > >> > @(<error> @getter) > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > objectdetector/SSDClassifierExample.scala:51: error: not found: > value > > >> > LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > >> > classOf[SSDClassifierExample]) > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > objectdetector/SSDClassifierExample.scala:109: error: not found: > type > > >> > CmdLineParser > > >> > val parser : CmdLineParser = new CmdLineParser(inst) > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > objectdetector/SSDClassifierExample.scala:109: error: not found: > type > > >> > CmdLineParser > > >> > val parser : CmdLineParser = new CmdLineParser(inst) > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > imageclassifier/ImageClassifierExample.scala:21: error: object > > kohsuke > > >> is > > >> > not a member of package org > > >> > import org.kohsuke.args4j.{CmdLineParser, Option} > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > imageclassifier/ImageClassifierExample.scala:22: error: object > slf4j > > is > > >> > not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > imageclassifier/ImageClassifierExample.scala:40: error: not found: > > value > > >> > LoggerFactory > > >> > private val logger = LoggerFactory.getLogger(classOf[ > > >> > ImageClassifierExample]) > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > imageclassifier/ImageClassifierExample.scala:108: error: not found: > > type > > >> > CmdLineParser > > >> > val parser: CmdLineParser = new CmdLineParser(inst) > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > imageclassifier/ImageClassifierExample.scala:108: error: not found: > > type > > >> > CmdLineParser > > >> > val parser: CmdLineParser = new CmdLineParser(inst) > > >> > ^ > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > imageclassifier/ImageClassifierExample.scala:157: error: class > > Option is > > >> > abstract; cannot be instantiated > > >> > @Option(name = "--model-path-prefix", usage = "the input > > model > > >> > directory") > > >> > ^ > > >> > warning: no valid targets for annotation on value > > modelPathPrefix > > >> > - it is discarded unused. You may specify targets with > > meta-annotations, > > >> > e.g. @(<error> @getter) > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > imageclassifier/ImageClassifierExample.scala:159: error: class > > Option is > > >> > abstract; cannot be instantiated > > >> > @Option(name = "--input-image", usage = "the input image") > > >> > ^ > > >> > warning: no valid targets for annotation on value > > inputImagePath > > >> - > > >> > it is discarded unused. You may specify targets with > meta-annotations, > > >> e.g. > > >> > @(<error> @getter) > > >> > ./examples/src/main/scala/org/apache/mxnetexamples/infer/ > > >> > imageclassifier/ImageClassifierExample.scala:161: error: class > > Option is > > >> > abstract; cannot be instantiated > > >> > @Option(name = "--input-dir", usage = "the input batch of > > >> images > > >> > directory") > > >> > ^ > > >> > warning: no valid targets for annotation on value > > inputImageDir - > > >> > it is discarded unused. You may specify targets with > meta-annotations, > > >> e.g. > > >> > @(<error> @getter) > > >> > ./core/src/main/scala/org/apache/mxnet/util/ > > >> NativeLibraryLoader.scala:22: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.{Logger, LoggerFactory} > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/util/ > > >> NativeLibraryLoader.scala:27: > > >> > error: not found: type Logger > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[NativeLibraryLoader]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/util/ > > >> NativeLibraryLoader.scala:27: > > >> > error: not found: value LoggerFactory > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[NativeLibraryLoader]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/util/ > > >> WarnIfNotDisposed.scala:20: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.{Logger, LoggerFactory} > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/util/ > > >> WarnIfNotDisposed.scala:27: > > >> > error: not found: type Logger > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[WarnIfNotDisposed]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/util/ > > >> WarnIfNotDisposed.scala:27: > > >> > error: not found: value LoggerFactory > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[WarnIfNotDisposed]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/LRScheduler. > scala:19: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/LRScheduler. > scala:56: > > >> > error: not found: value LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > >> > classOf[FactorScheduler]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/SGD. > > scala:59: > > >> > error: value clip is not a member of object org.apache.mxnet.NDArray > > >> > resdGrad = NDArray.clip(resdGrad, -clipGradient, > > >> > clipGradient) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/ > > >> AdaGrad.scala:54: > > >> > error: value sqrt is not a member of object org.apache.mxnet.NDArray > > >> > val newWeight = (-lr * (resdGrad / NDArray.sqrt(history > + > > >> > this.epsilon) + this.wd * weight)) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/ > > >> AdaGrad.scala:54: > > >> > error: overloaded method value * with alternatives: > > >> > (x: Double)Double <and> > > >> > (x: Float)Float <and> > > >> > (x: Long)Float <and> > > >> > (x: Int)Float <and> > > >> > (x: Char)Float <and> > > >> > (x: Short)Float <and> > > >> > (x: Byte)Float > > >> > cannot be applied to (org.apache.mxnet.NDArray) > > >> > val newWeight = (-lr * (resdGrad / NDArray.sqrt(history > + > > >> > this.epsilon) + this.wd * weight)) > > >> > > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/Adam. > > scala:90: > > >> > error: value clip is not a member of object org.apache.mxnet.NDArray > > >> > resdGrad = NDArray.clip(resdGrad, -clipGradient, > > >> > clipGradient) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/Adam. > > scala:99: > > >> > error: value sqrt is not a member of object org.apache.mxnet.NDArray > > >> > val step = (learningRate * meanT / > > (NDArray.sqrt(varianceT) + > > >> > epsilon)) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/NAG. > > scala:67: > > >> > error: value clip is not a member of object org.apache.mxnet.NDArray > > >> > resdGrad = NDArray.clip(resdGrad, -clipGradient, > > >> > clipGradient) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/ > > >> AdaDelta.scala:52: > > >> > error: value clip is not a member of object org.apache.mxnet.NDArray > > >> > resdGrad = NDArray.clip(resdGrad, -clipGradient, > > >> > clipGradient) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/ > > >> AdaDelta.scala:62: > > >> > error: value sqrt is not a member of object org.apache.mxnet.NDArray > > >> > NDArray.sqrt(accDelta + this.epsilon) / > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/ > > >> AdaDelta.scala:63: > > >> > error: value sqrt is not a member of object org.apache.mxnet.NDArray > > >> > NDArray.sqrt(accG + this.epsilon) * > > >> > resdGrad).disposeDepsExcept(accDelta, accG, resdGrad) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/ > > >> RMSProp.scala:56: > > >> > error: value clip is not a member of object org.apache.mxnet.NDArray > > >> > resdGrad = NDArray.clip(resdGrad, -clipGradient, > > >> > clipGradient) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/ > > >> RMSProp.scala:71: > > >> > error: value sqrt is not a member of object org.apache.mxnet.NDArray > > >> > (this.gamma2 * delta - lr * (resdGrad / NDArray.sqrt(n > > - g > > >> * > > >> > g + 1e-4f) + wd * weight)) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/ > > >> RMSProp.scala:71: > > >> > error: overloaded method value * with alternatives: > > >> > (x: Double)Double <and> > > >> > (x: Float)Float <and> > > >> > (x: Long)Float <and> > > >> > (x: Int)Float <and> > > >> > (x: Char)Float <and> > > >> > (x: Short)Float <and> > > >> > (x: Byte)Float > > >> > cannot be applied to (org.apache.mxnet.NDArray) > > >> > (this.gamma2 * delta - lr * (resdGrad / NDArray.sqrt(n > > - g > > >> * > > >> > g + 1e-4f) + wd * weight)) > > >> > > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/SGLD. > > scala:65: > > >> > error: value clip is not a member of object org.apache.mxnet.NDArray > > >> > resdGrad = NDArray.clip(resdGrad, -clipGradient, > > >> > clipGradient) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/optimizer/DCASGD. > > >> scala:61: > > >> > error: value clip is not a member of object org.apache.mxnet.NDArray > > >> > resdGrad = NDArray.clip(resdGrad, -clipGradient, > > >> > clipGradient) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/contrib/NDArray. > > scala:21: > > >> > error: object AddNDArrayFunctions is not a member of package > > >> > org.apache.mxnet > > >> > import org.apache.mxnet.AddNDArrayFunctions > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/contrib/NDArray. > > scala:23: > > >> > error: not found: type AddNDArrayFunctions > > >> > @AddNDArrayFunctions(true) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/contrib/Symbol. > > scala:21: > > >> > error: object AddSymbolFunctions is not a member of package > > >> org.apache.mxnet > > >> > import org.apache.mxnet.AddSymbolFunctions > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/contrib/Symbol. > > scala:23: > > >> > error: not found: type AddSymbolFunctions > > >> > @AddSymbolFunctions(true) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:22: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.{LoggerFactory, Logger} > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:60: > > >> > error: not found: type Logger > > >> > val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[FeedForward]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:60: > > >> > error: not found: value LoggerFactory > > >> > val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[FeedForward]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:265: > > >> > error: not found: type Logger > > >> > logger: Logger, workLoadList: Seq[Float]): Unit = > { > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:338: > > >> > error: not found: type Logger > > >> > batchEndCallback: BatchEndCallback = null, > > >> > logger: Logger = FeedForward.logger, > > >> > > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:299: > > >> > error: not found: type Logger > > >> > batchEndCallback: BatchEndCallback, logger: > Logger, > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:408: > > >> > error: not found: type Logger > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[FeedForward]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:408: > > >> > error: not found: value LoggerFactory > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[FeedForward]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:486: > > >> > error: not found: type Logger > > >> > private var logger: Logger = FeedForward.logger > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/FeedForward. > scala:641: > > >> > error: not found: type Logger > > >> > def setLogger(logger: Logger): Builder = { > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Executor.scala:21: > > error: > > >> > object slf4j is not a member of package org > > >> > import org.slf4j.{Logger, LoggerFactory} > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Executor.scala:60: > > error: > > >> > not found: type Logger > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[Executor]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Executor.scala:60: > > error: > > >> > not found: value LoggerFactory > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[Executor]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/NDArray.scala:24: > > error: > > >> > object slf4j is not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/NDArray.scala:33: > > error: > > >> > not found: type AddNDArrayFunctions > > >> > @AddNDArrayFunctions(false) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/NDArray.scala:36: > > error: > > >> > not found: value LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > classOf[NDArray]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/NDArray.scala:88: > > >> warning: > > >> > non-variable type argument org.apache.mxnet.NDArray in type pattern > > >> > Seq[org.apache.mxnet.NDArray] (the underlying of > > >> > Seq[org.apache.mxnet.NDArray]) is unchecked since it is eliminated > by > > >> > erasure > > >> > case ndArr: Seq[NDArray] => (ndArr.toArray, > > >> > ndArr.toArray.map(_.handle)) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/NDArray.scala:452: > > error: > > >> > value _crop_assign is not a member of object > org.apache.mxnet.NDArray > > >> > NDArray._crop_assign(Map("out" -> ret, > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/EvalMetric.scala: > 111: > > >> > error: value argmax is not a member of object > org.apache.mxnet.NDArray > > >> > NDArray.argmax(Map("axis" -> 1, "keepdims" -> > > >> true))(pred) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/EvalMetric.scala: > 113: > > >> > error: value argmax_channel is not a member of object > > >> > org.apache.mxnet.NDArray > > >> > NDArray.argmax_channel(pred) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/EvalMetric.scala: > 175: > > >> > error: value argmax_channel is not a member of object > > >> > org.apache.mxnet.NDArray > > >> > val predLabel = NDArray.argmax_channel(pred) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/EvalMetric.scala: > 235: > > >> > error: value pick is not a member of object org.apache.mxnet.NDArray > > >> > val p = NDArray.pick(Map("axis" -> this.axis))(pred, > > label) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/ExecutorManager. > > scala:21: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.{LoggerFactory, Logger} > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/ExecutorManager. > > >> scala:173: > > >> > error: not found: type Logger > > >> > val logger: Logger = LoggerFactory.getLogger(classOf[ > > >> > DataParallelExecutorManager]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/ExecutorManager. > > >> scala:173: > > >> > error: not found: value LoggerFactory > > >> > val logger: Logger = LoggerFactory.getLogger(classOf[ > > >> > DataParallelExecutorManager]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BucketingModule.scala:21: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BucketingModule.scala:22: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.Logger > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BucketingModule.scala:41: > > >> > error: not found: value LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > >> > classOf[BucketingModule]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BaseModule.scala:25: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.Logger > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BaseModule.scala:34: > > >> > error: not found: type Logger > > >> > typeName: String, throws: Boolean, logger: Logger): Unit > > = { > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> SequentialModule.scala:21: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> SequentialModule.scala:34: > > >> > error: not found: value LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > >> > classOf[SequentialModule]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/Module. > > scala:25: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/Module. > > scala:43: > > >> > error: not found: value LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > classOf[Module]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> > DataParallelExecutorGroup.scala:23: error: object slf4j is not a > > member > > >> > of package org > > >> > import org.slf4j.{Logger, LoggerFactory} > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> > DataParallelExecutorGroup.scala:29: error: not found: type Logger > > >> > private val logger: Logger = LoggerFactory.getLogger( > > classOf[ > > >> > DataParallelExecutorGroup]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> > DataParallelExecutorGroup.scala:29: error: not found: value > > >> LoggerFactory > > >> > private val logger: Logger = LoggerFactory.getLogger( > > classOf[ > > >> > DataParallelExecutorGroup]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> > DataParallelExecutorGroup.scala:44: error: value crop is not a > > member of > > >> > object org.apache.mxnet.NDArray > > >> > NDArray.crop(Map( > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> > DataParallelExecutorGroup.scala:50: error: value crop is not a > > member of > > >> > object org.apache.mxnet.NDArray > > >> > val dDstCopy: NDArray = NDArray.crop(Map( > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> > DataParallelExecutorGroup.scala:572: error: value slice_axis is > not a > > >> > member of object org.apache.mxnet.NDArray > > >> > val ogMySlice: NDArray = NDArray.slice_axis( > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> > DataParallelExecutorGroup.scala:598: error: value slice_axis is > not a > > >> > member of object org.apache.mxnet.NDArray > > >> > val labelMySlice: NDArray = > > NDArray.slice_axis(Map( > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BaseModule.scala:24: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BaseModule.scala:134: > > >> > error: not found: value LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > >> > classOf[BaseModule]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Model.scala:22: > error: > > >> > object slf4j is not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Model.scala:31: > error: > > >> not > > >> > found: value LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > classOf[Model]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Monitor.scala:21: > > error: > > >> > object slf4j is not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Monitor.scala:37: > > error: > > >> > not found: value LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > classOf[Monitor]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Monitor.scala:41: > > error: > > >> > value norm is not a member of object org.apache.mxnet.NDArray > > >> > NDArray.norm(x) / math.sqrt(x.size.toDouble).toFloat > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/KVStoreServer. > > scala:21: > > >> > error: object slf4j is not a member of package org > > >> > import org.slf4j.{Logger, LoggerFactory} > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/KVStoreServer. > > scala:24: > > >> > error: not found: type Logger > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[KVStoreServer]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/KVStoreServer. > > scala:24: > > >> > error: not found: value LoggerFactory > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[KVStoreServer]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/KVStoreServer. > > scala:49: > > >> > error: not found: type Logger > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[KVStoreServer]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/KVStoreServer. > > scala:49: > > >> > error: not found: value LoggerFactory > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[KVStoreServer]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Symbol.scala:22: > > error: > > >> > object slf4j is not a member of package org > > >> > import org.slf4j.{Logger, LoggerFactory} > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Symbol.scala:33: > > error: > > >> > not found: type Logger > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[Symbol]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Symbol.scala:33: > > error: > > >> > not found: value LoggerFactory > > >> > private val logger: Logger = LoggerFactory.getLogger( > > >> > classOf[Symbol]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Symbol.scala:826: > > error: > > >> > not found: type AddSymbolFunctions > > >> > @AddSymbolFunctions(false) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Symbol.scala:829: > > error: > > >> > not found: value LoggerFactory > > >> > private val logger = LoggerFactory.getLogger( > > classOf[Symbol]) > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/IO.scala:23: error: > > >> object > > >> > slf4j is not a member of package org > > >> > import org.slf4j.LoggerFactory > > >> > ^ > > >> > warning: there was one deprecation warning; re-run with > > >> > -deprecation for details > > >> > warning: there were 11 feature warnings; re-run with > -feature > > for > > >> > details > > >> > model contains 119 documentable templates > > >> > ./core/src/main/scala/org/apache/mxnet/RecordIO.scala:99: > > >> > warning: Tag '@param' must be followed by a symbol name > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/RecordIO.scala:99: > > >> > warning: Tag '@param' is not recognised > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BaseModule.scala:365: > > >> > warning: Could not find any member to link for "IOException". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BaseModule.scala:506: > > >> > warning: Could not find any member to link for "grad1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BaseModule.scala:488: > > >> > warning: Could not find any member to link for "out1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BaseModule.scala:204: > > >> > warning: Could not find any member to link for "out1_batch1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> > DataParallelExecutorGroup.scala:533: warning: Could not find any > > member > > >> > to link for "grad1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> > DataParallelExecutorGroup.scala:511: warning: Could not find any > > member > > >> > to link for "out1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/Module. > > scala:500: > > >> > warning: Could not find any member to link for "grad1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/Module. > > scala:476: > > >> > warning: Could not find any member to link for "out1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> SequentialModule.scala:366: > > >> > warning: Could not find any member to link for "grad1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> SequentialModule.scala:342: > > >> > warning: Could not find any member to link for "out1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BucketingModule.scala:360: > > >> > warning: Could not find any member to link for "grad1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/module/ > > >> BucketingModule.scala:336: > > >> > warning: Could not find any member to link for "out1_dev1,". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Executor.scala:256: > > >> > warning: Could not find any member to link for > > >> "IllegalArgumentException". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Executor.scala:244: > > >> > warning: Could not find any member to link for > > >> "IllegalArgumentException". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Executor.scala:232: > > >> > warning: Could not find any member to link for > > >> "IllegalArgumentException". > > >> > /** > > >> > ^ > > >> > ./core/src/main/scala/org/apache/mxnet/Executor.scala:220: > > >> > warning: Could not find any member to link for > > >> "IllegalArgumentException". > > >> > /** > > >> > ^ > > >> > 27 warnings found > > >> > 131 errors found > > >> > Execute "rm -rf /home/ubuntu/apache-mxnet-src- > > >> > 1.2.0.rc0-incubating/docs/_build/html/api/scala/docs" > > >> > Execute "mkdir -p /home/ubuntu/apache-mxnet-src- > > >> > 1.2.0.rc0-incubating/docs/_build/html/api/scala/docs" > > >> > Execute "cd /home/ubuntu/apache-mxnet-src- > > >> > 1.2.0.rc0-incubating/docs/../scala-package && mv -f index > > >> > /home/ubuntu/apache-mxnet-src-1.2.0.rc0-incubating/docs/_ > > >> > build/html/api/scala/docs" > > >> > Execute "cd /home/ubuntu/apache-mxnet-src- > > >> > 1.2.0.rc0-incubating/docs/../scala-package && mv -f index.html > > >> > /home/ubuntu/apache-mxnet-src-1.2.0.rc0-incubating/docs/_ > > >> > build/html/api/scala/docs" > > >> > Execute "cd /home/ubuntu/apache-mxnet-src- > > >> > 1.2.0.rc0-incubating/docs/../scala-package && mv -f org > > >> > /home/ubuntu/apache-mxnet-src-1.2.0.rc0-incubating/docs/_ > > >> > build/html/api/scala/docs" > > >> > Execute "cd /home/ubuntu/apache-mxnet-src- > > >> > 1.2.0.rc0-incubating/docs/../scala-package && mv -f lib > > >> > /home/ubuntu/apache-mxnet-src-1.2.0.rc0-incubating/docs/_ > > >> > build/html/api/scala/docs" > > >> > Execute "cd /home/ubuntu/apache-mxnet-src- > > >> > 1.2.0.rc0-incubating/docs/../scala-package && mv -f index.js > > >> > /home/ubuntu/apache-mxnet-src-1.2.0.rc0-incubating/docs/_ > > >> > build/html/api/scala/docs" > > >> > Execute "cd /home/ubuntu/apache-mxnet-src- > > >> > 1.2.0.rc0-incubating/docs/../scala-package && mv -f package.html > > >> > /home/ubuntu/apache-mxnet-src-1.2.0.rc0-incubating/docs/_ > > >> > build/html/api/scala/docs" > > >> > building [mo]: targets for 0 po files that are out of date > > >> > building [html]: targets for 153 source files that are out > of > > >> date > > >> > updating environment: 153 added, 0 changed, 0 removed > > >> > reading sources... [ 5%] api/perl/symbol > > >> > > > >> > Exception occurred: > > >> > File "/usr/local/lib/python3.5/ > dist-packages/recommonmark/ > > >> states.py", > > >> > line 134, in run_role > > >> > content=content) > > >> > TypeError: 'NoneType' object is not callable > > >> > The full traceback has been saved in > > >> /tmp/sphinx-err-n1z6zazm.log, > > >> > if you want to report the issue to the developers. > > >> > Please also report this if it was a user error, so that a > > better > > >> > error message can be provided next time. > > >> > A bug report can be filed in the tracker at < > > >> > https://github.com/sphinx-doc/sphinx/issues>. Thanks! > > >> > Makefile:75: recipe for target 'html' failed > > >> > make[1]: *** [html] Error 1 > > >> > make[1]: Leaving directory '/home/ubuntu/apache-mxnet- > > >> > src-1.2.0.rc0-incubating/docs' > > >> > Makefile:482: recipe for target 'docs' failed > > >> > make: *** [docs] Error 2 > > >> > > > >> > On 4/21/18, 5:15 PM, "Thomas DELTEIL" < > > [email protected] > > >> > > > >> > wrote: > > >> > > > >> > @Anirudh, thanks for looking into it! However I do not > > >> > understand what you > > >> > mean by 'set as CPU and not GPU'? MXNet compiled with > > mkldnn > > >> > and cuda is > > >> > supposed to be able to work with both context no? There > > are > > >> > other tutorials > > >> > that are running successfully on both CPU and GPU > context. > > >> > > > >> > @Da to reproduce: > > >> > > > >> > Download the source of 1.2.0.rc0 and extract it, cd into > > it. > > >> > > > >> > make docs > > >> > make clean > > >> > make -j $(nproc) USE_OPENCV=1 USE_BLAS=openblas > USE_CUDA=1 > > >> > USE_CUDA_PATH=/usr/local/cuda USE_CUDNN=1 USE_MKLDNN=1 > > >> > export PYTHONPATH=$(pwd)/python > > >> > cd tests/nightly > > >> > python test_tutorial.py --tutorial onnx/super_resolution > > >> > > > >> > you can also start a jupyter notebook server and try to > > run > > >> > docs/_build/html/tutorials/onnx/super_resolution.ipynb > > >> > > > >> > > > >> > > > >> > 2018-04-21 15:08 GMT-07:00 Zheng, Da <[email protected] > >: > > >> > > > >> > > @ThomasDelteil could you show me how to reproduce the > > >> > problem? I'll take > > >> > > it a look as well. > > >> > > > > >> > > Best, > > >> > > Da > > >> > > > > >> > > Sent from my iPhone > > >> > > > > >> > > On Apr 21, 2018, at 1:12 PM, Anirudh Acharya < > > >> > [email protected] > > >> > > <mailto:[email protected]>> wrote: > > >> > > > > >> > > @ThomasDelteil that might be due to the fact that in > the > > >> > example, the > > >> > > context is being set as CPU and not GPU. > > >> > > But I will still take a look as soon as possible. > > >> > > > > >> > > > > >> > > Regards > > >> > > Anirudh > > >> > > > > >> > > On Sat, Apr 21, 2018 at 11:10 AM, Thomas DELTEIL < > > >> > > [email protected]<mailto: > thomas.delteil1@gmail. > > com > > >> >> > > >> > > wrote: > > >> > > > > >> > > *-0* > > >> > > > > >> > > compiled from source on GPU CUDA/CUDNN, tutorials run > > fine. > > >> > > > > >> > > However: > > >> > > Compiled from source and adding USE_MKLDNN=1, the > > >> > onnx/super_resolution > > >> > > tutorial is crashing on this line: > > >> > > > > >> > > ``` > > >> > > from collections import namedtuple > > >> > > Batch = namedtuple('Batch', ['data']) > > >> > > > > >> > > # forward on the provided data batch > > >> > > mod.forward(Batch([mx.nd.array(test_image)])) > > >> > > ``` > > >> > > > > >> > > Stack trace returned 8 entries: > > >> > > [bt] (0) > > >> > > /home/ubuntu/apache-mxnet-src- > > 1.2.0.rc0-incubating/python/ > > >> > > mxnet/../../lib/libmxnet.so( > > dmlc::StackTrace[abi:cxx11]()+ > > >> > 0x5b) > > >> > > [0x7feef615721b] > > >> > > [bt] (1) > > >> > > /home/ubuntu/apache-mxnet-src- > > 1.2.0.rc0-incubating/python/ > > >> > > mxnet/../../lib/libmxnet.so(dmlc::LogMessageFatal::~ > > >> > > LogMessageFatal()+0x28) > > >> > > [0x7feef6158258] > > >> > > [bt] (2) > > >> > > /home/ubuntu/apache-mxnet-src- > > 1.2.0.rc0-incubating/python/ > > >> > > mxnet/../../lib/libmxnet.so( > > mxnet::engine::ThreadedEngine: > > >> > > :ExecuteOprBlock(mxnet::RunContext, > > >> > > mxnet::engine::OprBlock*)+0xfa9) [0x7feef8b1ad49] > > >> > > [bt] (3) > > >> > > /home/ubuntu/apache-mxnet-src- > > 1.2.0.rc0-incubating/python/ > > >> > > mxnet/../../lib/libmxnet.so( > std::_Function_handler<void > > >> > > (std::shared_ptr<dmlc::ManualEvent>), > > >> > > mxnet::engine::ThreadedEnginePerDevice:: > > >> > PushToExecute(mxnet::engine:: > > >> > > OprBlock*, > > >> > > bool)::{lambda()#1}::operator()() > > >> > > const::{lambda(std::shared_ > > ptr<dmlc::ManualEvent>)#1}>::_ > > >> > > M_invoke(std::_Any_data > > >> > > const&, std::shared_ptr<dmlc::ManualEvent>&&)+0xe2) > > >> > [0x7feef8b30d82] > > >> > > [bt] (4) > > >> > > /home/ubuntu/apache-mxnet-src- > > 1.2.0.rc0-incubating/python/ > > >> > > mxnet/../../lib/libmxnet.so( > > std::thread::_Impl<std::_Bind_ > > >> > > simple<std::function<void > > >> > > (std::shared_ptr<dmlc::ManualEvent>)> > > >> > (std::shared_ptr<dmlc:: > > >> > > ManualEvent>)> > > >> > > ::_M_run()+0x4a) [0x7feef8b2af1a] > > >> > > [bt] (5) /home/ubuntu/anaconda3/bin/../ > > >> > lib/libstdc++.so.6(+0xafc5c) > > >> > > [0x7fef7cc79c5c] > > >> > > [bt] (6) /lib/x86_64-linux-gnu/ > libpthread.so.0(+0x76ba) > > >> > [0x7fef7dec36ba] > > >> > > [bt] (7) /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) > > >> > [0x7fef7dbf941d] > > >> > > > > >> > > Depending on how experimental we consider MKLDNN, that > > >> could > > >> > be a *-1 *for > > >> > > me. > > >> > > > > >> > > 2018-04-21 9:01 GMT-07:00 Jun Wu <[email protected] > > >> > <mailto:wu > > >> > > [email protected]>>: > > >> > > > > >> > > +1 > > >> > > > > >> > > Compiled from source. Ran the model quantization > > example. > > >> > Both quantized > > >> > > model generation and inference can run successfully. > > >> > > > > >> > > On Fri, Apr 20, 2018 at 5:14 PM, Indhu < > > >> > [email protected]<mailto: > > >> > > [email protected]>> wrote: > > >> > > > > >> > > +1 > > >> > > > > >> > > Compiled from source on P3 instance. Tested the SSD > > example > > >> > and some > > >> > > Gluon > > >> > > examples. > > >> > > > > >> > > On Wed, Apr 18, 2018, 7:40 PM Anirudh < > > >> [email protected] > > >> > <mailto: > > >> > > [email protected]>> wrote: > > >> > > > > >> > > Hi everyone, > > >> > > > > >> > > This is a vote to release Apache MXNet (incubating) > > version > > >> > 1.2.0. > > >> > > Voting > > >> > > will start now (Wednesday, April 18th) and end at 7:40 > > PM > > >> > PDT, > > >> > > Saturday, > > >> > > April 21st. > > >> > > > > >> > > Link to the release notes: > > >> > > > > >> > > > > >> > > https://cwiki.apache.org/confluence/display/MXNET/ > > >> > > Apache+MXNet+%28incubating%29+1.2.0+Release+Notes > > >> > > > > >> > > Link to the release candidate 1.2.0.rc0: > > >> > > https://github.com/apache/ > incubator-mxnet/releases/tag/ > > >> > 1.2.0.rc0 > > >> > > > > >> > > View this page, click on "Build from Source", and use > > the > > >> > source code > > >> > > obtained from the 1.2.0.rc0 tag: > > >> > > https://mxnet.incubator.apache.org/install/index.html > > >> > > > > >> > > (Note: The README.md points to the 1.2.0 tag and does > > not > > >> > work at the > > >> > > moment.) > > >> > > > > >> > > Please remember to TEST first before voting > accordingly: > > >> > > +1 = approve > > >> > > +0 = no opinion > > >> > > -1 = disapprove (provide reason) > > >> > > > > >> > > Thanks, > > >> > > > > >> > > Anirudh > > >> > > > > >> > > > > >> > > > > >> > > > > >> > > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > > >> > > > > >
