Github user kiszk commented on the issue:

    https://github.com/apache/spark/pull/13680
  
    One potential performance issue is that we have to always clear all of null 
bits at ```UnsafeArrayWriter.initialize()```. This is because 
```holder.buffer``` is reused for each row. If one row has more than one 
variable length arrays, ```holder.cursor``` may have different offset for the 
same array among different rows. Thus, we have to clear all of null bits.
    This overhead would be larger in machine learning use cases that use large 
arrays.
    
    If we have a flag to show whether there is an area of ```[null bits]``` or 
we have two implementations with ```[null bits]``` and without ```[null 
bits]```, we may alleviate performance overhead. 
    
    What do you think?
    cc: @hvanhovell , @mengxr 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to