Spconv库安装教程

2024-04-23 14:44
文章标签 安装 教程 spconv

本文主要是介绍Spconv库安装教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Spconv库安装教程

    • 环境配置
    • spconv1.2安装
    • 报错
    • 检查是否安装成功

环境配置

  • 操作系统版本:Ubuntu 20.04
  • GPU:RTX4090
  • CUDA版本:11.3
  • CUDNN版本:8.9.2.26
  • Pytorch:1.10.1
  • Python:3.8
  • gcc版本:9.4.0(g++4.8.5,c++14需要g++5.2以上)
  • cmake版本:3.29.2 (3.13.2及以上)
  • github链接:GitHub - traveller59/spconv: Spatial Sparse Convolution in PyTorch

在开始安装之前,需要确定自己的系统是否已经安装好cuda,和cudnn等。确认cuda版本的方法,ctrl+t打开你的terminal,输入:

nvcc -V

​注意cudnn一定要与cuda版本对应,否则安装时会报错.cudnn下载链接

spconv1.2安装

  1. 克隆代码
git clone https://github.com/traveller59/spconv.git --recursive
  1. 安装依赖
sudo apt-get install libboost-all-dev
  1. 运行
python setup.py bdist_wheel
cd ./dist
pip install spconv-2.3.6-py3-none-any.whl

报错

  1. 安装过程中可能出现的错误:
    ①No CMAKE_CUDA_COMPILER could be found.
可能会出现如下错误:
/home/sdb1/zyan/lulu/lib/python3.7/site-packages/setuptools/distutils_patch.py:26: UserWarning: Distutils was imported before Setuptools. This usage is discouraged and may exhibit undesirable behaviors or errors. Please use Setuptools' objects directly or at least import Setuptools first."Distutils was imported before Setuptools. This usage is discouraged "
running bdist_wheel
running build
running build_py
running build_ext
Release
|||||CMAKE ARGS||||| ['-DCMAKE_PREFIX_PATH=/home/sdb1/zyan/lulu/lib/python3.7/site-packages/torch', '-DPYBIND11_PYTHON_VERSION=3.7', '-DSPCONV_BuildTests=OFF', '-DPYTORCH_VERSION=10600', '-DCMAKE_CUDA_FLAGS="--expt-relaxed-constexpr" -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/home/sdb1/zyan/lulu/spconv-1.2/build/lib.linux-x86_64-3.7/spconv', '-DCMAKE_BUILD_TYPE=Release']
-- The CUDA compiler identification is unknown
CMake Error at CMakeLists.txt:6 (project):No CMAKE_CUDA_COMPILER could be found.Tell CMake where to find the compiler by setting either the environmentvariable "CUDACXX" or the CMake cache entry CMAKE_CUDA_COMPILER to the fullpath to the compiler, or to the compiler name if it is in the PATH.
-- Configuring incomplete, errors occurred!
See also "/home/sdb1/zyan/lulu/spconv-1.2/build/temp.linux-x86_64-3.7/CMakeFiles/CMakeOutput.log".
See also "/home/sdb1/zyan/lulu/spconv-1.2/build/temp.linux-x86_64-3.7/CMakeFiles/CMakeError.log".
Traceback (most recent call last):

解决方法:问题还是cuda和cudnn版本不对应,从上文链接中下载cudnn对应版本(建议选择cuDNN Library for Linux (x86_64)类型)

cd 下载(下载cudnn所在的文件夹)
tar -xvf cudnn-10.0-linux-x64-v7.3.1.20.tgz(换成你的文件名字)
执行以下命令(路径是自己安装cuda的路径,根据自己的更改就好)sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
再pip安装即可。

②Found cuDNN: v?

#可能出现以下错误
running build
running build_py
running build_ext
Release
|||||CMAKE ARGS||||| ['-DCMAKE_PREFIX_PATH=/home/zjy/anaconda3/envs/pcdet/lib/python3.6/site-packages/torch', '-DPYBIND11_PYTHON_VERSION=3.6', '-DSPCONV_BuildTests=OFF', '-DPYTORCH_VERSION=10800', '-DCMAKE_CUDA_FLAGS="--expt-relaxed-constexpr" -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/home/zjy/openpcdet/spconv-master/build/lib.linux-x86_64-3.6/spconv', '-DCMAKE_BUILD_TYPE=Release']
-- Caffe2: CUDA detected: 11.1
-- Caffe2: CUDA nvcc is: /usr/local/cuda-11.1/bin/nvcc
-- Caffe2: CUDA toolkit directory: /usr/local/cuda-11.1
-- Caffe2: Header version is: 11.1
-- Found CUDNN: /usr/local/cuda-11.1/lib64/libcudnn.so  
-- Found cuDNN: v?  (include: /usr/local/cuda-11.1/include, library: /usr/local/cuda-11.1/lib64/libcudnn.so)
CMake Error at /home/zjy/anaconda3/envs/pcdet/lib/python3.6/site-packages/torch/share/cmake/Caffe2/public/cuda.cmake:174 (message):

解决方法:有些cudnn的版本文件不在cudnn.h里,而在cudnn_version.h里,需要将cudnn_version.h文件复制过去

sudo cp cuda/include/cudnn_version.h /usr/local/cuda/include/
然后再pip安装即可

检查是否安装成功

python
import spconv
可以导入则安装成功。

这篇关于Spconv库安装教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/929085

相关文章

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

MySQL Workbench 安装教程(保姆级)

《MySQLWorkbench安装教程(保姆级)》MySQLWorkbench是一款强大的数据库设计和管理工具,本文主要介绍了MySQLWorkbench安装教程,文中通过图文介绍的非常详细,对大... 目录前言:详细步骤:一、检查安装的数据库版本二、在官网下载对应的mysql Workbench版本,要是

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

Linux安装MySQL的教程

《Linux安装MySQL的教程》:本文主要介绍Linux安装MySQL的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux安装mysql1.Mysql官网2.我的存放路径3.解压mysql文件到当前目录4.重命名一下5.创建mysql用户组和用户并修

pip无法安装osgeo失败的问题解决

《pip无法安装osgeo失败的问题解决》本文主要介绍了pip无法安装osgeo失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 进入官方提供的扩展包下载网站寻找版本适配的whl文件注意:要选择cp(python版本)和你py

Android App安装列表获取方法(实践方案)

《AndroidApp安装列表获取方法(实践方案)》文章介绍了Android11及以上版本获取应用列表的方案调整,包括权限配置、白名单配置和action配置三种方式,并提供了相应的Java和Kotl... 目录前言实现方案         方案概述一、 androidManifest 三种配置方式

最新Spring Security实战教程之Spring Security安全框架指南

《最新SpringSecurity实战教程之SpringSecurity安全框架指南》SpringSecurity是Spring生态系统中的核心组件,提供认证、授权和防护机制,以保护应用免受各种安... 目录前言什么是Spring Security?同类框架对比Spring Security典型应用场景传统

最新Spring Security实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)

《最新SpringSecurity实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)》本章节介绍了如何通过SpringSecurity实现从配置自定义登录页面、表单登录处理逻辑的配置,并简单模拟... 目录前言改造准备开始登录页改造自定义用户名密码登陆成功失败跳转问题自定义登出前后端分离适配方案结语前言

Centos环境下Tomcat虚拟主机配置详细教程

《Centos环境下Tomcat虚拟主机配置详细教程》这篇文章主要讲的是在CentOS系统上,如何一步步配置Tomcat的虚拟主机,内容很简单,从目录准备到配置文件修改,再到重启和测试,手把手带你搞定... 目录1. 准备虚拟主机的目录和内容创建目录添加测试文件2. 修改 Tomcat 的 server.X