Re: [PATCH] OpenMP, libgomp: Add new runtime routines omp_target_memcpy_async and omp_target_memcpy_rect_async

2022-05-19 Thread Jakub Jelinek via Gcc-patches
On Thu, May 19, 2022 at 10:39:05AM +0200, Marcel Vollweiler wrote: > > add here > >else > > { > >depend[0] = 0; > > ... > > } > > Added the "depend" definition to the "if" branch (instead the "else" branch). Thanks for correcting my thinko. > gcc/ChangeLog: > > * omp

Re: [PATCH] OpenMP, libgomp: Add new runtime routines omp_target_memcpy_async and omp_target_memcpy_rect_async

2022-05-19 Thread Marcel Vollweiler
Hi Jakub, Am 17.05.2022 um 20:08 schrieb Jakub Jelinek: On Tue, May 17, 2022 at 11:57:02AM +0200, Marcel Vollweiler wrote: More importantly, I have no idea how this can work when you pass arg_size 0 and arg_align 0. The s variable is in the current function frame, with arg_size 0 nothing is re

Re: [PATCH] OpenMP, libgomp: Add new runtime routines omp_target_memcpy_async and omp_target_memcpy_rect_async

2022-05-17 Thread Jakub Jelinek via Gcc-patches
On Tue, May 17, 2022 at 11:57:02AM +0200, Marcel Vollweiler wrote: > > More importantly, I have no idea how this can work when you pass arg_size 0 > > and arg_align 0. The s variable is in the current function frame, with > > arg_size 0 nothing is really copied to the generated task. > > arg_size

Re: [PATCH] OpenMP, libgomp: Add new runtime routines omp_target_memcpy_async and omp_target_memcpy_rect_async

2022-05-17 Thread Marcel Vollweiler
Hi Jakub, --- a/libgomp/libgomp.map +++ b/libgomp/libgomp.map @@ -224,6 +224,8 @@ OMP_5.1 { omp_set_teams_thread_limit_8_; omp_get_teams_thread_limit; omp_get_teams_thread_limit_; +omp_target_memcpy_async; +omp_target_memcpy_rect_async; } OMP_5.0.2; These should be add

Re: [PATCH] OpenMP, libgomp: Add new runtime routines omp_target_memcpy_async and omp_target_memcpy_rect_async

2022-05-05 Thread Tobias Burnus
On 05.05.22 10:30, Jakub Jelinek via Fortran wrote: + memcpy_t *a = args; + int ret = omp_target_memcpy_copy (a->dst, a->src, a->length, a->dst_offset, +a->src_offset, a->dst_devicep, +a->src_devicep); + if (ret) +gomp_fatal (

Re: [PATCH] OpenMP, libgomp: Add new runtime routines omp_target_memcpy_async and omp_target_memcpy_rect_async

2022-05-05 Thread Jakub Jelinek via Gcc-patches
On Mon, Feb 21, 2022 at 12:19:20PM +0100, Marcel Vollweiler wrote: > gcc/ChangeLog: > > * omp-low.cc (omp_runtime_api_call): Added target_memcpy_async and > target_memcpy_rect_async to omp_runtime_apis array. > > libgomp/ChangeLog: > > * libgomp.map: Added omp_target_memcpy_asy

[PATCH] OpenMP, libgomp: Add new runtime routines omp_target_memcpy_async and omp_target_memcpy_rect_async

2022-02-21 Thread Marcel Vollweiler
Hi, This patch adds two new OpenMP runtime routines: omp_target_memcpy_async and omp_target_memcpy_rect_async. Both functions are introduced in OpenMP 5.1 as asynchronous variants of omp_target_memcpy and omp_target_memcpy_rect. In contrast to the synchronous variants, the asynchronous functions