日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > c/c++ >内容正文

c/c++

安装 PyTorch C++ API libtorch 及一个最小例子

發(fā)布時(shí)間:2025/3/8 c/c++ 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 安装 PyTorch C++ API libtorch 及一个最小例子 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

安裝 PyTorch C++ API libtorch 及一個(gè)最小例子

翻譯自:https://pytorch.org/cppdocs/installing.html

我們提供依賴 PyTorch 所需的所有頭文件、庫(kù)和 CMake 配置文件的二進(jìn)制分發(fā)版。我們將此發(fā)行版稱為 LibTorch,您可以在我們的網(wǎng)站上下載包含最新 LibTorch 發(fā)行版的 ZIP 檔案。下面是編寫(xiě)一個(gè)依賴 LibTorch 并使用torch::TensorPyTorch C++ API 附帶的類(lèi)的最小應(yīng)用程序的小示例。

安裝

先安裝預(yù)編譯的 libtorch :

wget https://download.pytorch.org/libtorch/nightly/cpu/libtorch-shared-with-deps-latest.zip unzip libtorch-shared-with-deps-latest.zip

該鏈接僅支持 CPU,若要支持 GPU,請(qǐng)到官網(wǎng)找到對(duì)應(yīng)版本

直接解壓,就可以了。

最小例子

接下來(lái),我們可以編寫(xiě)一個(gè)最小的 CMake 構(gòu)建配置來(lái)開(kāi)發(fā)一個(gè)依賴 LibTorch 的小型應(yīng)用程序。CMake 不是使用 LibTorch 的必須要求,但它是我們推薦的構(gòu)建系統(tǒng),并在將來(lái)會(huì)得到很好的支持。最基本的 CMakeLists.txt 文件可能如下所示:

cmake_minimum_required(VERSION 3.0 FATAL_ERROR) project(example-app)find_package(Torch REQUIRED) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TORCH_CXX_FLAGS}")add_executable(example-app example-app.cpp) target_link_libraries(example-app "${TORCH_LIBRARIES}") set_property(TARGET example-app PROPERTY CXX_STANDARD 14)# 以下代碼建議在Windows上使用 if (MSVC)file(GLOB TORCH_DLLS "${TORCH_INSTALL_PREFIX}/lib/*.dll")add_custom_command(TARGET example-appPOST_BUILDCOMMAND ${CMAKE_COMMAND} -E copy_if_different${TORCH_DLLS}$<TARGET_FILE_DIR:example-app>) endif (MSVC)

我們示例的實(shí)現(xiàn)將簡(jiǎn)單地創(chuàng)建一個(gè)新的 torch::Tensor 并打印它:

#include <torch/torch.h> #include <iostream>int main() {torch::Tensor tensor = torch::rand({2, 3});std::cout << tensor << std::endl; }

雖然您可以包含更多細(xì)粒度的頭文件以僅訪問(wèn) PyTorch C++ API 的一部分,但包括torch/torch.h是包含其大部分功能的最可靠的方式。

最后一步是構(gòu)建應(yīng)用程序。為此,假設(shè)我們的示例目錄如下所示:

example-app/CMakeLists.txtexample-app.cpp

我們現(xiàn)在可以運(yùn)行以下命令從example-app/文件夾中構(gòu)建應(yīng)用程序 :

mkdir build cd build cmake -DCMAKE_PREFIX_PATH=/absolute/path/to/libtorch .. cmake --build . --config Release

其中 /absolute/path/to/libtorch 應(yīng)該是解壓后的 libTorch 發(fā)行版的絕對(duì) (!) 路徑。如果 PyTorch 是通過(guò) conda 或 pip 安裝的,則可以使用 torch.utils.cmake_prefix_path 變量查詢CMAKE_PREFIX_PATH(譯者注:這里是指如果本機(jī) pip 或 conda 安裝過(guò) PyTorch,那可以不用再裝 libtorch,因?yàn)樵?PyTorch 中是有的)。在這種情況下,CMake 配置步驟將如下所示:

cmake -DCMAKE_PREFIX_PATH=`python -c 'import torch;print(torch.utils.cmake_prefix_path)'`

如果一切順利,整個(gè)過(guò)程及輸出將會(huì)是這樣:

root@4b5a67132e81:/example-app# mkdir build root@4b5a67132e81:/example-app# cd build root@4b5a67132e81:/example-app/build# cmake -DCMAKE_PREFIX_PATH=/path/to/libtorch .. -- The C compiler identification is GNU 5.4.0 -- The CXX compiler identification is GNU 5.4.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE -- Configuring done -- Generating done -- Build files have been written to: /example-app/build root@4b5a67132e81:/example-app/build# cmake --build . --config Release Scanning dependencies of target example-app [ 50%] Building CXX object CMakeFiles/example-app.dir/example-app.cpp.o [100%] Linking CXX executable example-app [100%] Built target example-app

執(zhí)行 example-app 在 build 文件夾中找到的結(jié)果二進(jìn)制文件現(xiàn)在應(yīng)該可以打印張量(具體輸出受隨機(jī)性影響):

root@4b5a67132e81:/example-app/build# ./example-app 0.2063 0.6593 0.0866 0.0796 0.5841 0.1569 [ Variable[CPUFloatType]{2,3} ]

https://pytorch.org/cppdocs/installing.html

總結(jié)

以上是生活随笔為你收集整理的安装 PyTorch C++ API libtorch 及一个最小例子的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 大度亲吻原声视频在线观看 | 中文字幕在线视频精品 | 超碰人人干人人 | 色婷婷av在线 | 91久久精品日日躁夜夜躁欧美 | 亚洲成人黄色片 | 婷婷综合在线视频 | 欧美精品在线一区二区三区 | 梦梦电影免费高清在线观看 | 91资源在线播放 | 99中文字幕| 成年人视频在线免费观看 | 成年人黄色免费网站 | 国产一区二区h | 黄色在线观看免费视频 | 夜夜爽爽 | 在线观看国产 | 男人狂揉女人下部视频 | 国产高清一级片 | 亚洲日本国产精品 | 97人人澡 | 91麻豆精品国产91久久久久久 | 国产精品99久久久久久人 | 久久夜色精品国产欧美乱 | 中文字幕在线免费 | 日韩xxx视频 | 亚洲视频五区 | 亚洲高清无码久久 | 人人爽人人爽人人爽 | 欧美电影一区 | 逼逼爱插插网站 | av制服丝袜 | 日韩精品一区二区三区在线视频 | 污污网站在线观看 | 久久精品3| 色综合综合 | 91最新在线 | 国产图片区 | 麻豆 美女 丝袜 人妻 中文 | 爽妇网国产精品 | 国产又粗又硬又黄的视频 | 激情www| 国产www | 欧美乱大交xxxxx | 国产乱淫av片免费 | 六月丁香激情 | 丰满人妻在公车被猛烈进入电影 | 亚洲欧美日韩第一页 | 外国一级片 | 久久精品tv | 国产性猛交╳xxx乱大交 | 久久99国产综合精品免费 | 中文字幕在线一区 | 国产一区二区观看 | 男同互操gay射视频在线看 | 精品人妻天天爽夜夜爽视频 | 青青视频在线播放 | 色妞视频 | 免费福利小视频 | 午夜看片在线观看 | 欧美一区二区三区免费在线观看 | 福利视频91| 思思99精品视频在线观看 | 欧美一区二区激情 | 丁香六月色婷婷 | 伊人手机在线视频 | 亚洲国产91 | 91禁动漫在线 | 精品国产乱码一区二区三 | 国产精品178页| 欧美三日本三级少妇三99 | 中文字幕不卡在线观看 | 国内激情自拍 | 久久av红桃一区二区小说 | 俄罗斯videodesxo极品 | 欧美aaaaaa| 国产精品一区二区三区线羞羞网站 | av免费视屏| 日韩精品人妻中文字幕有码 | 欧美在线一区二区三区 | 日韩午夜精品视频 | 欧美极品jizzhd欧美仙踪林 | 色香av | 超碰在 | 欧美在线一级 | 伊人网综合视频 | 男女做爰真人视频直播 | 能看av的网站 | 在线看a网站 | 综合网伊人 | 日本人三级 | 亚洲天堂精品一区 | 亚洲色图影院 | 91亚洲精品久久久蜜桃网站 | 顶级尤物极品女神福利视频 | av日韩av | 欧美日韩亚洲系列 | 一级毛片黄色 | 亚洲粉嫩|