[Matplotlib-devel] [matplotlib-devel] Make matplotlib running on GPU/CUDA

Francesco Faccenda f.faccenda86 at gmail.com
Thu Sep 14 10:37:41 EDT 2017


I'll take a look, thank you.

So you are suggesting me to start form the VisPy code? Is there someone who
I can refer in case I will need some clarification?

Francesco Faccenda

2017-09-14 15:50 GMT+02:00 Benjamin Root <ben.v.root at gmail.com>:

> That was one of the old attempts (but not the oldest). It doesn't seem
> like it ever intersected with the vispy project, though, so it is likely
> all that exists.
>
> I would also look at https://www.youtube.com/watch?v=_3YoaeoiIFI
> Luke does a nice job providing an overview of the vispy package. One of
> the most exciting things that the matplotlib and vispy devs were discussing
> at scipy 2015 was the possibility of making a matplotlib backend out of
> some parts from vispy. It was attractive because the vispy folks were
> actively working on improving their opengl code and packaging to make it
> work on a wide variety of hardware and setups. They had supposedly even
> implemented a headless opengl mode, too, which was very important for us.
>
> Cheers!
> Ben Root
>
>
> On Thu, Sep 14, 2017 at 9:34 AM, Francesco Faccenda <
> f.faccenda86 at gmail.com> wrote:
>
>> Thank you, Ben.
>>
>> unfortunately I don't have experience developing opengl neither, but I'd
>> like to make an attempt riesuming this subject.
>>
>> I am starting from this: https://github.com/ChrisBeaumont/mplgl
>>
>> Can anyone confirm this is the last update we have for this project?
>>
>> Francesco Faccenda
>>
>> 2017-09-13 16:21 GMT+02:00 Benjamin Root <ben.v.root at gmail.com>:
>>
>>> A bit of background regarding efforts in this area...
>>>
>>> A long time ago, some experiments were done to see if an opengl backend
>>> could be made for matplotlib. The results weren't that great, particularly
>>> for text rendering, so the effort was dropped. The core developers all
>>> agree that an opengl backend would be neat to have, but we all have
>>> limited, if any, experience developing opengl. Furthermore, such a backend
>>> would likely require a lot of rapid development and trial-n-error. So, we
>>> encouraged others to go develop a package or two separately, with the eye
>>> for bringing it back into matplotlib when it was ready. Glumpy and a few
>>> other projects were born from that prodding.
>>>
>>> VisPy was an attempt to consolidate the development efforts for those
>>> projects. The matplotlib devs had very fruitful discussions with some VisPy
>>> devs back at SciPy 2015, but the project became non-responsive shortly
>>> afterwards.
>>>
>>> Ben Root
>>>
>>>
>>> On Wed, Sep 13, 2017 at 3:31 AM, Francesco Faccenda <
>>> f.faccenda86 at gmail.com> wrote:
>>>
>>>> Thank you Chris for your reply.
>>>>
>>>> I have to admit I already stumbled on VisPy while doing my research on
>>>> the web. Still, I've got a lot of code already working with
>>>> *matplotlib*. Indeed, not only I plot data with it, but i manage a lot
>>>> of *mpl events* to provide the users usefool tools, like lines
>>>> picking, tooltips, lines copy/paste, square selectors for multiple
>>>> selections, context menu and so on. Moreover, I got matplotlib *embedded
>>>> *on *wxpython *as well. While at the beginning few lines were managed
>>>> and noone complained, now that big amout of data has to be displayed, the
>>>> non-GPU core of the library is starting to show its limits.
>>>>
>>>> Since matplotlib is a reference library for this kind of  applications,
>>>> I thought it deserved an update in this direction. If anyone is willing to
>>>> do so, I'm available to discuss possible solutions and also provide any
>>>> help I can give.
>>>>
>>>> Best regards,
>>>> Francesco Faccenda
>>>>
>>>> 2017-09-13 0:46 GMT+02:00 Chris Barker <chris.barker at noaa.gov>:
>>>>
>>>>> On Tue, Sep 12, 2017 at 8:47 AM, Francesco Faccenda <
>>>>> f.faccenda86 at gmail.com> wrote:
>>>>>
>>>>>> But there’s a good news, I have a nice GPU available (an NVIDIA Tesla
>>>>>> K40c), so I’d like to know if there is a way to make matplotlib run on it,
>>>>>> or maybe wrap it on some GPU/CUDA wrapper and make it run smoothly.
>>>>>>
>>>>>
>>>>> I tihnk you want VisPy:
>>>>>
>>>>> https://vispy.readthedocs.io/en/latest/
>>>>>
>>>>> It's a plotting package with a kinda like  matplotlib API, built on
>>>>> OpenGL.
>>>>>
>>>>> Unfortunately, it doesn't look like it's been updated in a while --
>>>>> from teh docs. But the gitHub project is active:
>>>>>
>>>>> https://github.com/vispy/vispy
>>>>>
>>>>> So maybe it's only the docs that haven't been updated!
>>>>>
>>>>> But probably  a much better option than trying to shoehorn GPU
>>>>> rendering into MPL.
>>>>>
>>>>> The problem is that while MPL was designed to be "backend" independent
>>>>> -- so it is "easy" to plug in an alternative renderer, the rendering model
>>>>> is not really well suited to GPU rendering -- it would take a lot of
>>>>> refactoring to really be able to take advantage of the graphics card.
>>>>>
>>>>> -CHB
>>>>>
>>>>>
>>>>> --
>>>>>
>>>>> Christopher Barker, Ph.D.
>>>>> Oceanographer
>>>>>
>>>>> Emergency Response Division
>>>>> NOAA/NOS/OR&R            (206) 526-6959   voice
>>>>> 7600 Sand Point Way NE
>>>>> <https://maps.google.com/?q=7600+Sand+Point+Way+NE&entry=gmail&source=g>
>>>>>   (206) 526-6329   fax
>>>>> Seattle, WA  98115       (206) 526-6317   main reception
>>>>>
>>>>> Chris.Barker at noaa.gov
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Matplotlib-devel mailing list
>>>> Matplotlib-devel at python.org
>>>> https://mail.python.org/mailman/listinfo/matplotlib-devel
>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/matplotlib-devel/attachments/20170914/c5c732e1/attachment.html>


More information about the Matplotlib-devel mailing list