猿代码 — 科研/AI模型/高性能计算
0

天河超算上安装、测试darknet,GPU版本,CPU版本,及错误处理

摘要: 1)cat /proc/cpuinfoprocessor : 79vendor_id : GenuineIntelcpu family : 6model : 85model name : Intel(R) Xeon(R) Gold 6248 CPU @ 2.50GHzstepping : 7microcode : 0x5000024cpu MHz : 10 ...
1)cat /proc/cpuinfo
processor       : 79
vendor_id       : GenuineIntel
cpu family      : 6
model           : 85
model name      : Intel(R) Xeon(R) Gold 6248 CPU @ 2.50GHz
stepping        : 7
microcode       : 0x5000024
cpu MHz         : 1000.213
cache size      : 28160 KB
physical id     : 1
siblings        : 40
core id         : 28
cpu cores       : 20
apicid          : 121
initial apicid  : 121
fpu             : yes
fpu_exception   : yes
cpuid level     : 22
wp              : yes

2)默认参数
GPU=0
CUDNN=0
OPENCV=0
OPENMP=0
DEBUG=0

3)
生成了库和可招待文件
backup  darknet  examples  libdarknet.a   LICENSE       LICENSE.gen  LICENSE.meta  LICENSE.v1  obj     README.md  scripts
cfg     data     include   libdarknet.so  LICENSE.fuck  LICENSE.gpl  LICENSE.mit   Makefile    python  results    src
好像还缺少模型文件

4)下载文件
wget https://pjreddie.com/media/files/yolov3.weights
./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
运行命令

4)出错了
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x0000000000460908 in read_cfg (filename=0x7fffffffc5fb "model/yolov3-tiny.cfg") at ./src/parser.c:915
915                     if(!read_option(line, current->options)){
Missing separate debuginfos, use: debuginfo-install glibc-2.17-222.el7.x86_64
(gdb) bt
#0  0x0000000000460908 in read_cfg (filename=0x7fffffffc5fb "model/yolov3-tiny.cfg") at ./src/parser.c:915
#1  0x000000000045f7a2 in parse_network_cfg (filename=0x7fffffffc5fb "model/yolov3-tiny.cfg") at ./src/parser.c:744
#2  0x00000000004583bf in load_network (cfg=0x7fffffffc5fb "model/yolov3-tiny.cfg",
    weights=0x7fffffffc611 "model/yolov3-tiny.weights", clear=0) at ./src/network.c:55
#3  0x000000000041bf3b in test_detector (datacfg=0x47be74 "cfg/coco.data", cfgfile=0x7fffffffc5fb "model/yolov3-tiny.cfg",
    weightfile=0x7fffffffc611 "model/yolov3-tiny.weights", filename=0x7fffffffc62b "data/dog.jpg", thresh=0.5,
    hier_thresh=0.5, outfile=0x0, fullscreen=0) at ./examples/detector.c:569
#4  0x00000000004216a0 in main (argc=5, argv=0x7fffffffc0f8) at ./examples/darknet.c:437

4)读cfg文件出错,
查看了一下,确实有问题:


<!DOCTYPE html>
<html lang="en" data-color-mode="auto" data-light-theme="light" data-dark-theme="dark"  data-a11y-animated-images="system" data-a11y-link-underlines="false">

    <style>
  /* for each iteration, uncomment the CSS variable */

  /* light themes */
  [data-color-mode="light"][data-light-theme*="light"],
  [data-color-mode="auto"][data-light-theme*="light"] {
    /* iteration 1 */
    --border-color-iteration-1: #C8CCD0;
    /* iteration 2 */
    --border-color-iteration-2: #BABFC5;
    /* iteration 3 */

5)换自带的CFG就OK了
 ./darknet detect cfg/yolov3-tiny.cfg model/yolov3-tiny.weights data/dog.jpg
layer     filters    size              input                output
    0 conv     16  3 x 3 / 1   416 x 416 x   3   ->   416 x 416 x  16  0.150 BFLOPs
    1 max          2 x 2 / 2   416 x 416 x  16   ->   208 x 208 x  16
    2 conv     32  3 x 3 / 1   208 x 208 x  16   ->   208 x 208 x  32  0.399 BFLOPs
    3 max          2 x 2 / 2   208 x 208 x  32   ->   104 x 104 x  32
    4 conv     64  3 x 3 / 1   104 x 104 x  32   ->   104 x 104 x  64  0.399 BFLOPs
    5 max          2 x 2 / 2   104 x 104 x  64   ->    52 x  52 x  64
    6 conv    128  3 x 3 / 1    52 x  52 x  64   ->    52 x  52 x 128  0.399 BFLOPs
    7 max          2 x 2 / 2    52 x  52 x 128   ->    26 x  26 x 128
    8 conv    256  3 x 3 / 1    26 x  26 x 128   ->    26 x  26 x 256  0.399 BFLOPs
    9 max          2 x 2 / 2    26 x  26 x 256   ->    13 x  13 x 256
   10 conv    512  3 x 3 / 1    13 x  13 x 256   ->    13 x  13 x 512  0.399 BFLOPs
   11 max          2 x 2 / 1    13 x  13 x 512   ->    13 x  13 x 512
   12 conv   1024  3 x 3 / 1    13 x  13 x 512   ->    13 x  13 x1024  1.595 BFLOPs
   13 conv    256  1 x 1 / 1    13 x  13 x1024   ->    13 x  13 x 256  0.089 BFLOPs
   14 conv    512  3 x 3 / 1    13 x  13 x 256   ->    13 x  13 x 512  0.399 BFLOPs
   15 conv    255  1 x 1 / 1    13 x  13 x 512   ->    13 x  13 x 255  0.044 BFLOPs
   16 yolo

6)
In file included from ./src/utils.h:5:0,
                 from ./src/gemm.c:2:
include/darknet.h:11:30: 致命错误:cuda_runtime.h:没有那个文件或目录
     #include "cuda_runtime.h"
通过修改Makefile中的标记解决


7)
gcc -Iinclude/ -Isrc/ -DGPU -I/public/software/cuda-11.4.3/include/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -fopenmp -Ofast -DGPU -c ./src/l2norm_layer.c -o obj/l2norm_layer.o
gcc -Iinclude/ -Isrc/ -DGPU -I/public/software/cuda-11.4.3/include/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -fopenmp -Ofast -DGPU -c ./src/yolo_layer.c -o obj/yolo_layer.o
gcc -Iinclude/ -Isrc/ -DGPU -I/public/software/cuda-11.4.3/include/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -fopenmp -Ofast -DGPU -c ./src/iseg_layer.c -o obj/iseg_layer.o
g++ -Iinclude/ -Isrc/ -DGPU -I/public/software/cuda-11.4.3/include/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -fopenmp -Ofast -DGPU -c ./src/image_opencv.cpp -o obj/image_opencv.o
nvcc  -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=[sm_50,compute_50] -gencode arch=compute_52,code=[sm_52,compute_52] -Iinclude/ -Isrc/ -DGPU -I/public/software/cuda-11.4.3/include/ --compiler-options "-Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -fopenmp -Ofast -DGPU" -c ./src/convolutional_kernels.cu -o obj/convolutional_kernels.o
nvcc fatal   : Unsupported gpu architecture 'compute_30'
make: *** [obj/convolutional_kernels.o] 错误 1

8)
--gres=gpu:1 ./darknet
usage: /public/home/hpc221051/z1.gon/14-deeplearning/d1.darknet-master.CPU/./darknet <function>
(base) [hpc221051@ln03 d1.darknet-master.CPU]$ srun -n 1 -A pi_xhk -p gpu2Q -q gpuq --gres=gpu:1 ./darknet detect cfg/yolov3-tiny.cfg model/yolov3-tiny.weights data/dog.jpg
layer     filters    size              input                output
    0 conv     16  3 x 3 / 1   416 x 416 x   3   ->   416 x 416 x  16  0.150 BFLOPs
    1 max          2 x 2 / 2   416 x 416 x  16   ->   208 x 208 x  16
    2 conv     32  3 x 3 / 1   208 x 208 x  16   ->   208 x 208 x  32  0.399 BFLOPs
    3 max          2 x 2 / 2   208 x 208 x  32   ->   104 x 104 x  32
    4 conv     64  3 x 3 / 1   104 x 104 x  32   ->   104 x 104 x  64  0.399 BFLOPs
    5 max          2 x 2 / 2   104 x 104 x  64   ->    52 x  52 x  64
    6 conv    128  3 x 3 / 1    52 x  52 x  64   ->    52 x  52 x 128  0.399 BFLOPs
    7 max          2 x 2 / 2    52 x  52 x 128   ->    26 x  26 x 128
    8 conv    256  3 x 3 / 1    26 x  26 x 128   ->    26 x  26 x 256  0.399 BFLOPs

可以跑,但是太慢了




说点什么...

已有0条评论

最新评论...

本文作者
2023-10-10 09:14
  • 0
    粉丝
  • 433
    阅读
  • 0
    回复
资讯幻灯片
热门评论
热门专题
排行榜
Copyright   ©2015-2023   猿代码-超算人才智造局 高性能计算|并行计算|人工智能      ( 京ICP备2021026424号-2 )