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.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
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