Boost logo

Boost :

Subject: Re: [boost] interest in an asynchronous linear algebra library?
From: Oswin Krause (Oswin.Krause_at_[hidden])
Date: 2015-11-19 13:13:13


Hi,

> This sounds like a specific solution to a general need for schedulers.

This proposal can work on top of any scheduler that allows for
dependency graphs. You could see this library as a specific application
of scheduling linear algebra tasks, because we know exactly how the
dependencies are and how to order stuff. Therefore, we can completely
hide the scheduling.

> Have you looked at the current proposals from the various sg groups
> such as sg1? Do they not help to solve your problem? Now is the time
> to speak up if they don't. Go find Michael Wong or Hans Boehm.

I am not sure about the current state of the proposals, I only remember
a recent discussion about executors where I raised concerns about
possible deadlocks and missing guarantees. Anyways, I would not know
where to start looking for the current state of the proposals.

I found this here:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4414.pdf

and I doubt one could implement dependency graphs with that proposal as
the executor does not return references to scheduled tasks or allows for
explicit dependencies(i can not use futures as I want operations as much
as possible to use existing objects and not generate new objects as this
can exhaust memory pretty easily). There is also no wording about "what
happens when a work package adds more work packages to the executor and
waits for them", which makes any thread_pool proposal worthless as
blocking worker threads might result in deadlocks. I think there is
further no hope that we get unified dependency handling which allows for
tasks handled by different executors/schedulers (a CPU and GPU scheduler
fx).

Best,
Oswin


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk