From f14c160f4f7b14ede3c7db43384384a9ad89c8cb Mon Sep 17 00:00:00 2001 From: Rahul Date: Fri, 8 Jul 2016 16:13:33 +0530 Subject: [PATCH] [jvm-packages][xgboost4j-spark][Minor] Move sparkContext dependency from the XGBoostModel (#1335) * Move sparkContext dependency from the XGBoostModel * Update Spark example to declare SparkContext as implict --- .../xgboost4j/scala/example/spark/DistTrainWithSpark.scala | 2 +- .../scala/ml/dmlc/xgboost4j/scala/spark/XGBoostModel.scala | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/jvm-packages/xgboost4j-example/src/main/scala/ml/dmlc/xgboost4j/scala/example/spark/DistTrainWithSpark.scala b/jvm-packages/xgboost4j-example/src/main/scala/ml/dmlc/xgboost4j/scala/example/spark/DistTrainWithSpark.scala index a5ebfa05a..6cd418fde 100644 --- a/jvm-packages/xgboost4j-example/src/main/scala/ml/dmlc/xgboost4j/scala/example/spark/DistTrainWithSpark.scala +++ b/jvm-packages/xgboost4j-example/src/main/scala/ml/dmlc/xgboost4j/scala/example/spark/DistTrainWithSpark.scala @@ -31,7 +31,7 @@ object DistTrainWithSpark { val sparkConf = new SparkConf().setAppName("XGBoost-spark-example") .set("spark.serializer", "org.apache.spark.serializer.KryoSerializer") sparkConf.registerKryoClasses(Array(classOf[Booster])) - val sc = new SparkContext(sparkConf) + implicit val sc = new SparkContext(sparkConf) val inputTrainPath = args(2) val inputTestPath = args(3) val outputModelPath = args(4) diff --git a/jvm-packages/xgboost4j-spark/src/main/scala/ml/dmlc/xgboost4j/scala/spark/XGBoostModel.scala b/jvm-packages/xgboost4j-spark/src/main/scala/ml/dmlc/xgboost4j/scala/spark/XGBoostModel.scala index f97d7b17d..ea8e8a5e5 100644 --- a/jvm-packages/xgboost4j-spark/src/main/scala/ml/dmlc/xgboost4j/scala/spark/XGBoostModel.scala +++ b/jvm-packages/xgboost4j-spark/src/main/scala/ml/dmlc/xgboost4j/scala/spark/XGBoostModel.scala @@ -23,7 +23,7 @@ import org.apache.spark.rdd.RDD import ml.dmlc.xgboost4j.java.{DMatrix => JDMatrix} import ml.dmlc.xgboost4j.scala.{DMatrix, Booster} -class XGBoostModel(_booster: Booster)(implicit val sc: SparkContext) extends Serializable { +class XGBoostModel(_booster: Booster) extends Serializable { /** * Predict result with the given testset (represented as RDD) @@ -89,7 +89,7 @@ class XGBoostModel(_booster: Booster)(implicit val sc: SparkContext) extends Ser * * @param modelPath The model path as in Hadoop path. */ - def saveModelAsHadoopFile(modelPath: String): Unit = { + def saveModelAsHadoopFile(modelPath: String)(implicit sc: SparkContext): Unit = { val path = new Path(modelPath) val outputStream = path.getFileSystem(sc.hadoopConfiguration).create(path) _booster.saveModel(outputStream)