問題点
ターミナルでは問題なくtourchをimport出来るのですが、Jupyterで「import tourch」をすると次のようなエラーが発生したのでその解決方法を記載します。
OSError: /usr/lib/aarch64-linux-gnu/libgomp.so.1: cannot allocate memory in static TLS block
エラー全文
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
--------------------------------------------------------------------------- OSError Traceback (most recent call last) <ipython-input-1-2ded0af11fa0> in <module> ----> 1 import torch 2 import torchvision 3 4 CATEGORIES = ['apex'] 5 ~/.local/lib/python3.6/site-packages/torch/__init__.py in <module> 186 # See Note [Global dependencies] 187 if USE_GLOBAL_DEPS: --> 188 _load_global_deps() 189 from torch._C import * 190 ~/.local/lib/python3.6/site-packages/torch/__init__.py in _load_global_deps() 139 lib_path = os.path.join(os.path.dirname(here), 'lib', lib_name) 140 --> 141 ctypes.CDLL(lib_path, mode=ctypes.RTLD_GLOBAL) 142 143 /usr/lib/python3.6/ctypes/__init__.py in __init__(self, name, mode, handle, use_errno, use_last_error) 346 347 if handle is None: --> 348 self._handle = _dlopen(self._name, mode) 349 else: 350 self._handle = handle OSError: /usr/lib/aarch64-linux-gnu/libgomp.so.1: cannot allocate memory in static TLS block |
解決方法
すばり、「torchの前にnumpyをインポートする」です。
1 2 |
import numpy as np import torch |
ちなみに、先ほどのエラーが出た後にnumpyをimportして実行すると、次のエラーが発生する可能性もあります。
「module ‘torch’ has no attribute ‘_six’」
その時は一度Kernelをシャットダウンしてから実行をしてください。
参考
OSError: /usr/lib/aarch64-linux-gnu/libgomp.so.1: cannot allocate memory in static TLS block · Issue #14 · rt-net/jnm_jupyternotebook
不具合の概要 import torchでOSError: /usr/lib/aarch64-linux-gnu/libgomp.so.1: cannot allocate memory in static TLS blockが発生する 関連: keras-team/keras-tuner#317 ただしimport n...
AttributeError: module 'torch' has no attribute '_six'. Bert model in Pytorch
I tried to load pre-trained model by using BertModel class in pytorch.I have _six.py under torch, but it still shows module 'torch' has no attribute '_six'impor...
コメント