This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Re: [GSoC'19, libgomp work-stealing] Task parallelism runtime
- From: Jakub Jelinek <jakub at redhat dot com>
- To: 김규래 <msca8h at naver dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Sat, 13 Jul 2019 08:28:48 +0200
- Subject: Re: Re: [GSoC'19, libgomp work-stealing] Task parallelism runtime
- References: <e2a9f7c55311795785d0f2c47f70acbd@cweb001.nm.nfra.io> <2ec486a9ba251a2ffc757ed3b06192@cweb004.nm.nfra.io>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Tue, Jul 09, 2019 at 09:56:00PM +0900, 김규래 wrote:
> Hi,
> This is an update about my status.
> I've been working on unifying the three queues into a single queue.
> I'm almost finished and passed all the tests except for the dependency handling part.
For dependencies, I can imagine taking a lock on the parent task rather than
a team lock when dealing with the dependency data structures, and outside of
the lock perhaps do a quick check if there are any dependencies using atomic
load. I can't imagine how one could get away without that though, and while
that can scale well if you have many tasks that spawn many other tasks, it
will still act as a team lock if say all tasks are spawned from the same
parent task.
Jakub