如何使用 GTX750 或 1050 顯卡安裝 CUDA11+

来源:https://www.cnblogs.com/zerofc/archive/2023/11/08/17817697.html
-Advertisement-
Play Games

前言 由於相容性問題,使得我們若想用較新版本的 PyTorch,通過 GPU 方式訓練模型,也得更換較新版本得 CUDA 工具包。然而 CUDA 的版本又與電腦顯卡的驅動程式版本關聯,如果是低版本的顯卡驅動程式安裝 CUDA11 及以上肯定會失敗。 比如 GTX750Ti 或 GTX1050Ti,出 ...


前言

        由於相容性問題,使得我們若想用較新版本的 PyTorch,通過 GPU 方式訓練模型,也得更換較新版本得 CUDA 工具包。然而 CUDA 的版本又與電腦顯卡的驅動程式版本關聯,如果是低版本的顯卡驅動程式安裝 CUDA11 及以上肯定會失敗。

        比如 GTX750Ti 或 GTX1050Ti,出廠的驅動程式版本在 450 以下,也就只能裝 CUDA9 和 CUDA10 之類的版本。那麼有什麼方法用前面這兩種顯卡安裝 CUDA11 以上的版本呢?下麵就通過更新顯卡驅動程式來完成這一任務,其中包括查看版本,各種版本的關聯,如何下載安裝等白話文方式演示。

 

查看顯卡驅動版本

        這裡 強調一下,要安裝 CUDA 的條件是電腦有獨立顯卡,並且顯卡是英偉達也就是 N 卡。保證這一點我們可以通過桌面右鍵進入 “NVIDIA 控制面板” 和 "nvidia-smi.exe" 命令的兩種方式查看顯卡的驅動程式版本號。

NVIDIA 控制面板

        點擊 “系統信息”,其中 “顯示” 下的 “項目” 就是顯卡型號,“細節” 里主要查看 “驅動程式版本” 和 “驅動器類型”,後面要根據顯卡型號和驅動器類型下載新版本的驅動程式。也可以在 “組件” 的 “3D 設置” 下查看 “NVCUDA64.DLL”,這就是當前驅動支持的 CUDA 最大版本。

 

NVIDIA-SMI

        這個英偉達顯卡在 Windows 下的一個監控工具,通過 cmd 可以不僅可以查看當前顯卡的基本信息,也能查看 GPU 實時的運行情況。通過 cmd 輸入 “nvidia-smi” 查看最新信息, "nvidia-smi -l 2" 查看實時信息 (2 就是 2 秒刷新一次),工具的參數上面圖片有簡單標註。

 

如果 cmd 輸入後找不到該命令,需要把 “C:\Program Files\NVIDIA Corporation\NVSMI” (監控工具預設位置) 添加到 "path" 的環境變數中。

 

顯卡驅動下載

        可以進入英偉達網站 www.nvidia.com/Download/Find.aspx?lang=en-us,選擇顯卡型號,特別註意 "Windows Driver Type",這個就是上面查看的 “驅動器類型”。一般以前出廠 windows10 電腦都是 Standard,切記一定要根據驅動器類型下載,不然後面安裝顯卡驅動會報以下錯誤。

This DCH driver package is not compatible with the currently installed version of Windows. 
This system is configured to require a Standard driver package. The correct driver 
can be downloaded from by selecting the "Standard" option under the "Windows Driver Type" menu. 

 

        從上面 GTX 750 Ti 的標準類型搜索結果看,最新的版本是 472.12,而 DCH 有 500 以上的更新的版本。如果一定要用相當新的版本,官網也提供了將標準驅動類型修改為 DCH 的,但 win 系統版本有一個限制,具體可以在網上查找這裡看以後再更新說明。不過呢 472 的驅動程式版本其實完全夠用,可以搭配最大支持 CUDA11.0 到 CUDA12.0 之間的版本,也就意味著我們可以用 1.10 上下的 pytorch 的 cu 版本,現在最新也才 2 點幾,像之前火熱的 AI 繪畫 "stable diffusion" 和 AI 音色克隆 “so-vits-svc” 就可以搭起來跑了。

 

CUDA 下載

        已經更新完顯卡驅動程式後,再重覆前面查看版本號方式。看到驅動程式版本號和最大支持 CUDA 版本,記錄下來。然後進入官網的 CUDA Release Notes,也可以查看到驅動程式版本與各種 CUDA 版本的對應關係。

 

上面的 “CUDA Toolkit” 下 CUDA 11.4 有五個版本,其中帶 Update 的是正式版發佈後的迭代版本,依次是 11.4.1 一直到 11.4.4,最右邊就是 WIN 的最低驅動程式版本。根據我們查詢的 472.12,當然 Updae4 也可以,最好按他們要求選 11.4.2 或以下。然後進入英偉達開發者網 developer.nvidia.com/cuda-toolkit-archive,選擇後下載,以及 CUDNN 也要下載再依次安裝。(這個在前面文章有介紹此處就略過了)

 

 

PyTorch 版本下載

       前面把 CUDA 和 CUDNN 安裝配置好之後,環境變數會自動添加,然後通過 cmd 輸入 “nvcc -V” 查看 到 CUDA 的版本表示安裝無誤,接著就是去 download.pytorch.org/whl/torch_stable.html 查看 CUDA 與 pytorch 對應版本了,也可以直接下載 whl。cu 表 CUDA 版本,cpu 表 CPU 版本,由於沒有 11.4 的我們可以選擇 cu113 的搜索,然後挑選系統版本,Python 版本。

 

後面如果需要 torchaudio、torchtext 等庫,也一定要找相對應版本的,不然不是無法用 gpu 運行就是版本不相容,pip 自動把 torch 調高或調低,甚至直接改成 cpu 版,而有時候就只是一個小版本都不支持,這一點很惱火。

GPU 運行

        驅動、工具包、依賴庫等一切準備好後,在項目運行前,可以通過以下代碼檢測一下 gpu 是否可用。其實這裡想說一下,我感覺是在小模型訓練時,GPU 加速並沒有比 CPU 快多少,但是有一個好處。如果是用 CPU 做訓練,跑起來後配置一般的電腦可能就動不了。而如果丟給 GPU,負載就給到他了,我可以再繼續調其他代碼或放放音樂啥,只要不玩游戲或做什麼 3D 預覽渲染啥的。

import torch

print(torch.cuda.is_available())
print(torch.__version__)
exit()

 

 

個人網站:www.zerofc.cn 公眾號:ZEROFC_DEV QQ交流群:515937120 QQ:2652364582 頭條號:1637769351151619 B站:286666708 大魚號:北橋蘇
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • docker部署是主流的部署方式,極大的方便了開發部署環境,保持了環境的統一,也是實現自動化部署的前提。 1 項目的目錄結構 dist: 使用build打包命令,生成的打包目錄 npm run build : 打包項目命令 docker: 存放docker容器需要修改的配置目錄,比如 nginx配置 ...
  • 目錄0. 前言1. Collection介面1.1. List介面1.1.1. ArrayList1.1.2. LinkedList1.1.3. Vector1.1.4. Stack1.2. Set介面1.2.1. HashSet1.2.2. LinkedHashSet1.2.3. TreeSet1 ...
  • Python可以用於資料庫應用程式。 其中最流行的資料庫之一是MySQL。 MySQL資料庫 為了能夠在本教程中嘗試代碼示例,您應該在電腦上安裝MySQL。 您可以在 MySQL官方網站 下載MySQL資料庫。 安裝MySQL驅動程式 Python需要一個MySQL驅動程式來訪問MySQL資料庫。 ...
  • Go 介面:nil介面為什麼不等於nil? 本文主要內容:深入瞭解介面類型的運行時表示層。 目錄Go 介面:nil介面為什麼不等於nil?一、Go 介面的地位二、介面的靜態特性與動態特性2.1 介面的靜態特性與動態特性介紹2.2 “動靜皆備”的特性的好處三、nil error 值 != nil四、接 ...
  • 1、visio studio2019安裝及使用 1)下載地址:https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/ 2)選擇社區版進行下載 3)安裝 環境:win10-X64 ①勾選使用C++桌面開發 ②除預設選項外,勾選適用於 ...
  • 提起 jackson,在日常使用中,由於涉及到各種序列化和反序列化的處理,就不能不提 註解,瞭解註解的常用方式可以極大地方便我們處理序列化,今天分享一些在使用 jackson 中涉及到的註解。 目錄1.@JsonProperty - 欄位命名2.@JsonPropertyOrder - 欄位序列化順 ...
  • 使用腳本進行下載的需求很常見,可以是常規文件、web頁面、Amazon S3和其他資源。Python 提供了很多模塊從 web 下載文件。下麵介紹 一、使用 requests requests 模塊是模仿網頁請求的形式從一個URL下載文件 示例代碼: import requests url = 'x ...
  • 字元串操作 1.字元串的翻轉 # 方式一 s = 'hello world' print(s[::-1) # 方式二 from functools import reduce print(reduce(lambda x,y:y+x, s)) 2.判斷字元串是否是迴文 利用字元串翻轉操作可以查看字元串 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...