mirror of
				https://github.com/ggml-org/llama.cpp.git
				synced 2025-11-03 09:22:01 +00:00 
			
		
		
		
	CUDA: add device number to error messages (#3112)
This commit is contained in:
		
							
								
								
									
										11
									
								
								ggml-cuda.cu
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								ggml-cuda.cu
									
									
									
									
									
								
							@@ -144,8 +144,11 @@ static_assert(sizeof(half) == sizeof(ggml_fp16_t), "wrong fp16 size");
 | 
				
			|||||||
    do {                                                                                \
 | 
					    do {                                                                                \
 | 
				
			||||||
        cudaError_t err_ = (err);                                                       \
 | 
					        cudaError_t err_ = (err);                                                       \
 | 
				
			||||||
        if (err_ != cudaSuccess) {                                                      \
 | 
					        if (err_ != cudaSuccess) {                                                      \
 | 
				
			||||||
            fprintf(stderr, "CUDA error %d at %s:%d: %s\n", err_, __FILE__, __LINE__,   \
 | 
					            int id;                                                                     \
 | 
				
			||||||
 | 
					            cudaGetDevice(&id);                                                         \
 | 
				
			||||||
 | 
					            fprintf(stderr, "\nCUDA error %d at %s:%d: %s\n", err_, __FILE__, __LINE__, \
 | 
				
			||||||
                cudaGetErrorString(err_));                                              \
 | 
					                cudaGetErrorString(err_));                                              \
 | 
				
			||||||
 | 
					            fprintf(stderr, "current device: %d\n", id);                                \
 | 
				
			||||||
            exit(1);                                                                    \
 | 
					            exit(1);                                                                    \
 | 
				
			||||||
        }                                                                               \
 | 
					        }                                                                               \
 | 
				
			||||||
    } while (0)
 | 
					    } while (0)
 | 
				
			||||||
@@ -155,8 +158,11 @@ static_assert(sizeof(half) == sizeof(ggml_fp16_t), "wrong fp16 size");
 | 
				
			|||||||
    do {                                                                                \
 | 
					    do {                                                                                \
 | 
				
			||||||
        cublasStatus_t err_ = (err);                                                    \
 | 
					        cublasStatus_t err_ = (err);                                                    \
 | 
				
			||||||
        if (err_ != CUBLAS_STATUS_SUCCESS) {                                            \
 | 
					        if (err_ != CUBLAS_STATUS_SUCCESS) {                                            \
 | 
				
			||||||
 | 
					            int id;                                                                     \
 | 
				
			||||||
 | 
					            cudaGetDevice(&id);                                                         \
 | 
				
			||||||
            fprintf(stderr, "\ncuBLAS error %d at %s:%d: %s\n",                         \
 | 
					            fprintf(stderr, "\ncuBLAS error %d at %s:%d: %s\n",                         \
 | 
				
			||||||
                    err_, __FILE__, __LINE__, cublasGetStatusString(err_));             \
 | 
					                    err_, __FILE__, __LINE__, cublasGetStatusString(err_));             \
 | 
				
			||||||
 | 
					            fprintf(stderr, "current device: %d\n", id);                                \
 | 
				
			||||||
            exit(1);                                                                    \
 | 
					            exit(1);                                                                    \
 | 
				
			||||||
        }                                                                               \
 | 
					        }                                                                               \
 | 
				
			||||||
    } while (0)
 | 
					    } while (0)
 | 
				
			||||||
@@ -165,7 +171,10 @@ static_assert(sizeof(half) == sizeof(ggml_fp16_t), "wrong fp16 size");
 | 
				
			|||||||
    do {                                                                                \
 | 
					    do {                                                                                \
 | 
				
			||||||
        cublasStatus_t err_ = (err);                                                    \
 | 
					        cublasStatus_t err_ = (err);                                                    \
 | 
				
			||||||
        if (err_ != CUBLAS_STATUS_SUCCESS) {                                            \
 | 
					        if (err_ != CUBLAS_STATUS_SUCCESS) {                                            \
 | 
				
			||||||
 | 
					            int id;                                                                     \
 | 
				
			||||||
 | 
					            cudaGetDevice(&id);                                                         \
 | 
				
			||||||
            fprintf(stderr, "\ncuBLAS error %d at %s:%d\n", err_, __FILE__, __LINE__);  \
 | 
					            fprintf(stderr, "\ncuBLAS error %d at %s:%d\n", err_, __FILE__, __LINE__);  \
 | 
				
			||||||
 | 
					            fprintf(stderr, "current device: %d\n", id);                                \
 | 
				
			||||||
            exit(1);                                                                    \
 | 
					            exit(1);                                                                    \
 | 
				
			||||||
        }                                                                               \
 | 
					        }                                                                               \
 | 
				
			||||||
    } while (0)
 | 
					    } while (0)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user