Ubuntu に Python パッケージをインストールしようとすると「MemoryError」が発生する

Ubuntu に Python パッケージをインストールしようとすると「MemoryError」が発生する

私は Ubuntu 用の Oracle VM を使用していて、「torch」という Python パッケージをインストールしようとしています。しかし、「pip install torch」と入力してパッケージをインストールしようとすると、最後に「MemoryError」というエラー メッセージが表示されます。正確なエラー メッセージは次のとおりです。

pip インストール トーチ

トーチの収集 ダウンロードhttps://files.pythonhosted.org/packages/31/ca/dd2c64f8ab5e7985c4af6e62da933849293906edcdb70dac679c93477733/torch-1.0.1.post2-cp36-cp36m-manylinux1_x86_64.whl(582.5MB) 99% |██████████████████████████████████| 582.5MB 16.4MB/s eta 0:00:01例外:

トレースバック (最新の呼び出しが最後): ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/cli/base_command.py"、行 176、main 内 status = self.run(options, args) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/commands/install.py"、行 315、run 内 resolver.resolve(requirement_set) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/resolve.py"、行 131、resolve 内 self._resolve_one(requirement_set, req) ファイル"/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/resolve.py"、行 294、_resolve_one 内 abstract_dist = self._get_abstract_dist_for(req_to_install) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/resolve.py"、行 242、_get_abstract_dist_for 内 self.require_hashes ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/operations/prepare.py"、行 334、prepare_linked_requirement 内 progress_bar=self.progress_bar ファイル"/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/download.py"、行 878、unpack_url progress_bar=progress_bar ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/download.py"、行 702、unpack_http_url progress_bar) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/download.py"、行 946、_download_http_url _download_url(resp, link, content_file, hashes, progress_bar) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/download.py"、行 639、 _download_url hashes.check_against_chunks(downloaded_chunks) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/utils/hashes.py"、行 62、check_against_chunks 内 chunk 内 chunks について: ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/download.py"、行 607、written_chunks 内 chunk 内 chunks について: ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/utils/ui.py"、行 159、iter 内 x 内 it: ファイル"/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_internal/download.py"、行 596、resp_read decode_content=False): ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/urllib3/response.py"、行 494、ストリーム data = self.read(amt=amt、decode_content=decode_content) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/urllib3/response.py"、行 442、読み取り data = self._fp.read(amt) ファイル"/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/cachecontrol/filewrapper.py"、行 65、読み取り self._close() ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/cachecontrol/filewrapper.py"、行 52、_close selfの中で。callback(self.__buf.getvalue()) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/cachecontrol/controller.py"、行 300、cache_response cache_url 内、self.serializer.dumps(request, response, body=body) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/cachecontrol/serialize.py"、行 72、dumps 内 return b",".join([b"cc=4", msgpack.dumps(data, use_bin_type=True)]) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/msgpack/__init.py", 行 47, packb 内 return Packer(**kwargs).pack(o) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/msgpack/fallback.py", 行 854, pack 内 self._pack(obj) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/msgpack/fallback.py", 行 845, _pack nest_limit - 1) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/msgpack/fallback.py", 行 947, _pack_map_pairs 内 self._pack(v, nest_limit - 1) ファイル"/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/msgpack/fallback.py"、行 845、_pack nest_limit - 1 内) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/msgpack/fallback.py"、行 947、_pack_map_pairs self._pack(v, nest_limit - 1) ファイル "/home/edwardkim/syseng/venv/lib/python3.6/site-packages/pip/_vendor/msgpack/fallback.py"、行 790、_pack return self._buffer.write(obj) MemoryError

そこで、Ubuntu VM のメモリ ディスク サイズが小さいと想定し、GParted をインストールしてメモリをさらに割り当てました。しかし、dev/sda1 パーティションに 1.47 GiB の未使用メモリがまだ残っており、パッケージのサイズはそれよりはるかに小さいことがわかりました。この問題の解決策はありますか? 追加情報が必要な場合はお知らせください。お読みいただきありがとうございます。

答え1

この場合の「メモリ」はディスク容量ではなく RAM を意味します。したがって、VM に割り当てられる RAM の量を変更する必要があります。

また、パッケージの圧縮サイズは582.5MBで、少なくともインストール時に 2 倍になるため、ディスク容量も不足する可能性があります。

答え2

これは私にとってはうまくいきました

pip --no-cache-dir install torch

関連情報