Default Distribution: “First Touch”
IRIX strategy for data placement:
- respect program distribution directives
- allocation on the node where data is initialized
- allocation on the node where memory is available
PARAMETER (PAGESIZE=16384, SIZEDBLE=8)
REAL, ALLOCATABLE:: WORK(:)!! Distribution directive not available
!$OMP PARALLEL DEFAULT(PRIVATE) SHARED(WORK,MX)
ID = OMP_GET_THREAD_NUM()
NP = OMP_GET_NUM_THREADS()
NPAGES = MX*SIZEDBLE/PAGESIZE
DO I=ID,NPAGES-NP+1,NP !! round-robin distribution of pages:
WORK(1+I*PAGESIZE/SIZEDBLE) = 0.0