From 7730d323cceb4c636a96b09148a50e24c2675eee Mon Sep 17 00:00:00 2001 From: liurenjie1024 Date: Wed, 26 Jun 2024 14:44:14 +0800 Subject: [PATCH] Use args to display lore info. --- .../nvidia/spark/rapids/GpuAggregateExec.scala | 1 + .../scala/com/nvidia/spark/rapids/GpuExec.scala | 15 +++++++++------ .../com/nvidia/spark/rapids/lore/GpuLore.scala | 2 +- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/sql-plugin/src/main/scala/com/nvidia/spark/rapids/GpuAggregateExec.scala b/sql-plugin/src/main/scala/com/nvidia/spark/rapids/GpuAggregateExec.scala index fb24a0338b0..6d79dec447a 100644 --- a/sql-plugin/src/main/scala/com/nvidia/spark/rapids/GpuAggregateExec.scala +++ b/sql-plugin/src/main/scala/com/nvidia/spark/rapids/GpuAggregateExec.scala @@ -1758,6 +1758,7 @@ case class GpuHashAggregateExec( |${ExplainUtils.generateFieldString("Functions", aggregateExpressions)} |${ExplainUtils.generateFieldString("Aggregate Attributes", aggregateAttributes)} |${ExplainUtils.generateFieldString("Results", resultExpressions)} + |Lore: ${loreArgs.mkString(", ")} |""".stripMargin } diff --git a/sql-plugin/src/main/scala/com/nvidia/spark/rapids/GpuExec.scala b/sql-plugin/src/main/scala/com/nvidia/spark/rapids/GpuExec.scala index 47e541f48ea..d3eec3f83b2 100644 --- a/sql-plugin/src/main/scala/com/nvidia/spark/rapids/GpuExec.scala +++ b/sql-plugin/src/main/scala/com/nvidia/spark/rapids/GpuExec.scala @@ -20,7 +20,7 @@ import ai.rapids.cudf.NvtxColor import com.nvidia.spark.rapids.Arm.withResource import com.nvidia.spark.rapids.filecache.FileCacheConf import com.nvidia.spark.rapids.lore.{GpuLore, GpuLoreDumpRDD} -import com.nvidia.spark.rapids.lore.GpuLore.{lordIdOf, LORE_DUMP_PATH_TAG, LORE_DUMP_RDD_TAG} +import com.nvidia.spark.rapids.lore.GpuLore.{loreIdOf, LORE_DUMP_PATH_TAG, LORE_DUMP_RDD_TAG} import com.nvidia.spark.rapids.shims.SparkShimImpl import org.apache.hadoop.fs.Path @@ -378,11 +378,14 @@ trait GpuExec extends SparkPlan { }.getOrElse(orig) } - override def nodeName: String = { - val loreId = lordIdOf(this) - val lorePath = getTagValue(LORE_DUMP_PATH_TAG) - val loreRDDInfo = getTagValue(LORE_DUMP_RDD_TAG) - s"${super.nodeName} [loreId=$loreId] [lorePath=$lorePath] [loreRDDInfo=$loreRDDInfo]" + override def stringArgs: Iterator[Any] = super.stringArgs ++ loreArgs + + protected def loreArgs: Iterator[String] = { + val loreIdStr = loreIdOf(this).map(id => s"[loreId=$id]") + val lorePathStr = getTagValue(LORE_DUMP_PATH_TAG).map(path => s"[lorePath=$path]") + val loreRDDInfoStr = getTagValue(LORE_DUMP_RDD_TAG).map(info => s"[loreRDDInfo=$info]") + + List(loreIdStr, lorePathStr, loreRDDInfoStr).flatten.iterator } private def dumpLoreMetaInfo(): Unit = { diff --git a/sql-plugin/src/main/scala/com/nvidia/spark/rapids/lore/GpuLore.scala b/sql-plugin/src/main/scala/com/nvidia/spark/rapids/lore/GpuLore.scala index be2c7968189..21a26023222 100644 --- a/sql-plugin/src/main/scala/com/nvidia/spark/rapids/lore/GpuLore.scala +++ b/sql-plugin/src/main/scala/com/nvidia/spark/rapids/lore/GpuLore.scala @@ -226,7 +226,7 @@ object GpuLore { newPlan } - def lordIdOf(node: SparkPlan): Option[String] = { + def loreIdOf(node: SparkPlan): Option[String] = { node.getTagValue(LORE_ID_TAG) }