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

   > * For a CPU-only library, it is encouraged to implement both the standard 
and device version of the protocol methods (i.e. both `__arrow_c_array__` and  
`__arrow_c_device_array__`, and/or both `__arrow_c_stream__` and 
`__arrow_c_device_stream__`)
   
   I would be +1 on encouraging being able to _consume_ both protocols, but 
+0.5 on encouraging to produce both protocols. Agreed with @pitrou's comment 
about it being more effort with the only return being future proofing for 
potential non-cpu usage.
   
   I do think we should start discussing what does it look like for a CPU-only 
library to request data from a non-CPU library. I.E. if say Pandas wants to 
consume data produced by cuDF. Presuming we figure out a convenient api to pass 
that information to cuDF, would it return an `__arrow_c_device_array__` with 
the device as CPU or return an `__arrow_c_array__`? The former puts an onus on 
all consumers to support the device variants of the protocol.


-- 
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