Re: Internal vs. external barriers (was: Re: Interesting LKMM litmus test)

From: Paul E. McKenney
Date: Sat Jan 14 2023 - 12:42:14 EST


On Fri, Jan 13, 2023 at 05:05:11PM +0000, Jonas Oberhauser wrote:
> -----Original Message-----
> From: Alan Stern [mailto:stern@xxxxxxxxxxxxxxxxxxx]
> Sent: Friday, January 13, 2023 5:38 PM
>
> > Strictly speaking, this is not right. It should say: For each process/CPU/task/whatever, an RCU grace period includes at least one moment in time during which that process is not within an RCU read-side critical section. There does not have to be any single moment during which no processes are executing a critical section.
>
> I see. I guess the other thing is more like a quiescent period.

"Quiescent period" was in fact my original name for "grace period"
back in the day, but a chorus of objections eventually prompted me to
instead label it a "grace period".

Perhaps you have given an improved rationale for their objections. ;-)

> I
> think the fact that RCU/safe memory reclamation(SMR) don't require a
> quiescent period is an important distinction, and even though we have
> our own SMR I never thought too deeply about this distinction.

If you want non-abysmal performance and scalability on modern hardware,
the distinction is critically important. After all, the speed of light
really is finite, and atoms are of non-zero size. And to the complete
surprise of my forty-years-ago self, these laws of physics seriously
constrain modern computing devices.

Thanx, Paul