zeroshade commented on issue #38325:
URL: https://github.com/apache/arrow/issues/38325#issuecomment-2021626313

   My personal opinion and sensibilities likes the suggested 
`obj.__arrow_device_array__(requested_device=kCPU)` and putting the onus on the 
producer to attempt to provide the data on that device. When that param is left 
as `None` then the producer should provide zero-copy to the device that the 
data is currently on.
   
   > That means that passing such a non-CPU object, like a cudf DataFrame, to 
an interface that can consume data through this protocol (eg pandas or polars 
constructors, duckdb query with implicit variable, ...) would automatically do 
a potentially costly device copy of the full data structure. I am a bit 
hesitant to do enable that implicitly, that might be unexpected in some cases? 
(although maybe also convenient ..).
   
   For clarity I always prefer to avoid the implicit copy unless it's entirely 
necessary for adoption. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to