龙芯loongarch64服务器编译安装pytorch

本文详细介绍了在龙芯LoongArch64服务器上编译安装PyTorch的步骤,包括环境准备、源码拉取、编译过程以及生成wheel安装包的方法。在编译过程中,特别提到需要Python 3.8.1+、C++17编译器,以及处理CPU构建时的特定问题。

前言

        PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序,它是一个基于Python的可续计算包。在通过龙芯开源仓库下载依赖包后,执行import torch后,发现其中安装的"pytorch"就无法正常使用,这里就演示下pytorch整个编译流程。

1、环境准备

如果要从源代码安装,则需要:

  • Python 3.8 或更高版本(对于 Linux,需要 Python 3.8.1+)
  • 完全支持 C++17 的编译器,例如 clang 或 gcc(特别是对于 aarch64、gcc 9.4.0 或更高版本是必需的),实际测试系统本身自动gcc的就可以正常编译。

Python版本默认安装的是python3.7,可以看我之前的文章龙芯loongarch64服务器编译安装3.8版本的Python

系统相关依赖包下载安装:

yum install ninja*

yum install cmake

yum install gcc*

2、源码拉取

目前使用Pytorch 2.1

<think> 我们被要求提供在龙芯loongarch64服务器编译安装gcc-8.3.0的方法。根据引用[1]提供的步骤,结合一般编译gcc的流程,整理如下: 1. **环境准备**: - 下载源码包:从龙芯开源社区网站下载LoongArch GCC 8.3交叉工具链的源码包,例如`loongson-gnu-toolchain-8.3-src-loongarch64-linux-gnu-rc1.2.tar`。 - 安装必要的依赖:编译gcc需要一些依赖包,如GMP、MPFR、MPC等。如果源码包中已经包含这些依赖(通常gcc的源码包会包含),则无需单独下载。否则,需要先安装这些依赖。 2. **解压压缩包**: ```bash tar -xvf loongson-gnu-toolchain-8.3-src-loongarch64-linux-gnu-rc1.2.tar ``` 3. **进入源码目录并创建构建目录**: ```bash cd loongson-gnu-toolchain-8.3-src-loongarch64-linux-gnu-rc1.2 mkdir build cd build ``` 4. **配置编译选项**: 使用`../configure`命令进行配置,可以指定安装路径(如`--prefix=/path/to/install`)和其他选项。例如: ```bash ../configure --prefix=/usr/local/gcc-8.3.0 --enable-languages=c,c++ --disable-multilib ``` 说明: - `--prefix`:指定安装目录。 - `--enable-languages`:指定要编译的语言,这里选择c和c++。 - `--disable-multilib`:禁用多库支持(如果不需要32位库)。 5. **编译**: 使用`make`命令进行编译,可以使用`-j`参数指定并行编译的线程数以加快速度(根据服务器CPU核心数设定): ```bash make -j8 ``` 6. **安装**: 编译成功后,以root权限安装到指定目录: ```bash sudo make install ``` 7. **配置环境变量**: 将新安装的gcc路径添加到环境变量中,例如修改`/etc/profile`文件,在末尾添加: ```bash export PATH=/usr/local/gcc-8.3.0/bin:$PATH export LD_LIBRARY_PATH=/usr/local/gcc-8.3.0/lib64:$LD_LIBRARY_PATH ``` 然后使配置生效: ```bash source /etc/profile ``` 8. **验证安装**: ```bash gcc --version ``` 应该显示gcc 8.3.0。 注意:编译gcc是一个耗时且资源消耗大的过程,请确保服务器有足够的内存和CPU资源。另外,如果编译过程中出现依赖缺失,需要根据错误提示安装相应的开发包。 引用[1]中提到在编译其他依赖包时出现奇怪问题,因此建议在编译前确保系统环境干净,并安装必要的构建工具(如make, bison, flex等)和库开发包。 §§相关问题§§ 1. 在龙芯loongarch64服务器编译gcc时遇到依赖问题如何解决? 2. 如何卸载系统自带的gcc并替换为自编译的gcc? 3. 编译gcc时如何优化编译参数以提高性能? </think> 以下是在龙芯loongarch64服务器编译安装gcc-8.3.0的详细步骤,基于龙芯官方文档整理: ### 编译安装步骤 1. **环境准备** - 安装编译依赖: ```bash sudo apt-get install build-essential m4 flex bison \ libgmp-dev libmpfr-dev libmpc-dev zlib1g-dev ``` - 下载源码包(从龙芯开源社区): ```bash wget https://mirrors.loongnix.cn/toolchain/gcc/releases/gcc-8.3.0/loongson-gnu-toolchain-8.3-src-loongarch64-linux-gnu-rc1.2.tar ``` 2. **解压源码** ```bash tar -xvf loongson-gnu-toolchain-8.3-src-loongarch64-linux-gnu-rc1.2.tar cd loongson-gnu-toolchain-8.3-src ``` 3. **配置编译选项** ```bash mkdir build && cd build ../configure \ --prefix=/usr/local/gcc-8.3.0 \ --enable-languages=c,c++ \ --disable-multilib \ --with-arch=loongarch64 \ --with-abi=lp64 ``` *参数说明:* - `--prefix`:指定安装路径 - `--enable-languages`:选择编译语言 - `--with-arch`:指定龙芯架构[^1] 4. **编译安装** ```bash make -j$(nproc) # 使用所有CPU核心编译 sudo make install # 需要root权限 ``` > 编译过程约需1-3小时(取决于硬件性能) 5. **环境配置** ```bash echo 'export PATH=/usr/local/gcc-8.3.0/bin:$PATH' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=/usr/local/gcc-8.3.0/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc source ~/.bashrc ``` 6. **验证安装** ```bash gcc-8.3.0 --version # 应输出:gcc (Loongson-8.3.0) 8.3.0 ``` ### 注意事项 1. 编译过程需要**至少8GB内存**,内存不足可能导致编译失败 2. 建议使用**tmpfs**加速编译: ```bash mount -t tmpfs -o size=10G tmpfs /path/to/build_dir ``` 3. 替换系统GCC需谨慎,建议通过`update-alternatives`管理多版本: ```bash sudo update-alternatives --install /usr/bin/gcc gcc /usr/local/gcc-8.3.0/bin/gcc 50 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

番茄小能手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值