GPU_PTX IRWIW+membar.cta+addr-p0::p1:p2:p3-xgys "Rf-c-gl2l2 Mcta-d-Rgl2-Wsl2 Ws-w-sl2l2 Rf-w-sl2l2 Addr-d-sl2-Wgl2 Ws-c-gl2l2" {} P0 | P1 | P2 | P3 ; mov.s32 r0, 2 | ld.cg.s32 r0, [r1] | mov.s32 r0, 2 | ld.cg.s32 r0, [r1] ; st.cg.s32 [r1], r0 | membar.cta | st.cg.s32 [r1], r0 | and.b32 r2, r0 2147483648 ; | mov.s32 r2, 1 | | cvt.u64.u32 r3, r2 ; | st.cg.s32 [r3], r2 | | mov.s32 r4, 1 ; | | | add.u64 r5, r5 r3 ; | | | st.cg.s32 [r5], r4 ; exists (0::x=2 /\ 1::y=2 /\ 1:r0=2 /\ 3:r0=2) (device (kernel (cta (warp P0)) (cta (warp P1) (warp P2) (warp P3)))) x:global; y:local Generated assembler //START _litmus_P3 ld.cg.s32 sr03, [sr13] ; and.b32 sr23, sr03, 2147483648 ; cvt.u64.u32 sr33, sr23 ; mov.s32 sr43, 1 ; add.u64 sr53, sr53, sr33 ; st.cg.s32 [sr53], sr43 ; //START _litmus_P2 mov.s32 sr02, 2 ; st.cg.s32 [sr12], sr02 ; //START _litmus_P1 ld.cg.s32 sr01, [sr11] ; membar.cta ; mov.s32 sr21, 1 ; st.cg.s32 [sr31], sr21 ; //START _litmus_P0 mov.s32 sr00, 2 ; st.cg.s32 [sr10], sr00 ; Binary '/tmp/dir0814c7.tmp/IRWIW+membar.cta+addr-p0::p1:p2:p3-xgys-0.exe' successfully loaded Specification clusters: 4 Specification: [[(599, 3, 'R4'), (598, 2, 'R6')], [(641, 2, 'R8')], [(690, 3, 'R4'), (689, 2, 'R12')], [(733, 2, 'R10')]] Cluster 0: OK Cluster 1: OK Cluster 2: OK Cluster 3: OK !!SUCCESS!! Test IRWIW+membar.cta+addr-p0::p1:p2:p3-xgys Allowed Histogram (27 states) 8993 :>1:r0=0; 3:r0=0; 0::x=1; 1::y=1; 6758 :>1:r0=1; 3:r0=0; 0::x=1; 1::y=1; 7679 :>1:r0=2; 3:r0=0; 0::x=1; 1::y=1; 4933 :>1:r0=0; 3:r0=1; 0::x=1; 1::y=1; 1456 :>1:r0=2; 3:r0=1; 0::x=1; 1::y=1; 8527 :>1:r0=0; 3:r0=2; 0::x=1; 1::y=1; 3405 :>1:r0=1; 3:r0=2; 0::x=1; 1::y=1; 7789 :>1:r0=2; 3:r0=2; 0::x=1; 1::y=1; 8112 :>1:r0=0; 3:r0=0; 0::x=2; 1::y=1; 7443 :>1:r0=1; 3:r0=0; 0::x=2; 1::y=1; 5933 :>1:r0=2; 3:r0=0; 0::x=2; 1::y=1; 977 :>1:r0=0; 3:r0=1; 0::x=2; 1::y=1; 4636 :>1:r0=0; 3:r0=2; 0::x=2; 1::y=1; 1455 :>1:r0=1; 3:r0=2; 0::x=2; 1::y=1; 1219 :>1:r0=2; 3:r0=2; 0::x=2; 1::y=1; 4823 :>1:r0=0; 3:r0=0; 0::x=1; 1::y=2; 408 :>1:r0=1; 3:r0=0; 0::x=1; 1::y=2; 2020 :>1:r0=2; 3:r0=0; 0::x=1; 1::y=2; 2686 :>1:r0=0; 3:r0=1; 0::x=1; 1::y=2; 345 :>1:r0=2; 3:r0=1; 0::x=1; 1::y=2; 2273 :>1:r0=0; 3:r0=2; 0::x=1; 1::y=2; 312 :>1:r0=2; 3:r0=2; 0::x=1; 1::y=2; 4554 :>1:r0=0; 3:r0=0; 0::x=2; 1::y=2; 1560 :>1:r0=1; 3:r0=0; 0::x=2; 1::y=2; 290 :>1:r0=2; 3:r0=0; 0::x=2; 1::y=2; 999 :>1:r0=0; 3:r0=1; 0::x=2; 1::y=2; 415 :>1:r0=0; 3:r0=2; 0::x=2; 1::y=2; No Witnesses Positive: 0, Negative: 100000 Condition exists (0::x=2 /\ 1::y=2 /\ 1:r0=2 /\ 3:r0=2) is NOT validated Observation IRWIW+membar.cta+addr-p0::p1:p2:p3-xgys Never 0 100000 Time IRWIW+membar.cta+addr-p0::p1:p2:p3-xgys 33.00 -- 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/IRWIW+membar.cta+addr-p0::p1:p2:p3-xgys-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 */