September 01, 2015
On Friday, 14 August 2015 at 14:57:19 UTC, Andrei Alexandrescu wrote:
> I stumbled upon https://software.intel.com/en-us/node/471374 which gives good detail on Intel's Math Kernel Library's data formats for sparse matrices.
>
> No doubt other popular linear algebra libraries have similar documentation. I was thinking we could start with adding these layouts to std, along with a few simple primitives (construction, element/slice access, stride etc). Then, people may just use those as they are or link with the linalg libraries for specific computations.
>
>
> Thoughts?
>
> Andrei

One thing that will make D really shine is to implement something like this:
https://www.youtube.com/watch?v=hfn0BVOegac

Since Blaze [1] is open source all we need to do is to provide D wrappers on their highly optimized kernels. My intuition is that by using D's generative features we may be able implement this with significantly less effort than with C++. Their repository even contains benchmarks which we can use to verify that our wrappers won't incur overhead compared to C++.

[1]: https://bitbucket.org/blaze-lib/blaze
September 03, 2015
On Tuesday, 1 September 2015 at 14:00:52 UTC, ZombineDev wrote:
> On Friday, 14 August 2015 at 14:57:19 UTC, Andrei Alexandrescu wrote:
>> I stumbled upon https://software.intel.com/en-us/node/471374 which gives good detail on Intel's Math Kernel Library's data formats for sparse matrices.
>>
>> No doubt other popular linear algebra libraries have similar documentation. I was thinking we could start with adding these layouts to std, along with a few simple primitives (construction, element/slice access, stride etc). Then, people may just use those as they are or link with the linalg libraries for specific computations.
>>
>>
>> Thoughts?
>>
>> Andrei
>
> One thing that will make D really shine is to implement something like this:
> https://www.youtube.com/watch?v=hfn0BVOegac
>
> Since Blaze [1] is open source all we need to do is to provide D wrappers on their highly optimized kernels. My intuition is that by using D's generative features we may be able implement this with significantly less effort than with C++. Their repository even contains benchmarks which we can use to verify that our wrappers won't incur overhead compared to C++.
>
> [1]: https://bitbucket.org/blaze-lib/blaze

I was looking at blaze the other day and wondering just the same.  I haven't used it, and don't have a great feeling for what would be involved.  Maybe John Colvin does.

September 03, 2015
On Tuesday, 1 September 2015 at 14:00:52 UTC, ZombineDev wrote:
>
> One thing that will make D really shine is to implement something like this:
> https://www.youtube.com/watch?v=hfn0BVOegac
>


Thanks for posting that. It provides a nuanced discussion of expression templates. The final conclusion is that C++ should be very careful in choosing a linear algebra library for the standard. I think that applies to D just as well.
1 2 3
Next ›   Last »