1
1

fcoll/base: do not use the two_phase compoment with CUDA support

the two_phase compoment does not work with some collective I/O
operations on CUDA buffers due to the data sieving (i.e.
both read and write operations) executed on some buffers, which are
not anticipated in the GPU buffer management of the code.

Signed-off-by: Edgar Gabriel <egabriel@central.uh.edu>
Этот коммит содержится в:
Edgar Gabriel 2018-06-10 16:34:19 -05:00
родитель 6a532101aa
Коммит ac79e576ef

Просмотреть файл

@ -280,11 +280,18 @@ int mca_fcoll_base_query_table (struct ompio_file_t *file, char *name)
}
}
if (!strcmp (name, "two_phase")) {
#if OPAL_CUDA_SUPPORT
/* do not use the two_phase component with CUDA
buffers, since the data sieving causes trouble
on unmanaged GPU buffers.
*/
#else
if ((int)file->f_cc_size < file->f_bytes_per_agg &&
(0 == file->f_stripe_size || file->f_cc_size < file->f_stripe_size) &&
(LUSTRE != file->f_fstype) ) {
return 1;
}
#endif
}
return 0;
}