Allocates memory on CPU and initialization | () alloc_mem_init(data_pointer1,data_pointer2, …); | () #pragma acc data create() | () #pragma acc data copyin() | () | () | () Set_Time_Step(nNds,nEgs,lambda_inv,lambda_visc, …); | () Compute_Grident_Limiter(nNds,nEgs,edgeLn,edgeRn,den,denU,denV,denW,denE, …); | () Upwind_Residual(⋯);Viscous_Residual(⋯); Time_Advance(⋯); | () | () #pragma acc data update(cgvar_arr_1,cgvar_arr_2, …) | example of one function | void Set_Time_Step(nNds,nEgs,lambda_inv,lambda_visc, …) | () #pragma acc parallel loop present, | () for () | () iPoint=edgeLn[iEdge]; | () jPoint=edgeRn[iEdge]; | () ⋯ | () #pragma acc atomic | () lambda_inv[iPoint]+=lambda; | () #pargma acc atomic | () lambda_inv[jPoint]+=lambda; | () ⋯ | () |
|