詳解Windows下源碼編譯PaddlePaddle
Windows 下從源碼編譯 PaddlePaddle
1.環(huán)境準(zhǔn)備
- Windows 10 專業(yè)版 (64bit)
- Python 版本 Python 3.9.16(64 bit)
- Visual Studio2022 專業(yè)版
1.1 cmake
cmake --version
cmake version 3.25.1-msvc1 CMake suite maintained and supported by Kitware (kitware.com/cmake).
1.2 python
(p2) PS D:\Paddle> python --version Python 3.9.16
1.3 cuda
(p2) PS D:\Paddle> nvidia-smi Wed Apr 5 17:06:19 2023 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 516.94 Driver Version: 516.94 CUDA Version: 11.7 |
1.4 python包
(p2) PS D:\Paddle> pip install numpy protobuf wheel ninja Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple Requirement already satisfied: numpy in i:\miniconda3\envs\p2\lib\site-packages (1.23.2) Requirement already satisfied: protobuf in i:\miniconda3\envs\p2\lib\site-packages (3.20.3) Requirement already satisfied: wheel in i:\miniconda3\envs\p2\lib\site-packages (0.38.4) Requirement already satisfied: ninja in i:\miniconda3\envs\p2\lib\site-packages (1.11.1)
1.5 創(chuàng)建編譯文件夾
mkdir D:\workspace && cd /d D:\workspace git clone https://github.com/PaddlePaddle/Paddle.git cd Paddle
1.6 啟用visual studio終端
********************************************************************** ** Visual Studio 2022 Developer Command Prompt v17.5.3 ** Copyright (c) 2022 Microsoft Corporation ********************************************************************** C:\Program Files\Microsoft Visual Studio\2022\Professional>d: D:\>cd Paddle D:\Paddle>
1.7 開始編譯
先編譯CPU版本吧,因?yàn)镚PU的cuda和cudnn環(huán)境變量不會(huì)寫(偷懶用conda安裝的)
cmake .. -GNinja -DWITH_GPU=OFF -DWITH_UNITY_BUILD=ON ninja
編譯過程中會(huì)下載東西,所以建議不要斷網(wǎng)。 此過程中:
- 特別費(fèi)CPU,我的到了100%,風(fēng)扇呼呼的;
- 內(nèi)存使用不大,10GB左右沒變過;
- 不斷使用git下載,所以網(wǎng)速要好。


1.8 docker編譯
docker run --name paddle-test -v 123456:/paddle --network=host -it registry.baidubce.com/paddlepaddle/paddle:latest-dev /bin/bash
3 times.
CMake Error at /paddle/build/third_party/dlpack/tmp/extern_dlpack-gitclone.cmake:31 (message):
Failed to clone repository: 'https://github.com/dmlc/dlpack.git'
CMakeFiles/extern_dlpack.dir/build.make:91: recipe for target 'third_party/dlpack/src/extern_dlpack-stamp/extern_dlpack-download' failed
make[2]: *** [third_party/dlpack/src/extern_dlpack-stamp/extern_dlpack-download] Error 1
CMakeFiles/Makefile2:4791: recipe for target 'CMakeFiles/extern_dlpack.dir/all' failed
make[1]: *** [CMakeFiles/extern_dlpack.dir/all] Error 2
fatal: unable to access 'https://github.com/JuliaStrings/utf8proc.git/': Failed to connect to github.com port 443: Connection refused
-- Had to git clone more than once:
3 times.
CMake Error at /paddle/build/third_party/utf8proc/tmp/extern_utf8proc-gitclone.cmake:31 (message):
Failed to clone repository: 'https://github.com/JuliaStrings/utf8proc.git'
CMakeFiles/extern_utf8proc.dir/build.make:90: recipe for target 'third_party/utf8proc/src/extern_utf8proc-stamp/extern_utf8proc-download' failed
make[2]: *** [third_party/utf8proc/src/extern_utf8proc-stamp/extern_utf8proc-download] Error 1
CMakeFiles/Makefile2:4818: recipe for target 'CMakeFiles/extern_utf8proc.dir/all' failed以上就是詳解Windows下源碼編譯PaddlePaddle的詳細(xì)內(nèi)容,更多關(guān)于Windows編譯PaddlePaddle的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
使用Pandas實(shí)現(xiàn)清洗客戶編碼異常數(shù)據(jù)
在不同行業(yè)中,我們經(jīng)常會(huì)遇到一個(gè)麻煩的問題:數(shù)據(jù)清洗,尤其是當(dāng)我們需要處理客戶編碼異常數(shù)據(jù)時(shí),下面小編就來和大家分享一下常用的解決辦法吧2023-07-07
Python實(shí)現(xiàn)獲取前100組勾股數(shù)的方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)獲取前100組勾股數(shù)的方法,涉及Python數(shù)值計(jì)算與判斷相關(guān)操作技巧,需要的朋友可以參考下2018-05-05
python網(wǎng)絡(luò)編程學(xué)習(xí)筆記(八):XML生成與解析(DOM、ElementTree)
DOM是Document Object Model的簡(jiǎn)稱,XML 文檔的高級(jí)樹型表示。該模型并非只針對(duì) Python,而是一種普通XML 模型。Python 的 DOM 包是基于 SAX 構(gòu)建的,并且包括在 Python 2.0 的標(biāo)準(zhǔn) XML 支持里2014-06-06
Python循環(huán)語(yǔ)句之break與continue的用法
這篇文章主要介紹了Python循環(huán)語(yǔ)句之break與continue的用法,是Python入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-10-10
python PIL/cv2/base64相互轉(zhuǎn)換實(shí)例
今天小編就為大家分享一篇python PIL/cv2/base64相互轉(zhuǎn)換實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-01-01

