| 807 | |
| 808 | static uint64_t variable = 0; |
| 809 | void readerThread(uint64_t *variableToRead, |
| 810 | volatile bool *run, |
| 811 | pthread_barrier_t *barrier, |
| 812 | int core=0) |
| 813 | { |
| 814 | bindThreadToCpu(core); |
| 815 | pthread_barrier_wait(barrier); |
| 816 | |
| 817 | uint64_t sum = 0; |
| 818 | while(*run) { |
| 819 | sum += variable; |
| 820 | NanoLogInternal::Fence::lfence(); |
| 821 | } |
| 822 | |
| 823 | discard(&sum); |
| 824 | } |
| 825 | |
| 826 | double mm_stream_pi_contended() |
| 827 | { |
nothing calls this directly
no test coverage detected