首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在WSL中使用RAPIDS时,为什么会出现CUDA内存错误?

在WSL中使用RAPIDS时,为什么会出现CUDA内存错误?
EN

Stack Overflow用户
提问于 2021-11-20 19:18:57
回答 1查看 215关注 0票数 0

我在Windows21H2 (19044.1348)下安装了WSL2 (5.10.60.1-microsoft-standard-WSL2),使用的是带有pascal GPU (1070)的NVidia驱动程序510.06。我在WSL中使用默认的ubuntu版本(20.04.3LTS),我尝试了docker和anaconda版本。我可以运行Jupiter Notebook并导入该库。您也可以创建一个cudf Datagramme。但是写入它或执行其他任何操作都会产生内存错误。

代码语言:javascript
复制
buf = rmm.DeviceBuffer(size=100)

给了我(有一次它运行时没有错误,但再也不会了)

代码语言:javascript
复制
---------------------------------------------------------------------------
MemoryError                               Traceback (most recent call last)
/tmp/ipykernel_2220/3317065296.py in <module>
      1 import rmm
----> 2 buf = rmm.DeviceBuffer(size=100)

rmm/_lib/device_buffer.pyx in rmm._lib.device_buffer.DeviceBuffer.__cinit__()

MemoryError: std::bad_alloc: CUDA error at: /home/user/miniconda3/envs/rapids-21.10/include/rmm/mr/device/cuda_memory_resource.hpp:70: cudaErrorNotSupported operation not supported

代码语言:javascript
复制
gdf_float = cudf.DataFrame()
gdf_float['0'] = [1.0, 2.0, 5.0]
gdf_float['1'] = [4.0, 2.0, 1.0]
gdf_float['2'] = [4.0, 2.0, 1.0]

给了我

代码语言:javascript
复制
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
~/miniconda3/envs/rapids-21.10/lib/python3.7/site-packages/cudf/core/column/column.py in as_column(arbitrary, nan_as_null, dtype, length)
   2026             data = as_column(
-> 2027                 memoryview(arbitrary), dtype=dtype, nan_as_null=nan_as_null
   2028             )

TypeError: memoryview: a bytes-like object is required, not 'list'

During handling of the above exception, another exception occurred:

RuntimeError                              Traceback (most recent call last)
/tmp/ipykernel_2220/2068985133.py in <module>
      1 gdf_float = cudf.DataFrame()
----> 2 gdf_float['0'] = [1.0, 2.0, 5.0]
      3 gdf_float['1'] = [4.0, 2.0, 1.0]
      4 gdf_float['2'] = [4.0, 2.0, 1.0]

~/miniconda3/envs/rapids-21.10/lib/python3.7/contextlib.py in inner(*args, **kwds)
     72         def inner(*args, **kwds):
     73             with self._recreate_cm():
---> 74                 return func(*args, **kwds)
     75         return inner
     76 

~/miniconda3/envs/rapids-21.10/lib/python3.7/site-packages/cudf/core/dataframe.py in __setitem__(self, arg, value)
    766                     # disc. with pandas here
    767                     # pandas raises key error here
--> 768                     self.insert(len(self._data), arg, value)
    769 
    770         elif can_convert_to_column(arg):

~/miniconda3/envs/rapids-21.10/lib/python3.7/contextlib.py in inner(*args, **kwds)
     72         def inner(*args, **kwds):
     73             with self._recreate_cm():
---> 74                 return func(*args, **kwds)
     75         return inner
     76 

~/miniconda3/envs/rapids-21.10/lib/python3.7/site-packages/cudf/core/dataframe.py in insert(self, loc, name, value)
   3276             )
   3277 
-> 3278         value = column.as_column(value)
   3279 
   3280         self._data.insert(name, value, loc=loc)

~/miniconda3/envs/rapids-21.10/lib/python3.7/site-packages/cudf/core/column/column.py in as_column(arbitrary, nan_as_null, dtype, length)
   2100                     ),
   2101                     dtype=dtype,
-> 2102                     nan_as_null=nan_as_null,
   2103                 )
   2104             except (pa.ArrowInvalid, pa.ArrowTypeError, TypeError):

~/miniconda3/envs/rapids-21.10/lib/python3.7/site-packages/cudf/core/column/column.py in as_column(arbitrary, nan_as_null, dtype, length)
   1794                 "https://issues.apache.org/jira/browse/ARROW-3802"
   1795             )
-> 1796         col = ColumnBase.from_arrow(arbitrary)
   1797         if isinstance(arbitrary, pa.NullArray):
   1798             if type(dtype) == str and dtype == "empty":

~/miniconda3/envs/rapids-21.10/lib/python3.7/site-packages/cudf/core/column/column.py in from_arrow(cls, array)
    305             return cudf.core.column.Decimal64Column.from_arrow(array)
    306 
--> 307         result = libcudf.interop.from_arrow(data, data.column_names)[0]["None"]
    308 
    309         result = result._with_type_metadata(

cudf/_lib/interop.pyx in cudf._lib.interop.from_arrow()

RuntimeError: CUDA error encountered at: ../src/bitmask/null_mask.cu:93: 801 cudaErrorNotSupported operation not supported

如果与此相关,我的系统内存始终接近满(16 8GB),Vmmem约为10 8GB,我的显卡内存仅为1,4/8 8GB

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-22 20:50:18

不幸的是,WSL2上的急流只能在带有急流21.08的Pascal GPU上运行,但不能在21.10或更高版本上运行。请尝试21.08。这些版本还处于实验阶段,所以YMMV。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70049128

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档