Hi Toby,

 >> the Google Summer of Code [1] is approaching. It attracted some great
>> contributors in the past, most notably Philippe and Toby, and I hope
>> there's more to come. So, guys, please provide your project ideas.
>
> I have a couple of inter-related things I'd like to work on, to make
> PyViennaCL a really compelling piece of software -- am I allowed to take
> part as a student again? I think I am eligible in Google's eyes, and the
> stipend would really help me to dedicate myself to coding again!

As long as you're a student, you're eligible to apply for GSoC. ;-) 
However, I don't give any guarantees, your application will be treated 
equally. You certainly have an advantage with respect to how things 
work, but no other student should be excluded upfront.


>> Second, I think PyViennaCL will benefit from another push. Toby, how's
>> your availability for a release in February? I have more time now for
>> assisting you with the final polishing.
>
> I'm definitely aiming for a release in the next couple of weeks. This
> weekend is my birthday, so I'm probably looking at some time around the
> next weekend (14th-17th ish).
>
> My list of features to complete in PyViennaCL (as separate from ViennaCL
> itself) is centered around interoperability and further integration with
> the ecosystem. For instance, I want to enable interaction with PyOpenCL
> and PyCUDA (as discussed before), which would entail providing access to
> the underlying memory buffers, contexts, programs, etc. I also need to
> add simple (for the user!) support for SciPy sparse matrix types. Then,
> with these two features I'd much more easily be able to work on better
> integration and competition with systems like Theano.

Yep, that's definitely a nice-to-have!


> Also, having PyCUDA support will require another bit of work:
> abstracting PyViennaCL as it currently is away from the default OpenCL
> compute backend. I need to add selection of the backend platform and
> parameters, and I want to make it easy to use heterogeneous and
> distributed systems, but that's probably further off (ie, ViennaCL
> 1.6+).

Right, this is reasonable for a spring/summer project.


> In the same "making-high-performance-easy" vein, I want to enable using
> PyViennaCL with PyPy (a performance-oriented implementation of
> Python). This throws up another hurdle, because boost::python support for
> PyPy is not complete, and where it works, isn't very well
> maintained. This needs some investigation, but I get the impression that
> in a couple of years, although boost::python is elegant, because Python
> developers don't use C++, it might start to bit-rot. One solution might
> be to start using libviennacl, but that seems a shame, because I like
> using C++, and because I also had a vague idea of adding in support for
> Philippe's unconstrained nonlinear optimisation library.

I'm still convinced that libviennacl is the better choice once it is 
reasonably feature-complete. It will avoid quite a bunch of hassle when 
dealing with a C++-ABI as well as Boost.


> So there's plenty of stuff to do in PyViennaCL itself.. but it mainly
> follows directly from two pieces of structural work: firstly,
> abstracting away a bit from the back-end (ViennaCL already does this
> neatly, so that's not hard); secondly, thinking about boost::python,
> libviennacl and pypy. Neither is particularly demanding, but they
> probably need doing.
>
>> Something rather generic is the "implementation of algorithms" such as
>> additional iterative solvers, etc. Now as the standard matrix and vector
>> operations are pretty mature and support multiple backends, this should
>> be a pretty fun piece of work :-)
>
> That does sound fun (if a little generic!) -- my intention has always
> been, once PyViennaCL is mostly complete, to do more work on the
> ViennaCL 'core', because that's where the mathematically interesting
> stuff really happens, and where any work can benefit most people.
>
>> @Philippe, Toby: How about mentoring this year?
>
> That's a tough call. I'd rather apply as a student again, because that
> would give me the financial freedom to do some cool work.. I would like
> to mentor one year soon, but I feel like at the moment I have unfinished
> business!

Fair enough. Python is just a too vibrant ecosystem, so we should 
dedicate an appropriate amount of attention.

Best regards,
Karli


------------------------------------------------------------------------------
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk
_______________________________________________
ViennaCL-devel mailing list
ViennaCL-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/viennacl-devel

Reply via email to