[
https://issues.apache.org/jira/browse/SPARK-14850?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15254538#comment-15254538
]
Xiangrui Meng commented on SPARK-14850:
---------------------------------------
Ran the following code with different Spark versions:
{code}
sc.parallelize(0 until 1e4.toInt, 1).map { i =>
(i, Vectors.dense(Array.fill(1e6.toInt)(1.0)))
}.toDF.rdd.count()
{code}
Durations:
* 1.4.1: 22s
* 1.5.2: 282s
* 1.6.0: 360s
* 1.6.1: 340s
So it is about 15x slow down on serialization.
> VectorUDT/MatrixUDT should take primitive arrays without boxing
> ---------------------------------------------------------------
>
> Key: SPARK-14850
> URL: https://issues.apache.org/jira/browse/SPARK-14850
> Project: Spark
> Issue Type: Improvement
> Components: ML, SQL
> Affects Versions: 1.6.1, 2.0.0
> Reporter: Xiangrui Meng
> Priority: Critical
>
> In SPARK-9390, we switched to use GenericArrayData to store indices and
> values in vector/matrix UDTs. However, GenericArrayData is not specialized
> for primitive types. This might hurt MLlib performance badly. We should
> consider either specialize GenericArrayData or use a different container.
> cc: [~cloud_fan] [~yhuai]
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]