Re: Question about DEC Alpha memory ordering

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Feb 15, 2017 at 08:26:46AM +1300, Michael Cree wrote:
> On Tue, Feb 14, 2017 at 12:35:58PM +0100, Andrea Parri wrote:
> > On Mon, Feb 13, 2017 at 01:24:36PM -0800, Paul E. McKenney wrote:
> > > ------------------------------------------------------------------------
> > > 
> > > C auto/C-LB-LRW+OB-Ov
> > > (*
> > >  * Result: Maybe
> > >  * P0-P1 rf OB-Ov: Never->Maybe: Note lack of C11 guarantee, control dependency
> > >  * P1 Ov,LRW: Note lack of C11 guarantee, control dependency
> > >  *)
> > > {
> > > }
> > > 
> > > P0(int *u0, int *x1)
> > > {
> > > 	r1 = READ_ONCE(*u0);
> > > 	smp_mb();
> > > 	WRITE_ONCE(*x1, 1);
> > > }
> > > 
> > > 
> > > P1(int *u0, int *x1)
> > > {
> > > 	r1 = READ_ONCE(*x1);
> > > 	WRITE_ONCE(*u0, r1);
> > > }
> > > 
> > > exists
> > > (0:r1=1 /\ 1:r1=1)
> > > 
> > 
> > The (automatically generated) module for this test is at
> > 
> >    http://retis.sssup.it/~a.parri/lkmm/C-LB-LRW+OB-Ov.tgz ;
> > 
> > the test is run by cat-ing /sys/kernel/litmus/p_count: this will execute
> > the thread bodies for "runs * size" iterations; results can be sentisive
> > to the "stride" and "affinity increment" parameters (c.f., the Makefile);
> > statistics for each experiments are printed on stdout.
> 
> This is the test run on a 3-cpu ES45 with the settings in the Makefile:
> 
> Test auto/LB-LRW+OB-Ov Allowed
> Histogram (2 states)
> 5913093	:> 0:r1=0; 1:r1=0; 
> 4086907	:> 0:r1=0; 1:r1=1; 
> No
> Witnesses
> Positive: 0 Negative: 10000000
> Condition exists (0:r1=1 /\ 1:r1=1) is NOT validated
> Observation auto/LB-LRW+OB-Ov Never 0 10000000
> Time auto/LB-LRW+OB-Ov 9.570
> Hash=200258693ffc841829310726a4a0b7e3
> 
> How do we interpret these results?

Hi Michael. The log shows (together w/ other info.) an histogram

  [Total count]   :> [Final state]

where "Total count" is the number of times an execution of the test program
led to the associated "Final state", here represented by the final values
of the registers 0:r1, 1:r1.

The log also shows statistics relative to the final state specified by the
program's "exists" clause, here (0:r1=1 /\ 1:r1=1): this state was never
observed (Positive: 0) over a total of 10000000 iterations/executions.

Thank you for running the test and for sharing these results.

  Andrea

> 
> Cheers
> Michael.
--
To unsubscribe from this list: send the line "unsubscribe linux-alpha" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Netdev]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux