Skip to content

Commit 81ac08e

Browse files
committed
support GeForce RTX on Windows
1 parent 621ecbf commit 81ac08e

File tree

16 files changed

+60
-2107
lines changed

16 files changed

+60
-2107
lines changed

3rdparty/include/cudnn.h

Lines changed: 0 additions & 2060 deletions
This file was deleted.

3rdparty/lib/cudnn.lib

2.86 KB
Binary file not shown.

CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# CMakeList.txt.pl
2+
# CMakeList.txt
33
# YOLOv3_SpringEdition
44
#
55
# Created by kimbomm on 2018. 04. 01...
@@ -19,6 +19,7 @@ LIST(APPEND CUDA_NVCC_FLAGS -gencode arch=compute_52,code=sm_52) #for maxwell
1919
LIST(APPEND CUDA_NVCC_FLAGS -gencode arch=compute_60,code=sm_60) #for pascal
2020
LIST(APPEND CUDA_NVCC_FLAGS -gencode arch=compute_61,code=sm_61) #for pascal
2121
LIST(APPEND CUDA_NVCC_FLAGS -gencode arch=compute_62,code=sm_62) #for jetson tx2
22+
LIST(APPEND CUDA_NVCC_FLAGS -gencode arch=compute_75,code=sm_75) #for turing
2223
#https://developer.nvidia.com/cuda-gpus
2324

2425
add_definitions(-DGPU)

README.md

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,6 @@
11
YOLOv3_SpringEdition <img src="https://i.imgur.com/oYejfWp.png" title="Windows8" width="48">
22
--------------------------------------------------------------------------------------------
33

4-
5-
작성중....
6-
VS2017
7-
LINUX
8-
기타 등등...
9-
104
<img src="https://i.imgur.com/ElCyyzT.png" title="Windows8" width="48"><img src="https://i.imgur.com/O5bye0l.png" width="48"><img src="https://i.imgur.com/kmfOMZz.png" width="48"><img src="https://i.imgur.com/6OT8yM9.png" width="48">
115

126
#### YOLOv3 C++ Windows and Linux interface library. (Train,Detect both)
@@ -150,21 +144,24 @@ change log
150144
**build_windows.bat** and **build_linux.sh** will download automatically correct version of cudnn. and build as cmake.
151145

152146
```
153-
Windows + 1080ti + CUDA8.0 + cudnn7.1 + yolov3 = 36FPS
154-
Windows + 1080ti + CUDA9.0 + cudnn7.1 + yolov3 = 36FPS
155-
Windows + 1080 + CUDA9.0 + cudnn7.1 + yolov3 = 27FPS
156-
Windows + 1080 + CUDA9.0 + cudnn7.1 + yolov3(spp) = 15FPS
157-
Ubuntu + 1080 + CUDA8.0 + cudnn7.1 + yolov3 = 30FPS
158-
Ubuntu + 1080 + CUDA9.0 + cudnn7.1 + yolov3 = 30FPS
147+
Windows + 2080ti + CUDA 10.0 + cudnn7.3.1 + yolov3 = 44FPS
148+
149+
Windows + 1080ti + CUDA 8.0 + cudnn7.1 + yolov3 = 36FPS
150+
Windows + 1080ti + CUDA 9.0 + cudnn7.1 + yolov3 = 36FPS
151+
152+
Windows + 1080 + CUDA 9.0 + cudnn7.1 + yolov3 = 27FPS
153+
Windows + 1080 + CUDA 9.0 + cudnn7.1 + yolov3(spp) = 15FPS
154+
Ubuntu + 1080 + CUDA 8.0 + cudnn7.1 + yolov3 = 30FPS
155+
Ubuntu + 1080 + CUDA 9.0 + cudnn7.1 + yolov3 = 30FPS
159156
```
160157

161158
Software requirement
162159
--------------------
163160

164161
- CMake
165-
- CUDA 8.0 or 9.0(9.1 is not working)
162+
- CUDA 8.0 or 9.0(9.1 is not working) or 10.0
166163
- OpenCV(for testing)
167-
- Visual Studio 2015
164+
- Visual Studio 2013, 2015, 2017
168165

169166
Hardware requirement
170167
--------------------
-52.5 KB
Binary file not shown.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
9687976f0cdc7564667e42d0d6932ed20a75528c

Yolov3_SpringEdition_Test/Yolov3_SpringEdition_Test.vcxproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
4848
<ConfigurationType>Application</ConfigurationType>
4949
<UseDebugLibraries>false</UseDebugLibraries>
50-
<PlatformToolset>v140</PlatformToolset>
50+
<PlatformToolset>v141</PlatformToolset>
5151
<WholeProgramOptimization>true</WholeProgramOptimization>
5252
<CharacterSet>Unicode</CharacterSet>
5353
</PropertyGroup>

Yolov3_SpringEdition_Test/download_cudnn64_7.dll.bat

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,12 @@ set /p "ver90="<"cuda_ver.txt"
1212
if not "%ver90%" equ "" (
1313
powershell "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; (New-Object System.Net.WebClient).DownloadFile('https://github.com/springkim/YOLOv3_SpringEdition/releases/download/cudnn7.1cuda9.0/cudnn64_7.dll','cudnn64_7.dll')"
1414
)
15+
nvcc -V | findstr /C:"release 10.0" > cuda_ver.txt
16+
set /p "ver100="<"cuda_ver.txt"
17+
if not "%ver100%" equ "" (
18+
powershell "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; (New-Object System.Net.WebClient).DownloadFile('https://github.com/springkim/YOLOv3_SpringEdition/releases/download/cudnn7.3.1_cuda10.0/cudnn64_7.dll','cudnn64_7.dll')"
19+
)
1520
DEL cuda_ver.txt
1621
move cudnn64_7.dll "%cudir%"
17-
::nvcc -V | findstr /C:"release 9.1" > cuda_ver.txt
18-
::set /p "ver91="<"cuda_ver.txt"
19-
::if not "%ver91%" equ "" (
20-
:: powershell "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; (New-Object System.Net.WebClient).DownloadFile('https://www.dropbox.com/s/l0zsm9g78ciexzh/cudnn64_7.dll?dl=1','cudnn64_7.dll')"
21-
::)
22+
2223
pause

Yolov3_SpringEdition_Test/main.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
#include"YOLOv3SE.h"
22
#include<chrono>
3+
#include<iostream>
34
void Yolo3Test(std::string weights, std::string cfg,std::string names) {
45
YOLOv3 detector;
56
detector.Create(weights,cfg,names);
@@ -21,13 +22,13 @@ void Yolo3Test(std::string weights, std::string cfg,std::string names) {
2122
t_end = std::chrono::system_clock::now();
2223
diff = t_end - t_beg;
2324
std::cout << "FPS : " << 1.0 / diff.count() << "\t" << diff.count() << std::endl;
24-
//continue;
25+
continue;
2526
for (auto&box : boxes) {
2627
cv::putText(img, detector.Names(box.m_class), box.tl(), cv::FONT_HERSHEY_SIMPLEX, 1.0, colors[box.m_class], 2);
2728
cv::rectangle(img, box, colors[box.m_class], 2);
2829
}
2930
cv::imshow("original", img);
30-
if (cv::waitKey(0) == 27) {
31+
if (cv::waitKey(10) == 27) {
3132
break;
3233
}
3334
}
@@ -62,7 +63,8 @@ int main() {
6263
//Yolo3Test("yolov3_darknet53.weights","yolov3_darknet53_coco.cfg","coco.names");
6364

6465
///Test YOLOv3 based on darknet53 with SPP(spatial pyramid pooling)
65-
Yolo3Test("yolov3_darknet53_spp.weights", "yolov3_darknet53_spp_coco.cfg", "coco.names");
66+
Yolo3Test("yolov3_darknet53.weights", "yolov3_darknet53_coco.cfg", "coco.names");
67+
//Yolo3Test("yolov3_darknet53_spp.weights", "yolov3_darknet53_spp_coco.cfg", "coco.names");
6668

6769
///Test Classifier
6870
//ClassifyTest();

0 commit comments

Comments
 (0)