From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: non-preemptive tasking on GNAT 2020 Windows 10 multicore AMD
Date: Sun, 13 Jun 2021 11:13:53 +0200 [thread overview]
Message-ID: <sa4i8g$10oo$1@gioia.aioe.org> (raw)
In-Reply-To: a670da34-30e1-4c36-a404-590ac9ffcbban@googlegroups.com
On 2021-06-13 10:04, darek wrote:
> On Sunday, 13 June 2021 at 08:20:08 UTC+2, Randy Brukardt wrote:
>> "AdaMagica" <christ-u...@t-online.de> wrote in message
>> news:1d798609-8b73-4bc6...@googlegroups.com...
>>> Dmitry A. Kazakov schrieb am Samstag, 12. Juni 2021 um 17:57:39 UTC+2:
>>>> Because under Windows the default priority is in the time sharing class.
>>>> As the name suggests such threads are preempted when the their quant
>>>> expires. AFAIK, even a lower priority thread can preempt a higher
>>>> priority one if both are time sharing. Time sharing priority only
>>>> influences the duration of the quant and the chances to gain the
>>>> processor.
>>>
>>> Hm OK. Is this compatible with the Ada RM?
>> Not really, at least in an Annex D sense. (The core doesn't require much, in
>> part so Ada will work on a wide variety of targets.) Pretty much everyone
>> has agreed to ignore the impossibility of implementing Annex D on Windows --
>> remember that there is an "impossible or impractical" exception in 1.1.3
>> which certainly applies in this case. Indeed, I suspect that it is
>> impossible to implement all of Annex D on any target other than a bare
>> machine. (One example is that there is no known implementation of EDF
>> scheduling even though Annex D seems to require it to be implemented.)
>>
>> Randy.
>
>
> Hi All,
> It could be useful for Ada community - a bit different (and refreshing) approach :
>
> https://www.research-collection.ethz.ch/bitstream/handle/20.500.11850/154828/eth-47094-02.pdf
Maybe I am wrong, but it looks to me like these guys spent 30 years in a
time capsule.
What the paper describes is basically Ada 95 protected action.
"uncooperative" = protected action. [They do refer Ada once, but not its
protected objects]
The rest is musing about co-routines which are another 60 years old, or so.
Yes, I would welcome co-routines as a special form of Ada task, but of
course without explicit yielding. Obligatory explicit yielding kills
task abstraction.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2021-06-13 9:13 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-12 12:51 non-preemptive tasking on GNAT 2020 Windows 10 multicore AMD Dan Winslow
2021-06-12 13:11 ` Dmitry A. Kazakov
2021-06-12 15:43 ` AdaMagica
2021-06-12 15:57 ` Dmitry A. Kazakov
2021-06-12 16:05 ` AdaMagica
2021-06-12 16:30 ` Dmitry A. Kazakov
2021-06-12 20:56 ` Dan Winslow
2021-06-12 22:21 ` Dan Winslow
2021-06-13 1:24 ` Dennis Lee Bieber
2021-06-13 1:55 ` Dennis Lee Bieber
2021-06-13 10:24 ` J-P. Rosen
2021-06-13 12:11 ` Dan Winslow
2021-06-13 6:20 ` Randy Brukardt
2021-06-13 8:04 ` darek
2021-06-13 9:13 ` Dmitry A. Kazakov [this message]
2021-06-13 21:43 ` darek
2021-06-13 12:06 ` Dan Winslow
2021-06-13 13:16 ` Jeffrey R. Carter
2021-06-13 16:43 ` Dan Winslow
2021-06-13 16:46 ` Dan Winslow
2021-06-13 16:50 ` Dan Winslow
2021-06-13 17:44 ` Jeffrey R. Carter
2021-06-15 0:41 ` Dan Winslow
2021-06-16 0:10 ` Dennis Lee Bieber
2021-06-14 2:09 ` Dennis Lee Bieber
2021-06-12 16:03 ` AdaMagica
2021-06-12 18:02 ` Niklas Holsti
2021-06-12 20:50 ` Dan Winslow
2021-06-13 17:41 ` AdaMagica
2021-06-12 17:18 ` Dan Winslow
2021-06-12 17:21 ` Dan Winslow
2021-06-12 18:06 ` Dennis Lee Bieber
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox