common/ompio: incorporate George's comments
incorporate a couple of comments by George as part of the review on github. Signed-off-by: Edgar Gabriel <egabriel@central.uh.edu>
Этот коммит содержится в:
родитель
3c10ed4ed1
Коммит
7808379a47
@ -22,6 +22,7 @@
|
||||
#include "opal/datatype/opal_convertor.h"
|
||||
#include "opal/datatype/opal_datatype_cuda.h"
|
||||
#include "opal/mca/common/cuda/common_cuda.h"
|
||||
#include "opal/util/sys_limits.h"
|
||||
|
||||
#include "opal/mca/allocator/allocator.h"
|
||||
#include "opal/mca/allocator/base/base.h"
|
||||
@ -60,13 +61,9 @@ void mca_common_ompio_check_gpu_buf ( ompio_file_t *fh, const void *buf, int *is
|
||||
static void* mca_common_ompio_cuda_alloc_seg ( void*ctx, size_t *size )
|
||||
{
|
||||
char *buf=NULL;
|
||||
size_t realsize, numpages, rest;
|
||||
size_t realsize, numpages;
|
||||
|
||||
numpages = *size / mca_common_ompio_pagesize;
|
||||
rest = *size % mca_common_ompio_pagesize;
|
||||
if ( rest ) {
|
||||
numpages++;
|
||||
}
|
||||
numpages = (*size + mca_common_ompio_pagesize -1 )/mca_common_ompio_pagesize;
|
||||
realsize = numpages * mca_common_ompio_pagesize;
|
||||
|
||||
buf = malloc ( realsize);
|
||||
@ -81,8 +78,8 @@ static void mca_common_ompio_cuda_free_seg ( void *ctx, void *buf )
|
||||
{
|
||||
if ( NULL != buf ) {
|
||||
mca_common_cuda_unregister ( (char *) buf, NULL );
|
||||
free ( buf );
|
||||
}
|
||||
free ( buf );
|
||||
return;
|
||||
}
|
||||
|
||||
@ -113,7 +110,8 @@ int mca_common_ompio_cuda_alloc_init ( void )
|
||||
return OMPI_ERR_BUFFER;
|
||||
}
|
||||
|
||||
mca_common_ompio_pagesize = sysconf(_SC_PAGESIZE);
|
||||
// mca_common_ompio_pagesize = sysconf(_SC_PAGESIZE);
|
||||
mca_common_ompio_pagesize = opal_getpagesize();
|
||||
|
||||
OPAL_THREAD_UNLOCK(&mca_common_ompio_cuda_mutex);
|
||||
return OMPI_SUCCESS;
|
||||
|
@ -27,6 +27,10 @@
|
||||
opal_convertor_prepare_for_send ( _convertor, &(_datatype->super), _count, _buf );\
|
||||
opal_convertor_get_packed_size( _convertor, &_max_data ); \
|
||||
_tbuf = mca_common_ompio_alloc_buf (_fh, _max_data); \
|
||||
if ( NULL == _tbuf ) { \
|
||||
opal_output(1, "common_ompio: error allocating memory\n"); \
|
||||
return OMPI_ERR_OUT_OF_RESOURCE; \
|
||||
} \
|
||||
_decoded_iov = (struct iovec *) malloc ( sizeof ( struct iovec )); \
|
||||
if ( NULL == _decoded_iov ) { \
|
||||
opal_output(1, "common_ompio: could not allocate memory.\n"); \
|
||||
|
@ -91,7 +91,7 @@ int mca_common_ompio_file_read (ompio_file_t *fh,
|
||||
}
|
||||
|
||||
#if OPAL_CUDA_SUPPORT
|
||||
int is_gpu=0, is_managed=0;
|
||||
int is_gpu, is_managed;
|
||||
opal_convertor_t convertor;
|
||||
mca_common_ompio_check_gpu_buf ( fh, buf, &is_gpu, &is_managed);
|
||||
if ( is_gpu && !is_managed ) {
|
||||
@ -243,7 +243,7 @@ int mca_common_ompio_file_iread (ompio_file_t *fh,
|
||||
int j = 0; /* index into the file vie iovec */
|
||||
|
||||
#if OPAL_CUDA_SUPPORT
|
||||
int is_gpu=0, is_managed=0;
|
||||
int is_gpu, is_managed;
|
||||
mca_common_ompio_check_gpu_buf ( fh, buf, &is_gpu, &is_managed);
|
||||
if ( is_gpu && !is_managed ) {
|
||||
char *tbuf=NULL;
|
||||
|
@ -66,7 +66,7 @@ int mca_common_ompio_file_write (ompio_file_t *fh,
|
||||
}
|
||||
|
||||
#if OPAL_CUDA_SUPPORT
|
||||
int is_gpu=0, is_managed=0;
|
||||
int is_gpu, is_managed;
|
||||
mca_common_ompio_check_gpu_buf ( fh, buf, &is_gpu, &is_managed);
|
||||
if ( is_gpu && !is_managed ) {
|
||||
size_t pos=0;
|
||||
@ -209,7 +209,7 @@ int mca_common_ompio_file_iwrite (ompio_file_t *fh,
|
||||
int j = 0; /* index into the file vie iovec */
|
||||
|
||||
#if OPAL_CUDA_SUPPORT
|
||||
int is_gpu=0, is_managed=0;
|
||||
int is_gpu, is_managed;
|
||||
mca_common_ompio_check_gpu_buf ( fh, buf, &is_gpu, &is_managed);
|
||||
if ( is_gpu && !is_managed ) {
|
||||
size_t pos=0;
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user