octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GSoC 2017 project -- Speeding up tensor contraction in Octave


From: John W. Eaton
Subject: Re: GSoC 2017 project -- Speeding up tensor contraction in Octave
Date: Thu, 2 Mar 2017 10:15:21 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.4.0

On 03/02/2017 09:52 AM, Susi Lehtola wrote:
On 02/28/2017 12:58 AM, Somesh Singh wrote:
Hi All

Tensor contraction is a widely used operation that comes up quite often
when performing operations on tensors. It is widely used in many domains
such as analysis of chemical compounds. There are a lot of ongoing
efforts to speed-up tensor contraction.
Many of the softwares for numerical computation have sound
implementations of tensor contraction. In this light, I believe it will
be a good idea to have a fast implementation of tensor contraction in
Octave for muti-core systems, since tensor contraction offers a lot of
scope for parallelism. I would like to propose this as a project for
GSoC 2017 and get involved with it.
Please share your thoughts on the suggestion.

What would be the scope of this? Tensor contractions are typically
handled using BLAS calls by permuting the contracted indices to either
the start or the end, and then calling dgemv or dgemm to get the result.
These would be AFAIK pretty straightforward to loop-parallellize.

There are recent software developments that are able to do the tensor
contraction without the permutations, but these basically involve novel
implementations of BLAS...

I agree. To me, it doesn't seem like something that should be specific to Octave. It sounds like something that should be developed as a fairly low-level library (like the BLAS or LAPACK libraries) and then we would just use these functions in Octave.

jwe




reply via email to

[Prev in Thread] Current Thread [Next in Thread]