GPU_PTX cl_stale-p0::p1-agbgxgyg {} P0 | P1 ; mov.u32 r0, 1 | ld.cg.u32 r0, [r1] ; st.cg.u32 [r1], r0 | setp.eq.u32 r2, r0, 1 ; ld.cg.u32 r2, [r3] | @r2 mov.u32 r3, 1 ; ld.cg.u32 r4, [r5] | @r2 ld.cg.u32 r4, [r5] ; setp.eq.u32 r6, r2, r4 | ; @r6 atom.inc.u32 r7, [r8], 1 | ; membar.gl | ; exists (1:r0=1 /\ 1:r4=0) (device (kernel (cta (warp P0)) (cta (warp P1)))) y:global; x:global; a:global; b:global Generated assembler //START _litmus_P1 ld.cg.u32 sr01, [sr11] ; setp.eq.u32 sr21, sr01, 1 ; @sr21 mov.u32 sr31, 1 ; @sr21 ld.cg.u32 sr41, [sr51] ; //START _litmus_P0 mov.u32 sr00, 1 ; st.cg.u32 [sr10], sr00 ; ld.cg.u32 sr20, [sr30] ; ld.cg.u32 sr40, [sr50] ; setp.eq.u32 sr60, sr20, sr40 ; @sr60 atom.inc.u32 sr70, [sr80], 1 ; membar.gl ; Binary '/tmp/dira85d17.tmp/cl-stale.exe' successfully loaded Specification clusters: 2 Specification: [[(884, 3, 'R4'), (887, 3, 'R0')], [(958, 2, 'R8'), (954, 3, 'R5'), (955, 3, 'R4'), (957, 7, 'R0')]] Cluster 0: OK Cluster 1: OK !!SUCCESS!! Test cl-stale Allowed Histogram (3 states) 1 *>1:r0=1; 1:r4=0; 97821 :>1:r0=0; 1:r4=1; 2183 :>1:r0=1; 1:r4=1; Ok Witnesses Positive: 1, Negative: 100004 Condition exists (1:r0=1 /\ 1:r4=0) is validated Observation cl-stale Sometimes 1 100004 Time cl-stale 10.19 -- device info -- Name: Tesla C2075 Major revision number: 2 Minor revision number: 0 Total global memory: 5636554752 Total shared memory per block: 49152 Number of multiprocessors: 14 Machine: fractus Revision 1521, version 5.01 GPU_PTX experimental backend Command line: ./litmus -mach TeslaC2075.cfg ASPLOS/cl-stale.litmus -gpu-general-bc false 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_20 */ /* barrier: user */ /* speedcheck: no */ /* gpu_general_bc: false */ /* 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: 12 */ /* gpu_min_ctas: 9 */ /* gpu_max_threads: 512 */ /* gpu_min_threads: 128 */