提交 eeb09321 authored 作者: Frederic's avatar Frederic

Changed a assert by a python exception.

上级 c500bafa
...@@ -3003,7 +3003,13 @@ int CudaNdarray_sger(float alpha, CudaNdarray * x, CudaNdarray * y, CudaNdarray ...@@ -3003,7 +3003,13 @@ int CudaNdarray_sger(float alpha, CudaNdarray * x, CudaNdarray * y, CudaNdarray
int x_strides = CudaNdarray_HOST_STRIDES(x)[0]; int x_strides = CudaNdarray_HOST_STRIDES(x)[0];
CudaNdarray * x_ = x; CudaNdarray * x_ = x;
if(x_strides == 0){ if(x_strides == 0){
assert(CudaNdarray_HOST_DIMS(x)[0] == 1); if(CudaNdarray_HOST_DIMS(x)[0] != 1){
PyErr_Format(PyExc_RuntimeError,
"CudaNdarray_sger: Invalid input x(should not happen)."
" We received an CudaNdarray vector with a stride of 0"
" that have more then 1 elements!");
return -1;
}
x_strides = 4; x_strides = 4;
} else if(x_strides < 0){ } else if(x_strides < 0){
x_ = (CudaNdarray*)CudaNdarray_Copy(x); x_ = (CudaNdarray*)CudaNdarray_Copy(x);
...@@ -3013,7 +3019,13 @@ int CudaNdarray_sger(float alpha, CudaNdarray * x, CudaNdarray * y, CudaNdarray ...@@ -3013,7 +3019,13 @@ int CudaNdarray_sger(float alpha, CudaNdarray * x, CudaNdarray * y, CudaNdarray
int y_strides = CudaNdarray_HOST_STRIDES(y)[0]; int y_strides = CudaNdarray_HOST_STRIDES(y)[0];
CudaNdarray * y_ = y; CudaNdarray * y_ = y;
if(y_strides == 0){ if(y_strides == 0){
assert(CudaNdarray_HOST_DIMS(y)[0] == 1); if(CudaNdarray_HOST_DIMS(y)[0] != 1){
PyErr_Format(PyExc_RuntimeError,
"CudaNdarray_sger: Invalid input y(should not happen)."
" We received an CudaNdarray vector with a stride of 0"
" that have more then 1 elements!");
return -1;
}
y_strides = 4; y_strides = 4;
} else if(y_strides < 0){ } else if(y_strides < 0){
y_ = (CudaNdarray*)CudaNdarray_Copy(y); y_ = (CudaNdarray*)CudaNdarray_Copy(y);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论