RE: P1666 surprising result with immediate notification

From: Jerome CORNET <jerome.cornet@st.com>
Date: Wed Jan 19 2011 - 06:54:05 PST

From: john.aynsley@doulos.com [mailto:john.aynsley@doulos.com]
Sent: Wednesday, January 19, 2011 12:41 PM
To: Jerome CORNET
Cc: Bishnupriya Bhattacharya; David Black; Philipp A Hartmann; P1666 Technical WG
Subject: RE: P1666 surprising result with immediate notification

Jerome, All,

Consider the following definition:

void yield(); can be called from a thread process only. (Clocked thread???). It is like a wait in the sense that it yields control to the kernel, but unlike a wait in the sense that it also adds the yielding process to the set of runnable processes in the current evaluation phase.
That is fine for me.

Of course, the difficulty in SystemC is that the scheduler is not fair, so the process in question might be the very next process to be selected by the scheduler, and so on ad infinitum as long as the same process keeps calling yield. Without some other modification to the scheduling algorithm, such a yield does not seem very useful in SystemC as it stands. (I am not opposed to us considering such modifications)

Good remark, but that is orthogonal to having a yield() call in the scheduler. A compliant scheduler is free to implement a fairness policy, or not,
or to rather implement a "process scheduling exploration", etc. I am not for specifying any kind of fairness constraint at this level.

Regards,
Jerome

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Wed Jan 19 06:55:16 2011

This archive was generated by hypermail 2.1.8 : Wed Jan 19 2011 - 06:55:19 PST