the tutorials provided are very handy but I would have some questions that could confirm that I understand this programming model properly:
- When I explicitly create a data region with copyins/outs/locals, then these clauses, no matter how many acc regions (computing) I create within this data region, are handled only at the beginning and at the end of the data region, not at each computing region?
- Can I nest data regions within themselves?
- IF/SWITCH clauses have to be avoided only within computing ACC regions, I can have them normally in data regions?
- Can I put a subroutine call within a data region? (that subroutines has then computing regions within)?
- Could you please provide a short code tutoring me on the update clause?
And some questions concerning the PGI Accelerator environment:
- I’m deploying the accelerated software in Fortran90 on a Tesla rack server (4xGT200) and enabling multi-GPU via MPI.
a) the ACC_NOTIFY shows me only kernel launch info from the process with rank 0 even though 4 separate GPUs are utilised, (1MPI@1core+1GPU), can I see all 4 information
b) when can I expect support for PGI accelerator within OpenMP regions?
- How should I use the pgi_accinit tool? Running it background is enough?
- When I’m compiling the software with static common blocks greater than 2GB I get some compiler errors (even withouth Acceleration), introducing --mcmodel=medium helps for the errors within my software, but still those errors occur on some hpf libraries from PGI compilers directory… (Linux x86_64 Fedora 11)
Thank You in advance for your replies.