Make some error messages more helpful
This commit was SVN r25209.
Этот коммит содержится в:
родитель
bb9e73232a
Коммит
3d8c6b83a9
@ -71,18 +71,33 @@ void mca_common_cuda_init(void)
|
|||||||
mca_common_cuda_warning = OPAL_INT_TO_BOOL(value);
|
mca_common_cuda_warning = OPAL_INT_TO_BOOL(value);
|
||||||
|
|
||||||
/* Check to see if this process is running in a CUDA context. If
|
/* Check to see if this process is running in a CUDA context. If
|
||||||
* so, all is good. If not, then disable CUDA support. */
|
* so, all is good. If not, then disable registration of memory. */
|
||||||
res = cuCtxGetCurrent(&cuContext);
|
res = cuCtxGetCurrent(&cuContext);
|
||||||
if (CUDA_SUCCESS != res) {
|
if (CUDA_SUCCESS != res) {
|
||||||
if (mca_common_cuda_warning) {
|
if (mca_common_cuda_warning) {
|
||||||
orte_show_help("help-mpi-common-cuda.txt", "cuCtxGetCurrent failed",
|
/* Check for the not initialized error since we can make suggestions to
|
||||||
true, res);
|
* user for this error. */
|
||||||
|
if (CUDA_ERROR_NOT_INITIALIZED == res) {
|
||||||
|
orte_show_help("help-mpi-common-cuda.txt", "cuCtxGetCurrent failed not initialized",
|
||||||
|
true);
|
||||||
|
} else {
|
||||||
|
orte_show_help("help-mpi-common-cuda.txt", "cuCtxGetCurrent failed",
|
||||||
|
true, res);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
mca_common_cuda_enabled = false;
|
||||||
|
mca_common_cuda_register_memory = false;
|
||||||
|
} else if ((CUDA_SUCCESS == res) && (NULL == cuContext)) {
|
||||||
|
if (mca_common_cuda_warning) {
|
||||||
|
orte_show_help("help-mpi-common-cuda.txt", "cuCtxGetCurrent returned NULL",
|
||||||
|
true);
|
||||||
}
|
}
|
||||||
mca_common_cuda_enabled = false;
|
mca_common_cuda_enabled = false;
|
||||||
mca_common_cuda_register_memory = false;
|
mca_common_cuda_register_memory = false;
|
||||||
initialized = true;
|
|
||||||
return;
|
|
||||||
} else {
|
} else {
|
||||||
|
/* All is good. mca_common_cuda_register_memory will retain its original
|
||||||
|
* value. Normally, that is 1, but the user can override it to disable
|
||||||
|
* registration of the internal buffers. */
|
||||||
mca_common_cuda_enabled = true;
|
mca_common_cuda_enabled = true;
|
||||||
opal_output_verbose(20, mca_common_cuda_output,
|
opal_output_verbose(20, mca_common_cuda_output,
|
||||||
"CUDA: cuCtxGetCurrent succeeded");
|
"CUDA: cuCtxGetCurrent succeeded");
|
||||||
|
@ -7,11 +7,32 @@
|
|||||||
#
|
#
|
||||||
# $HEADER$
|
# $HEADER$
|
||||||
#
|
#
|
||||||
|
[cuCtxGetCurrent failed not initialized]
|
||||||
|
WARNING: The call to cuCtxGetCurrent() failed while attempting to register
|
||||||
|
internal memory with the CUDA environment. The program will continue to run,
|
||||||
|
but the performance of GPU memory transfers may be reduced. This failure
|
||||||
|
indicates that the CUDA environment is not yet initialized. To eliminate
|
||||||
|
this warning, ensure that CUDA is initialized prior to calling MPI_Init.
|
||||||
|
|
||||||
|
NOTE: You can turn off this warning by setting the MCA parameter
|
||||||
|
mpi_common_cuda_warning to 0.
|
||||||
|
#
|
||||||
[cuCtxGetCurrent failed]
|
[cuCtxGetCurrent failed]
|
||||||
WARNING: The call to cuCtxGetCurrent() failed while initializing the
|
WARNING: The call to cuCtxGetCurrent() failed while attempting to register
|
||||||
CUDA support. Support for CUDA registered memory is disabled.
|
internal memory with the CUDA environment. The program will continue to run,
|
||||||
|
but the performance of GPU memory transfers may be reduced.
|
||||||
cuCtxGetCurrent return value: %d
|
cuCtxGetCurrent return value: %d
|
||||||
|
|
||||||
|
NOTE: You can turn off this warning by setting the MCA parameter
|
||||||
|
mpi_common_cuda_warning to 0.
|
||||||
|
#
|
||||||
|
[cuCtxGetCurrent returned NULL]
|
||||||
|
WARNING: The call to cuCtxGetCurrent() failed while attempting to register
|
||||||
|
internal memory with the CUDA environment. The program will continue to run,
|
||||||
|
but the performance of GPU memory transfers may be reduced. This failure
|
||||||
|
indicates that there is no CUDA context yet. To eliminate this warning,
|
||||||
|
ensure that there is a CUDA context prior to calling MPI_Init.
|
||||||
|
|
||||||
NOTE: You can turn off this warning by setting the MCA parameter
|
NOTE: You can turn off this warning by setting the MCA parameter
|
||||||
mpi_common_cuda_warning to 0.
|
mpi_common_cuda_warning to 0.
|
||||||
#
|
#
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user