On Monday, 15 June 2015 at 08:12:17 UTC, anonymous wrote:
sorry, I should read more careful. I understand 'optimize
default implementation to the speed of high quality BLAS for
_any_/large matrix size'. Great if it is done but imo there is
no real pressure to do it and probably needs lot of time of
experts.
To benchmark when existing BLAS is actually faster is than
'naive brute force' sounds very good and reasonable.
Yes. Well, I think there are some different expectations to what
a standard library should include. In my view BLAS is primarily
an API that matters because people have existing code bases,
therefore it is common to have good implementations for it. I
don't really see any reason for why new programs should target it.
I think it is a good idea to stay higher level. Provide simple
implementations that the optimizer can deal with. Then have a
benchmarking program that run on different configurations
(os+hardware) to measure when the non-D libraries perform better
and use those when they are faster.
So I don't think phobos should provide BLAS as such. That's what
I would do, anyway.