aarch64 arm64 部署 stable diffusion webui 笔记 【1】准备 venv 安装pytorch 验证cuda

aarch64 pytorch(没有aarch64对应版本,自行编译)

pytorch-v2.0.1 cuda arm64 aarch64 torch 2.0.1+cu118 源码编译笔记【2】验证cuda安装 成功_hkNaruto的博客-CSDN博客

创建venv

[root@ceph3 stable-diffusion-webui]# /usr/local/Python-3.10.12/bin/python3 -m venv venv

[root@ceph3 stable-diffusion-webui]# source venv/bin/activate

(venv)[root@ceph3 stable-diffusion-webui]# python3

Python 3.10.12 (main, Sep 4 2023, 10:01:29) [GCC 9.2.0] on linux

Type "help", "copyright", "credits" or "license" for more information.

>>> import torch

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

ModuleNotFoundError: No module named 'torch'

>>>

发现torch未安装到venv,

安装pyyaml

(venv) [root@ceph3 stable-diffusion-webui]# cd /home/yeqiang/pyyaml-6.0.1/

(venv) [root@ceph3 pyyaml-6.0.1]# python3 setup.py install

日志

(venv) [root@ceph3 pyyaml-6.0.1]# python3 setup.py install
running install
/home/yeqiang/stable-diffusion-webui/venv/lib/python3.10/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
/home/yeqiang/stable-diffusion-webui/venv/lib/python3.10/site-packages/setuptools/command/easy_install.py:144: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
running bdist_egg
running egg_info
writing lib/PyYAML.egg-info/PKG-INFO
writing dependency_links to lib/PyYAML.egg-info/dependency_links.txt
writing top-level names to lib/PyYAML.egg-info/top_level.txt
reading manifest file 'lib/PyYAML.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'README'
adding license file 'LICENSE'
writing manifest file 'lib/PyYAML.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-aarch64/egg
running install_lib
running build_py
running build_ext
building 'yaml._yaml' extension
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/home/yeqiang/stable-diffusion-webui/venv/include -I/usr/local/Python-3.10.12/include/python3.10 -c yaml/_yaml.c -o build/temp.linux-aarch64-cpython-310/yaml/_yaml.o
gcc: 错误:yaml/_yaml.c:没有那个文件或目录
gcc: 致命错误:没有输入文件
编译中断。
Error compiling module, falling back to pure Python
creating build/bdist.linux-aarch64/egg
creating build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/__init__.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/composer.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/constructor.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/cyaml.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/dumper.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/emitter.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/error.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/events.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/loader.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/nodes.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/parser.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/reader.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/representer.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/resolver.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/scanner.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/serializer.py -> build/bdist.linux-aarch64/egg/yaml
copying build/lib.linux-aarch64-cpython-310/yaml/tokens.py -> build/bdist.linux-aarch64/egg/yaml
creating build/bdist.linux-aarch64/egg/_yaml
copying build/lib.linux-aarch64-cpython-310/_yaml/__init__.py -> build/bdist.linux-aarch64/egg/_yaml
byte-compiling build/bdist.linux-aarch64/egg/yaml/__init__.py to __init__.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/composer.py to composer.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/constructor.py to constructor.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/cyaml.py to cyaml.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/dumper.py to dumper.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/emitter.py to emitter.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/error.py to error.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/events.py to events.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/loader.py to loader.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/nodes.py to nodes.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/parser.py to parser.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/reader.py to reader.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/representer.py to representer.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/resolver.py to resolver.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/scanner.py to scanner.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/serializer.py to serializer.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/yaml/tokens.py to tokens.cpython-310.pyc
byte-compiling build/bdist.linux-aarch64/egg/_yaml/__init__.py to __init__.cpython-310.pyc
creating build/bdist.linux-aarch64/egg/EGG-INFO
copying lib/PyYAML.egg-info/PKG-INFO -> build/bdist.linux-aarch64/egg/EGG-INFO
copying lib/PyYAML.egg-info/SOURCES.txt -> build/bdist.linux-aarch64/egg/EGG-INFO
copying lib/PyYAML.egg-info/dependency_links.txt -> build/bdist.linux-aarch64/egg/EGG-INFO
copying lib/PyYAML.egg-info/top_level.txt -> build/bdist.linux-aarch64/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
creating 'dist/PyYAML-6.0.1-py3.10-linux-aarch64.egg' and adding 'build/bdist.linux-aarch64/egg' to it
removing 'build/bdist.linux-aarch64/egg' (and everything under it)
Processing PyYAML-6.0.1-py3.10-linux-aarch64.egg
Copying PyYAML-6.0.1-py3.10-linux-aarch64.egg to /home/yeqiang/stable-diffusion-webui/venv/lib/python3.10/site-packages
Adding PyYAML 6.0.1 to easy-install.pth file

Installed /home/yeqiang/stable-diffusion-webui/venv/lib/python3.10/site-packages/PyYAML-6.0.1-py3.10-linux-aarch64.egg
Processing dependencies for PyYAML==6.0.1
Finished processing dependencies for PyYAML==6.0.1

安装typing_extensions

(venv) [root@ceph3 yeqiang]# python3 -m pip install /home/yeqiang/typing_extensions-4.7.1-py3-none-any.whl

Processing ./typing_extensions-4.7.1-py3-none-any.whl

Installing collected packages: typing-extensions

Successfully installed typing-extensions-4.7.1

venv内安装编译好的pytorch

(venv) [root@ceph3 ~]# cd /home/yeqiang/pytorch

(venv) [root@ceph3 pytorch]# export PATH=/usr/local/cmake-3.27.4-linux-aarch64/bin:$PATH

(venv) [root@ceph3 pytorch]# python3 setup.py install

当前成果

pip list显示torch未2.0.0a0,实际上是在v2.0.1分支上编译的。

安装import torch需要的依赖

(venv) [root@ceph3 stable-diffusion-webui]# cd /home/yeqiang/pytorch-libs/

(venv) [root@ceph3 pytorch-libs]# python3 -m pip install *.whl

Processing ./filelock-3.12.3-py3-none-any.whl

Processing ./Jinja2-3.1.2-py3-none-any.whl

Processing ./MarkupSafe-2.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Processing ./mpmath-1.3.0-py3-none-any.whl

Processing ./networkx-3.1-py3-none-any.whl

Processing ./sympy-1.12-py3-none-any.whl

Requirement already satisfied: typing-extensions>=4.7.1 in /home/yeqiang/stable-diffusion-webui/venv/lib/python3.10/site-packages (from filelock==3.12.3) (4.7.1)

Installing collected packages: mpmath, sympy, networkx, MarkupSafe, filelock, Jinja2

Successfully installed Jinja2-3.1.2 MarkupSafe-2.1.3 filelock-3.12.3 mpmath-1.3.0 networkx-3.1 sympy-1.12

[notice] A new release of pip is available: 23.0.1 -> 23.2.1

[notice] To update, run: pip install --upgrade pip

验证venv内的torch+cuda

其他依赖安装待续。

相关推荐
LateBloomer77712 分钟前
FreeRTOS——信号量
笔记·stm32·学习·freertos
legend_jz16 分钟前
【Linux】线程控制
linux·服务器·开发语言·c++·笔记·学习·学习方法
Komorebi.py17 分钟前
【Linux】-学习笔记04
linux·笔记·学习
fengbizhe1 小时前
笔试-笔记2
c++·笔记
余为民同志1 小时前
mini-lsm通关笔记Week2Day4
笔记
墨染风华不染尘1 小时前
python之开发笔记
开发语言·笔记·python
徐霞客3202 小时前
Qt入门1——认识Qt的几个常用头文件和常用函数
开发语言·c++·笔记·qt
澜世2 小时前
2024小迪安全基础入门第三课
网络·笔记·安全·网络安全
Bald Baby2 小时前
JWT的使用
java·笔记·学习·servlet
z千鑫3 小时前
【人工智能】深入理解PyTorch:从0开始完整教程!全文注解
人工智能·pytorch·python·gpt·深度学习·ai编程