From 0cb44812d75099a352615a35ff95504e654a278b Mon Sep 17 00:00:00 2001 From: Tor Myklebust Date: Mon, 21 Apr 2014 17:56:11 -0400 Subject: [PATCH] Drop the iteration limit from 40k to max(400,20n). --- .../scala/org/apache/spark/mllib/optimization/NNLSbyPCG.scala | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mllib/src/main/scala/org/apache/spark/mllib/optimization/NNLSbyPCG.scala b/mllib/src/main/scala/org/apache/spark/mllib/optimization/NNLSbyPCG.scala index f889ac2842d1b..ef732d32c2394 100644 --- a/mllib/src/main/scala/org/apache/spark/mllib/optimization/NNLSbyPCG.scala +++ b/mllib/src/main/scala/org/apache/spark/mllib/optimization/NNLSbyPCG.scala @@ -99,11 +99,12 @@ private[mllib] object NNLSbyPCG { val dir = ws.dir val lastDir = ws.lastDir val res = ws.res + val iterMax = Math.max(400, 20 * n) var lastNorm = 0.0 var iterno = 0 var lastWall = 0 // Last iteration when we hit a bound constraint. var i = 0 - while (iterno < 40000) { + while (iterno < iterMax) { // find the residual SimpleBlas.gemv(1.0, ata, x, 0.0, res) SimpleBlas.axpy(-1.0, atb, res)