Changeset 3634 for palm/trunk/SOURCE/pres.f90
- Timestamp:
- Dec 18, 2018 12:31:28 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/pres.f90
r3347 r3634 25 25 ! ----------------- 26 26 ! $Id$ 27 ! OpenACC port for SPEC 28 ! 29 ! 3347 2018-10-15 14:21:08Z suehring 27 30 ! Bugfixes in offline nesting. 28 31 ! Add comment. … … 232 235 233 236 CALL cpu_log( log_point(8), 'pres', 'start' ) 237 238 !$ACC DATA COPYOUT(d, tend) & 239 !$ACC COPY(u, v, w, p) & 240 !$ACC COPYIN(rho_air, rho_air_zw, ddzu, ddzw, wall_flags_0) 241 242 !$ACC DATA & 243 !$ACC COPYIN(bc_h(0:1)) & 244 !$ACC COPYIN(bc_h(0)%i(1:bc_h(0)%ns)) & 245 !$ACC COPYIN(bc_h(0)%j(1:bc_h(0)%ns)) & 246 !$ACC COPYIN(bc_h(0)%k(1:bc_h(0)%ns)) & 247 !$ACC COPYIN(bc_h(1)%i(1:bc_h(1)%ns)) & 248 !$ACC COPYIN(bc_h(1)%j(1:bc_h(1)%ns)) & 249 !$ACC COPYIN(bc_h(1)%k(1:bc_h(1)%ns)) 234 250 235 251 … … 442 458 ELSE 443 459 !$OMP PARALLEL DO SCHEDULE( STATIC ) PRIVATE (i,j,k) 460 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 461 !$ACC PRESENT(d) 444 462 DO i = nxl, nxr 445 463 DO j = nys, nyn … … 490 508 !$OMP PARALLEL PRIVATE (i,j,k) 491 509 !$OMP DO SCHEDULE( STATIC ) 510 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 511 !$ACC PRESENT(u, v, w, rho_air, rho_air_zw, ddzw, wall_flags_0) & 512 !$ACC PRESENT(d) 492 513 DO i = nxl, nxr 493 514 DO j = nys, nyn … … 513 534 !$OMP PARALLEL PRIVATE (i,j,k) FIRSTPRIVATE(threadsum) REDUCTION(+:localsum) 514 535 !$OMP DO SCHEDULE( STATIC ) 536 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i,j,k) & 537 !$ACC REDUCTION(+:threadsum) COPY(threadsum) & 538 !$ACC PRESENT(d) 515 539 DO i = nxl, nxr 516 540 DO j = nys, nyn … … 547 571 !-- z-direction 548 572 !$OMP PARALLEL DO PRIVATE (i,j,k) 573 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 574 !$ACC PRESENT(d, tend) 549 575 DO i = nxl, nxr 550 576 DO j = nys, nyn … … 565 591 !-- Upward facing 566 592 !$OMP PARALLEL DO PRIVATE( i, j, k ) 593 !$ACC PARALLEL LOOP PRIVATE(i, j, k) & 594 !$ACC PRESENT(bc_h, tend) 567 595 DO m = 1, bc_h(0)%ns 568 596 i = bc_h(0)%i(m) … … 574 602 !-- Downward facing 575 603 !$OMP PARALLEL DO PRIVATE( i, j, k ) 604 !$ACC PARALLEL LOOP PRIVATE(i, j, k) & 605 !$ACC PRESENT(bc_h, tend) 576 606 DO m = 1, bc_h(1)%ns 577 607 i = bc_h(1)%i(m) … … 621 651 !-- Dirichlet 622 652 !$OMP PARALLEL DO PRIVATE (i,j,k) 653 !$ACC PARALLEL LOOP COLLAPSE(2) PRIVATE(i, j) & 654 !$ACC PRESENT(tend) 623 655 DO i = nxlg, nxrg 624 656 DO j = nysg, nyng … … 688 720 !$OMP PARALLEL PRIVATE (i,j,k) 689 721 !$OMP DO 722 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 723 !$ACC PRESENT(p, tend) 690 724 DO i = nxl-1, nxr+1 691 725 DO j = nys-1, nyn+1 … … 701 735 !$OMP PARALLEL PRIVATE (i,j,k) 702 736 !$OMP DO 737 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 738 !$ACC PRESENT(p, tend) 703 739 DO i = nxl-1, nxr+1 704 740 DO j = nys-1, nyn+1 … … 733 769 !$OMP PARALLEL PRIVATE (i,j,k) 734 770 !$OMP DO 771 !$ACC PARALLEL LOOP COLLAPSE(2) PRIVATE(i, j, k) & 772 !$ACC PRESENT(u, v, w, tend, ddzu, wall_flags_0) 735 773 DO i = nxl, nxr 736 774 DO j = nys, nyn … … 900 938 #else 901 939 !$OMP DO SCHEDULE( STATIC ) 940 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 941 !$ACC PRESENT(u, v, w, rho_air, rho_air_zw, ddzw, wall_flags_0) & 942 !$ACC PRESENT(d) 902 943 DO i = nxl, nxr 903 944 DO j = nys, nyn … … 916 957 !-- Compute possible PE-sum of divergences for flow_statistics 917 958 !$OMP DO SCHEDULE( STATIC ) 959 !$ACC PARALLEL LOOP COLLAPSE(3) PRIVATE(i, j, k) & 960 !$ACC REDUCTION(+:threadsum) COPY(threadsum) & 961 !$ACC PRESENT(d) 918 962 DO i = nxl, nxr 919 963 DO j = nys, nyn … … 939 983 CALL cpu_log( log_point(8), 'pres', 'stop' ) 940 984 985 !$ACC END DATA 986 !$ACC END DATA 941 987 942 988 END SUBROUTINE pres
Note: See TracChangeset
for help on using the changeset viewer.