Replies: 12 comments
-
+1 for Rust. But if GPU support is of interest, it might be good to also look at OpenCL. |
Beta Was this translation helpful? Give feedback.
-
The enticing aspect with the GPU, and especially with projects such as Bohrium or Cupy is that ideally, you really just have to do As for Rust, we discussed about a new repo, e.g. |
Beta Was this translation helpful? Give feedback.
-
Agree, if the GPU support is a drop-in replacement that would be awesome, but it's unlikely to be that easy. But then it may still be less work than a re-implementation of colour in another language. PyOpenCL seems to be similar to PyCuda. I think the alure of such a solution is, that it could be direcly integrated into rendering pipelines. Using frames already on thre GPU and the data never has to leave GPU memory. One advantage of |
Beta Was this translation helpful? Give feedback.
-
I take back the statement that PyOpenCL is similar to PyCuda. PyCuda seems to have far more integration into numpy. |
Beta Was this translation helpful? Give feedback.
-
Both paths are not mutually exclusives and I quite like both, that being said having GPU support would probably be more important I reckon. |
Beta Was this translation helpful? Give feedback.
-
Do you have specific performance metrics or application profiles in mind? |
Beta Was this translation helpful? Give feedback.
-
I have a few processing pipelines related to Colour - HDRI where I would need much better speed. That definition is for example super slow with 5-6K images: https://github.com/colour-science/colour-hdri/blob/develop/colour_hdri/recovery/highlights.py#L88 |
Beta Was this translation helpful? Give feedback.
-
I’d love to collaborate on a rust port (colorspace-rs is sort of that but
more focused to a certain use case), but it seems like GPU would give you
the biggest bang for your buck. Bohrium in particular looks very
interesting from that point of view - managing transfers and kernel
evaluations lazily for you.
…On Sat, 19 Oct 2019 at 13:10, Thomas Mansencal ***@***.***> wrote:
I have a few processing pipelines related to Colour - HDRI
<https://github.com/colour-science/colour-hdri/> where I would need much
better speed. That definition is for example super slow with 5-6K images:
https://github.com/colour-science/colour-hdri/blob/develop/colour_hdri/recovery/highlights.py#L88
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#522?email_source=notifications&email_token=AAOYQXJ7PZFHOTOJTJT3L7TQPJGBDA5CNFSM4JCMRZL2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBWQZ7Y#issuecomment-544017663>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAOYQXIJGZ5WLPT5IJIUW7DQPJGBDANCNFSM4JCMRZLQ>
.
|
Beta Was this translation helpful? Give feedback.
-
Do we have stats on which functions are most used in projects that have colour as a dependency? |
Beta Was this translation helpful? Give feedback.
-
@MichaelMauderer : I would bet that Lab to XYZ and everything around it are hotspots, they are for me :) Not sure for dependents. Related to that question: We lost the list Github was building for us when removing the setup.py file for Poetry. I will ping Github as it should work with the requirements.txt file too: https://github.com/colour-science/colour/network/dependents @anderslanglands : Yeah, GPU seems the most promising path and it is probably the first thing I will try, that being said, I'm also happy to think about Rust in parallel. I don't have too many free cycles these days but later this year or next year could be a good time. |
Beta Was this translation helpful? Give feedback.
-
Just another thought to leave here: is it possible to leverage OpenCV for GPU operations? |
Beta Was this translation helpful? Give feedback.
-
Probably some parts yeah, I don't think it is generic enough though! Worth a look for sure. |
Beta Was this translation helpful? Give feedback.
-
Hi,
Starting a new issue to discuss about performance improvements and mainly to trackdown the things I have been following since a while.
GPU Backend
Ideally, we want Numpy to work on the GPU for free, unfortunately, this is not the case, good candidates that came up in recent years:
Cython and Rust
Cython is not super exciting and I would tend to lean toward Rust because the future is bright for it and @MichaelMauderer has done some conclusive tests. @anderslanglands has a library here too: https://github.com/anderslanglands/colorspace-rs
Beta Was this translation helpful? Give feedback.
All reactions