Dlib支持CPU指令集编译问题(SSE4.2或者AVX)
The compile script is:
mkdir build
cd build
cmake ../../tools/python -DUSE_SSE2_INSTRUCTIONS=ON
cmake --build . --config Release --target install
cd ..
You forgot the -D. So you have to say, cmake -DUSE_SSE2_INSTRUCTIONS=ON(-DUSE_SSE2_INSTRUCTIONS=0)
cmake ../../tools/python -DUSE_SSE4_INSTRUCTIONS=OFF
cmake ../../tools/python -DUSE_SSE2_INSTRUCTIONS=ON
python setup.py install --yes USE_AVX_INSTRUCTIONS --yes USE_SSE2_INSTRUCTIONS --yes USE_SSE4_INSTRUCTIONS
只安装基于SSE2指令集的Dlib包:
python3. setup.py build --no USE_AVX_INSTRUCTIONS --yes USE_SSE2_INSTRUCTIONS --no USE_SSE4_INSTRUCTIONS
CMake编译用: -DUSE_SSE4_INSTRUCTIONS=OFF
python setup.py build 编译用: --no USE_SSE4_INSTRUCTIONS
for Python 3 support use:
python setup.py install --yes DPYTHON3
I just ran into this and it was because the python module was being compiled with SSE4 instructions but my CPU only supports SSE2. Open tools/python/CMakeLists.txt and edit the line:
set(USE_SSE4_INSTRUCTIONS ON CACHE BOOL "Use SSE4 instructions")
In my case I changed it to:
set(USE_SSE2_INSTRUCTIONS ON CACHE BOOL "Use SSE2 instructions")
版本1(默认版本):
git clone https://github.com/davisking/dlib.git //Clone the code from github
cd dlib
mkdir build
cd build
cmake .. -DDLIB_USE_CUDA= -DUSE_AVX_INSTRUCTIONS= //以AVX指令的方式编译dlib
cmake --build .
cd ..
sudo python setup.py install --yes USE_AVX_INSTRUCTIONS --no DLIB_USE_CUDA
注:最后一步需要等待一些时间。如果使用python3.x版本,最后一步命令python改为python3
版本2(版本1不成功,请试下版本2):
git clone https://github.com/davisking/dlib.git //Clone the code from github
cd dlib
mkdir build
cd build
cmake .. //以默认方式(SSE41指令)编译dlib
cmake --build .
cd ..
sudo python setup.py install
注:最后一步需要等待一些时间。如果使用python3.x版本,最后一步命令python改为python3
Dlib支持CPU指令集编译问题(SSE4.2或者AVX)的更多相关文章
- TensorFlow CPU环境 SSE/AVX/FMA 指令集编译
TensorFlow CPU环境 SSE/AVX/FMA 指令集编译 sess.run()出现如下Warning W tensorflow/core/platform/cpu_feature_guar ...
- 编译TensorFlow CPU指令集优化版
编译TensorFlow CPU指令集优化版 如题,CPU指令集优化版,说的是针对某种特定的CPU型号进行过优化的版本.通常官方给的版本是没有针对特定CPU进行过优化的,有网友称,优化过的版本相比优化 ...
- 常见的CPU指令集介绍
本文摘自网络 一.X86 是微处理器执行的计算机语言指令集,指一个intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合,属于CISC. 1.1.简介 X86指令集是美国Intel ...
- 【基础知识】CPU指令集
计算机指令就是指挥机器工作的指示和命令,程序就是一系列按一定顺序排列的指令,执行程序的过程就是计算机的工作过程.指令集,就是CPU中用来计算和控制计算机系统的一套指令的集合,而每一种新型的CPU在设计 ...
- NDK(2)使用eclipse + ndk开发过程演示,含CPU架构编译
环境linux + eclipse + adt + ndk 1,在ide中配置ndk 下载ndk,在eclipse中配置 2,使用ndk编程 2.1 给项目添加ndk 支持 右键 项目名 --> ...
- CPU 指令集(Instruction Set Architecture, ISA)
本文摘自网络 概念 指令集是存储在CPU内部,对CPU运算进行指导和优化的硬程序,用来引导CPU进行加减运算和控制计算机操作系统的一系列指令集合.拥有这些指令集,CPU就可以更高效地运行.系统所下达的 ...
- CPU指令集
cpu作为一台电脑中的核心,它的作用是无法替代的.而cpu本身只是在块硅晶片上所集成的超大规模的集成电路,集成的晶体管数量可达到上亿个,是由非常先进复杂的制造工艺制造出来的,拥有相当高的科技含量. C ...
- CAS (13) —— CAS 使用Maven Profile支持多环境编译
CAS (13) -- CAS 使用Maven Profile支持多环境编译 摘要 CAS 使用Maven Profile支持多环境编译 版本 tomcat版本: tomcat-8.0.29 jdk版 ...
- 开源库dlib的安装与编译-CMake
前言 最近项目涉及到关于face alignment的实现,了解到目前主要的算法有ERT.SDM.LBF等,其中由于dlib开源库实现了ERT算法,效果也很不错,故开始研究dlib的使用.而使用的第一 ...
随机推荐
- [].slice.call(arguments,1) 个人理解
var arr = []; [] == arr; 假设 var arr = [1,2,3,4,5]; 那么 arr.slice(1,2) == [2]; 通过 slice.call 才能使用call显 ...
- sublimeTest3的安装注册插件
[感谢:https://blog.csdn.net/wxl1555/article/details/69941451 ]1)下载:http://www.sublimetext.com/32)安装:(我 ...
- 【Android-Zxing框架】二维码扫描框区域大小与不同手机分辨率适配问题
Zxing框架进行二维码扫描时候会发现,随着分辨率的增加,扫描框会越来越小,SurfaceView扫描窗口就看不见了,我们可以自己定义扫描窗口的大小,以及适配屏幕问题. Zxing包中有个类Camer ...
- 36. ClustrixDB 使用ClustrixDB加密连接
ClustrixDB使用sha256_password插件支持SSL和身份验证. 一些安全规则要求对存储在数据库中的用户密码进行更强的保护.与默认的mysql_native_password插件相比, ...
- sourceinsight 头文件和函数注释的宏实现
插入文件注释代码实现 macro InsertFileComment() { hbuf = GetCurrentBuf() ln = szName = "pengchao" szC ...
- 初学c++动态联编
先看一下什么是C++联编? 我觉得通俗的讲,用对象来访问类的成员函数就是静态联编. 那什么是动态联编: 一般是通过虚函数实现动态联编. 看一个动态联编的例子: 我比较懒,所以直接粘贴了MOOC视频的图 ...
- 浙江省赛C.Array in the Pocket(贪心+线段树)
题目链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4102 题意: 给出一个长度为n的数组,重排它们,让相同位置的数 ...
- django快速实现完整登录系统,把登陆注册串在一起并增加cookie(六)
1.使用之前创建的项目和应用 mysite3 account 2.使用之前的数据库构造 class User(models.Model): username=models.CharField(max ...
- moveDown()
这里在判断边界时,判断的是 y == HEIGHT - 1. void moveDown(){ //定义变量存放人物下方的坐标 int dx, dy; //当下方没有元素时,直接return if(y ...
- shell脚本编程进阶
在linux shell中,通常我们将一些命令写在一个文件中就算是一个shell脚本了,但是如果需要执行更为复杂的逻辑判断,我们就需要使用流程控制语句来支持了.所谓流程控制既是通过使用流程控制语句对程 ...