Boost logo

Ublas :

Subject: Re: [ublas] CI setup
From: Cem Bassoy (cem.bassoy_at_[hidden])
Date: 2018-05-03 13:16:01


On Wed, May 2, 2018 at 10:11 PM, David Bellot via ublas <
ublas_at_[hidden]> wrote:

> - Should we integrate smart expression templates? I think there was a gsoc
>> project but I am not sure. What was the output?
>>
>
> ​it was really good
>

okay. I cannot see it in the development branch. Is it intended to be
integrated into uBLAS?

> ​
>
>> - Are (smart) expression templates really required?
>>
>
> ​but after second thought, I wonder like you.
>

I think smart expression templates could be beneficial in terms of
selecting and executing high-performance kernels!
Expression templates seem to be outdated. See
https://epubs.siam.org/doi/abs/10.1137/110830125

​
>
>> - How often do expressions like A = B*C + D*D - ... occur in numerical
>> applications?
>> - Should we provide a fast gemm implementation of the Goto-Algorithm like
>> in Eigen?
>>
>
> ​why not.
>

Because, tuning algorithms and getting them to nearly peak performance for
standard processors is a nontrivial task to my mind. I am not sure but we
could try to integrate and link to existing highly optimized kernels.

> ​
>
>> And regarding the code infrastructure:
>>
>> - Do we need iterators within matrix and vector template classes? Or can
>> we generalize the concepts?
>>
>
> ​once there's been a discussion about that. Can we factorize all this code
> into one place, one generic concept ?
> This would make things so simple and efficient in the end.
>

Yes, I will try to built iterators for tensors so we can discuss this by
investigating my code.

> ​
>
>> - Can we maybe simplify/replace the projection function with overloaded
>> brackets?
>>
>
> ​Can we do that ? That would be awesome !​
>
>

Will try to show that it is possible.

> General questions:
>> - Shall we build uBLAS a high-performance library?
>>
>
> ​Yes, I suppose.
> What do you mean exactly by "high-performance" ?​
>

I wanted to say that uBLAS could serve as an optimizer and dispatcher
between different types of existing high-performance libraries instead of
providing high-performance functions.

>
> - Could it also be a convenient wrapper library with good interfaces to
>> high-performance libraries such as OpenBLAS?
>>
>
> ​There's been a lot of them written over the years. They're old now and
> having a simple way for the user to choose a "backend" would be great.
>
>
Yes I think so too.

> David
>
> _______________________________________________
> ublas mailing list
> ublas_at_[hidden]
> https://lists.boost.org/mailman/listinfo.cgi/ublas
> Sent to: cem.bassoy_at_[hidden]
>
>
Cem