comp.lang.ada
 help / color / mirror / Atom feed
From: joakimds@kth.se
Subject: Re: User threads in Ada ?
Date: Sat, 28 May 2016 15:11:18 -0700 (PDT)
Date: 2016-05-28T15:11:18-07:00	[thread overview]
Message-ID: <b27378f0-371f-45cb-91be-da17c1a017e9@googlegroups.com> (raw)
In-Reply-To: <22fc2a58-67ad-4483-bf9c-0bdc463b31ab@googlegroups.com>

Den lördag 28 maj 2016 kl. 23:08:03 UTC+2 skrev Hadrien Grasland:
> Hi everyone,
> 
> Recently, cooperatively scheduled user threads have become popular again in the parallel programming community. The main goal behind their use is typically to avoid spawning, blocking and liberating kernel threads all the time, which comes with some significant overhead.
> 
> Some C++ libraries such as Intel TBB and HPX now make it much easier and portable than before to deal with such user threads, in no small part thanks to a couple of nice abstractions, such as asynchronous function calls returning futures that provide event-like synchronization.
> 
> I'm currently playing around with this concept in Ada, and wondering how far it can be taken. The first thing to do being, of course, to tell what is already there. Is anyone aware of previous work related to implementing user threads in Ada ?
> 
> Cheers,
> Hadrien

Dear Hadrien,

What comes to my mind is the Generic_Tasking package I wrote to create a pool of worker tasks and to distribute the work-load on them:
https://github.com/joakim-strandberg/determine_prime_numbers_on_many_core_systems

I have not looked at TBB nor HPX but can imagine their API is nicer and more thought through.

Brad Moore has shared code also. Google for "Paraffin".

Best regards,
Joakim

  reply	other threads:[~2016-05-28 22:11 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-28 21:08 User threads in Ada ? Hadrien Grasland
2016-05-28 22:11 ` joakimds [this message]
2016-06-05 18:03   ` Hadrien Grasland
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox