[Bf-committers] GSOC - Math Library Project

Konstantinos Margaritis markos at codex.gr
Sat Mar 29 15:57:19 CET 2008


On Σαβ 29 Μαρ 2008, Daniel Barbeau wrote:
> Hello,
>
> Has there been any investigation to find out if this wouldn't be
> duplicating efforts? I think there are already some libraries out
> there. Such an approach has the big advantage of not duplicating
> efforts.  Relying on a third party library does create some
> trouble, but it has the big advantage of not creating fresh
> untested code.
>
> I'm thinking of Blitz++ or GSL.
> http://www.oonumerics.org/blitz/
> http://www.gnu.org/software/gsl/
>
> Blitz++ has a reputation of being fast by using templates. There
> already are C++ libraries in Blender. Blitz++ could be part of it
> no in the "lib" directory? It seems to be stable so you would need
> to sync every month with the main code.

How would you use C code with a C++ template library? Blender renderer 
(which is the time consuming module) is written in C, Blitz++ is 
written in C++. 

Personally, I would choose SIMDx86 (http://simdx86.sourceforge.net), 
which provides optimized versions of each arch (SSE/3dNow, and I'm 
working on the AltiVec/Cell parts myself, check 
http://freevec.org/category/simd/algorithms/algebra/matrix_multiplication) 
and includes both C and C++ interfaces, but that would require a 
fundamental change in Blender. Such a thing has been discouraged 
(from discussions in #blendercoders), so unless you're prepared to 
redo most of Blender code only to have a rejected patch of ~3MB, I'd 
suggest you help in reworking the existing infrastructure instead. 
Same goes for GSL and other math libraries.

-- 
Konstantinos Margaritis
CODEX
http://www.codex.gr
markos at codex.gr


More information about the Bf-committers mailing list