From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: Re: [PATCH RFC v1] xen:rtds: towards work conserving RTDS Date: Mon, 7 Aug 2017 19:35:15 +0200 Message-ID: <1502127315.18446.6.camel@citrix.com> References: <1501611210-5232-1-git-send-email-mengxu@cis.upenn.edu> <1501695998.19956.10.camel@citrix.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0168273085795545774==" Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1delwd-0000sS-MF for xen-devel@lists.xenproject.org; Mon, 07 Aug 2017 17:35:59 +0000 In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Meng Xu Cc: George Dunlap , "xen-devel@lists.xenproject.org" List-Id: xen-devel@lists.xenproject.org --===============0168273085795545774== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="=-NQocc6JiprBRa/0+lvX1" --=-NQocc6JiprBRa/0+lvX1 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sat, 2017-08-05 at 17:35 -0400, Meng Xu wrote: > >=20 > > > @@ -966,8 +1001,16 @@ burn_budget(const struct scheduler *ops, > > > struct > > > rt_vcpu *svc, s_time_t now) > > >=20 > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0if ( svc->cur_budget <=3D 0 ) > > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0{ > > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0svc->cur_budget =3D = 0; > > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0__set_bit(__RTDS_dep= leted, &svc->flags); > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0if ( is_work_conserv= ing(svc) ) > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0{ > > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0svc->priority_level++; > > >=20 > >=20 > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0ASSERT(svc->priority_level <=3D 1); >=20 > I'm sorry I didn't see this suggestion in previous email. I don't > think this assert makes sense. >=20 > A vcpu that has extratime can have priority_level > 1. > For example, a VCPU (period =3D 100ms, budget =3D 10ms) runs alone on a > core. The VCPU may get its budget replenished=C2=A0=C2=A0for 9 times in a > period. the vcpu's priority_level may be 9. >=20 Ah, ok. Yes, I missed this, while I see this now. But doesn't this mean that, at a certain time t, between both CPUs that are both in 'etratime mode' (i.e., they've run out of budget, but they're running because they have extratime set), the one that has received less replenishments gets priority? Is this wanted or expected? Basically, if I'm not wrong, this means that the actual priority, during the extratime phase, is some combination of deadline and budget (which would make me think to utilization)... is this the case? I don't care much about the actual schedule during the extratime phase, in the sense that it doesn't have to be anything too complicated or super advanced... but I at least would like: - to know how it works, and hence what to expect, - for it to be roughly fair. Dario --=20 <> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) --=-NQocc6JiprBRa/0+lvX1 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAABCAAGBQJZiKTTAAoJEBZCeImluHPuk48P/ieoJAX8k5GUXXHlfigvw5OI XpuPZ+Jg8xF7E6JWvYAsgKuJ/8ujQKjDiHRHieAQEsvkBsGfWC+4jP+0W4YuDiRH yk5mlmGu/c3VQiYrjXrsyhL03HvYoXxlJjZW1jK5oaU1WjWPOFnpC5jx7eMa4YSr 9rWtoDWNniZwAUU2ZUuufLehyHhNiRGiiEk3YvTh7B7/NZGeqoMfkTWJyBphQ/D5 nY7vToVdwXIeyMP/mAJgl0hclt5zDPXntdO1t52+oSnwda64II/eXICp2VWRxv8g P20AZ/5yfHENNNi8ZisBJ2NtfkqI/fTPcQ9gN7hre4JIs1Eu6+asr1j9HXgESw8+ heoEPLwpPb0k9A3vbdcHf9KR1Ig1r0MsZCkygvg87lcKRRdZYvbWNaE9X/p1lE0Y 46jTUxSkhUxJJurtp84mvvhMKrWrf0HVG4Q6i/iqGxRiLnrsuwHpPMi9dOJt2ooy +uAxpG2GbEMvCInc1jJ4p1aZGlLrLmDcA/WZCE+Jd3zrTCyW3lf2mMCFJng8arw9 LXmfeYnLz7rO54MXdmSd8yMdfy7TEl/EHWznG0HRn3TXrzTjLkRqMkoBIJ9MIKKz l2P1NPsHBq1IZKMVCJklaj65pnquldrJvbptLC+B3snKa84DxDg+qYk9exRPLQJz HnWOZ+51Ld1JSkAv7ahw =WJI+ -----END PGP SIGNATURE----- --=-NQocc6JiprBRa/0+lvX1-- --===============0168273085795545774== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5v cmcveGVuLWRldmVsCg== --===============0168273085795545774==--