This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Re: Co-Array with OpenACC
I am not sure I understand what you are trying to say.
The arrays are coarrays and I can confirm that they get transferred to
the device and the loops are happening fine.
Its only the single statement
!$acc host_data use_device(z)
z(1)[1] = z(1)[2]
!$acc end host_data
that does nothing. I actually do sync all() after that.
On Fri, Sep 23, 2016 at 8:06 PM, Andre Vehreschild <vehre@gmx.de> wrote:
> Hi Vikram, hi Cesar,
>
> Now as text/plain...
>
> Having done some work on coarrays, I can give some knowledge on the issue. When you combine openacc with any coarray implementation you face the issue of both worlds knowing nothing about each other. Furthermore assumes the coarray implementation that the memory on remote images is accessible to it at any time and it requires no additional synchronisation with another parallel implementation. Although this is an interesting issue, I fear that with the current state of gfortran you will face a lot of synchronisation issues. Try adding explicit sync mem statements after the host_data to see if that helps. But I promise nothing.
>
> Regards,
> Andre
>
> Am 23. September 2016 18:25:29 MESZ, schrieb Vikram Singh <vikramsingh001@gmail.com>:
>>Thanks.
>>
>>On Fri, Sep 23, 2016 at 7:18 PM, Cesar Philippidis
>><cesar@codesourcery.com> wrote:
>>> On 09/23/2016 08:44 AM, Vikram Singh wrote:
>>>
>>>> But I am still wondering what exactly should the committee be
>>>> addressing in the present case. If I read the spec, it says
>>host_data
>>>> makes the device data available to the host thread. Now obviously
>>one
>>>> problem is that the spec was probably not written keeping CoArrays
>>in
>>>> mind, but to me that statement seems pretty straightforward. The
>>>> host_data will tell the device memory to the host and the coarray
>>>> subscript tells the host which device it is on.
>>>>
>>>> Now obviously that seems like a selfish simplification because I
>>would
>>>> like to be able to use it in this manner, but how can we contact the
>>>> committee to clarify this?
>>>
>>> You need to subscribe to the OpenACC-Users mailing list, which you
>>can
>>> do here:
>>>
>>>
>>http://list.openacc.org/mailman/listinfo/openacc-users_list.openacc.org
>>>
>>> Cesar
>
> --
> Andre Vehreschild