GPU_PTX W+RWC+membar.gl+addr+po-p0:p1::p2-xgygzg "Mgl-d-Wgl2-Wgl2 Rf-w-gl2l2 Addr-d-gl2-Rgl2 Fr-c-gl2l2 Po-d-Wgl2-Rgl2 Fr-c-gl2l2" {} P0 | P1 | P2 ; mov.s32 r0, 1 | ld.cg.s32 r0, [r1] | mov.s32 r0, 1 ; st.cg.s32 [r1], r0 | and.b32 r2, r0 2147483648 | st.cg.s32 [r1], r0 ; membar.gl | cvt.u64.u32 r3, r2 | ld.cg.s32 r2, [r3] ; mov.s32 r2, 1 | add.u64 r5, r5 r3 | ; st.cg.s32 [r3], r2 | ld.cg.s32 r4, [r5] | ; exists (1:r0=1 /\ 1:r4=0 /\ 2:r2=0) (device (kernel (cta (warp P0) (warp P1)) (cta (warp P2)))) x:global; y:global; z:global Generated assembler //START _litmus_P2 mov.s32 sr02, 1 ; st.cg.s32 [sr12], sr02 ; ld.cg.s32 sr22, [sr32] ; //START _litmus_P1 ld.cg.s32 sr01, [sr11] ; and.b32 sr21, sr01, 2147483648 ; cvt.u64.u32 sr31, sr21 ; add.u64 sr51, sr51, sr31 ; ld.cg.s32 sr41, [sr51] ; //START _litmus_P0 mov.s32 sr00, 1 ; st.cg.s32 [sr10], sr00 ; membar.gl ; mov.s32 sr20, 1 ; st.cg.s32 [sr30], sr20 ; Binary '/tmp/dirb8b04f.tmp/W+RWC+membar.gl+addr+po-p0:p1::p2-xgygzg-0.exe' successfully loaded Specification clusters: 3 Specification: [[(551, 2, 'R12'), (552, 3, 'R4')], [(606, 3, 'R5'), (607, 3, 'R4')], [(664, 2, 'R12'), (666, 2, 'R14')]] Cluster 0: OK Cluster 1: OK Cluster 2: OK !!SUCCESS!! Test W+RWC+membar.gl+addr+po-p0:p1::p2-xgygzg Allowed Histogram (4 states) 396 :>1:r0=0; 1:r4=0; 2:r2=0; 24428 :>1:r0=0; 1:r4=1; 2:r2=0; 18263 :>1:r0=0; 1:r4=0; 2:r2=1; 56913 :>1:r0=0; 1:r4=1; 2:r2=1; No Witnesses Positive: 0, Negative: 100000 Condition exists (1:r0=1 /\ 1:r4=0 /\ 2:r2=0) is NOT validated Observation W+RWC+membar.gl+addr+po-p0:p1::p2-xgygzg Never 0 100000 Time W+RWC+membar.gl+addr+po-p0:p1::p2-xgygzg 45.44 -- device info -- Name: GeForce GTX 660 Major revision number: 3 Minor revision number: 0 Total global memory: 2147155968 Total shared memory per block: 49152 Number of multiprocessors: 5 Machine: csu8975 Revision 967, version 5.01 GPU_PTX experimental backend Command line: ./litmus -gpu -ccopts -arch=sm_30 -gpu-max-ctas 8 -gpu-min-ctas 4 tests-sm30/W+RWC+membar.gl+addr+po-p0:p1::p2-xgygzg-0.litmus Parameters #ifndef SIZE_OF_TEST #define SIZE_OF_TEST 100000 #endif #ifndef NUMBER_OF_RUN #define NUMBER_OF_RUN 1 #endif /* cc options: -arch=sm_30 */ /* barrier: user */ /* speedcheck: no */ /* gpu_general_bc: true */ /* gpu_mem_stress: true */ /* gpu-rand-threads: true */ /* gpu_cuda: true */ /* gpu_gen_addr: true */ /* gpu_cvt_global_to_gen: true */ /* gpu_cvt_shared_to_gen: true */ /* gpu_max_ctas: 8 */ /* gpu_min_ctas: 4 */ /* gpu_max_threads: 512 */ /* gpu_min_threads: 128 */