[G3]deview gpu를 통한 얼굴인식 가속

  • 1,424 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,424
On Slideshare
0
From Embeds
0
Number of Embeds
5

Actions

Shares
Downloads
40
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 목차
  • 2.   •  PCA를
  • 3.   이용한
  • 4.   얼굴인식기
  • 5.    –  얼굴인식
  • 6.   개요
  • 7.    –  주요
  • 8.   모듈의
  • 9.   병렬성
  • 10.   •  GPU와
  • 11.   병렬프로그래밍
  • 12.    –  CUDA
  • 13.    –  OpenCL
  • 14.   •  GPU
  • 15.   기반
  • 16.   얼굴인식기의
  • 17.   설계
  • 18.    –  매핑
  • 19.    –  동기화
  • 20.   •  실험결과
  • 21.   및
  • 22.   결론
  • 23.   
  • 24. 목차
  • 25.   •  PCA를
  • 26.   이용한
  • 27.   얼굴인식기
  • 28.    –  얼굴인식
  • 29.   개요
  • 30.    –  주요
  • 31.   모듈의
  • 32.   병렬성
  • 33.   •  GPU와
  • 34.   병렬프로그래밍
  • 35.    –  CUDA
  • 36.    –  OpenCL
  • 37.   •  GPU
  • 38.   기반
  • 39.   얼굴인식기의
  • 40.   설계
  • 41.    –  매핑
  • 42.    –  동기화
  • 43.   •  실험결과
  • 44.   및
  • 45.   결론
  • 46.   
  • 47. 얼굴인식
  • 48.   •  컴퓨터가
  • 49.   얼굴을
  • 50.   학습하여
  • 51.   식별해내는
  • 52.   일
  • 53.   •  다수의
  • 54.   응용분야
  • 55.    -
  • 56.   보안,
  • 57.   정보분류
  • 58.   등
  • 59.   •  학습(training)
  • 60.    –  입력:
  • 61.   서로
  • 62.   다른
  • 63.   여러
  • 64.   얼굴이미지들
  • 65.    –  출력:
  • 66.   학습된
  • 67.   정보
  • 68.   •  식별(testing)
  • 69.    –  입력:
  • 70.   학습된
  • 71.   정보
  • 72.    –  출력:
  • 73.   식별결과
  • 74.   •  픽셀단위
  • 75.   정보를
  • 76.   처리하는
  • 77.   작업으로
  • 78.   학습에
  • 79.   많은
  • 80.   시간이
  • 81.   소 요
  • 82.   
  • 83. PCA
  • 84.   (Principle
  • 85.   Component
  • 86.   Analysis)
  • 87.   •  주성분
  • 88.   분석
  • 89.   •  차원
  • 90.   정보를
  • 91.   줄이는
  • 92.   방법
  • 93.    –  입력
  • 94.   정보들을
  • 95.   비교하여
  • 96.   고유
  • 97.   벡터(eigenvector)를
  • 98.   구하고,
  • 99.   입 력
  • 100.   정보를
  • 101.   고유벡터로
  • 102.   표현
  • 103.    고차원
  • 104.   
  • 105.    정보
  • 106.    
  • 107.    고차원
  • 108.    주성분
  • 109.   및
  • 110.   
  • 111.    정보
  • 112.    
  • 113.    고차원
  • 114.    PCA
  • 115.    정보별
  • 116.   가중치
  • 117.    정보
  • 118.    
  • 119.    고차원
  • 120.    정보
  • 121.    가공된
  • 122.    가공된
  • 123.    정보
  • 124.    가공된
  • 125.    정보
  • 126.    Projection
  • 127.    저차원
  • 128.    정보
  • 129.    정보
  • 130.   
  • 131. PCA를
  • 132.   이용한
  • 133.   얼굴인식
  • 134.   •  입력
  • 135.   얼굴이미지
  • 136.    –  픽셀
  • 137.   개수만큼의
  • 138.   차원
  • 139.   
  • 140.   너무
  • 141.   많은
  • 142.   정보
  • 143.   
  • 144.   
  • 145.   •  PCA를
  • 146.   통해
  • 147.   주성분(고유성분)을
  • 148.   계산
  • 149.   •  얼굴공간(face
  • 150.   space)에
  • 151.   대한
  • 152.   프로젝션
  • 153.    –  각
  • 154.   입력
  • 155.   얼굴이미지에
  • 156.   대해,
  • 157.   주성분들에
  • 158.   대한
  • 159.   가중치를
  • 160.   구하는
  • 161.    것
  • 162.   •  입력
  • 163.   얼굴이미지는
  • 164.   주성분들의
  • 165.   선형식으로
  • 166.   재구성
  • 167.   가능
  • 168.    –  주성분들에
  • 169.   대한
  • 170.   가중치를
  • 171.   이용한
  • 172.   weighted
  • 173.   sum
  • 174.   
  • 175. PCA를
  • 176.   이용한
  • 177.   얼굴인식
  • 178.    입력
  • 179.   얼굴이미지
  • 180.    고유성분
  • 181.   얼굴( eigen
  • 182.   face)
  • 183.    PCA
  • 184.    입력얼굴이미지의
  • 185.   
  • 186.    pixel
  • 187.   space
  • 188.    고유얼굴별
  • 189.   가중치
  • 190.   
  • 191.    → → → → W 1 W 2 W 3 W 4 → → → → Projection
  • 192.   to
  • 193.   fac W 5 W 6 W 7 W 8 → → → → e
  • 194.   space
  • 195.    W 9 W 10 W 11 W 12 → → → → W 13 W 14 W 15 W 16
  • 196. PCA
  • 197.   얼굴인식
  • 198.   알고리즘
  • 199.   주요모듈
  • 200.   •  모듈1
  • 201.   :
  • 202.   공분산
  • 203.   행렬
  • 204.   계산
  • 205.    –  얼굴이미지
  • 206.   픽셀
  • 207.   단위의
  • 208.   정보에
  • 209.   대한
  • 210.   공분산을
  • 211.   계산
  • 212.   
  • 213.    –  각각
  • 214.   계산된
  • 215.   픽셀단위의
  • 216.   정보를
  • 217.   이미지
  • 218.   단위로
  • 219.   누적합
  • 220.   •  모듈2
  • 221.   :
  • 222.   Jacobi
  • 223.   method
  • 224.    –  고유
  • 225.   벡터를
  • 226.   계산
  • 227.    Eigen value eigen Covariance covar. value
  • 228.    Computation Eigenface C Matrix matrix
  • 229.    (Jacobi met eigen omputation
  • 230.    Computation
  • 231.    hod)
  • 232.    vector
  • 233.    eigenfaces
  • 234.    training images
  • 235.    Projecting to S weights
  • 236.    ubspace
  • 237.    Face DB
  • 238.    Training
  • 239.   
  • 240. PCA
  • 241.   얼굴인식
  • 242.   알고리즘
  • 243.   주요모듈
  • 244.   •  모듈3
  • 245.   :
  • 246.   고유성분
  • 247.   얼굴
  • 248.   구성
  • 249.    –  학습하는
  • 250.   얼굴
  • 251.   정보를
  • 252.   고유벡터와
  • 253.   곱을
  • 254.   통해
  • 255.   계산
  • 256.    –  고유벡터의
  • 257.   수
  • 258.   만큼의
  • 259.   고유성분
  • 260.   얼굴
  • 261.   생성
  • 262.   •  모듈4
  • 263.   :
  • 264.   얼굴공간으로의
  • 265.   프로젝션
  • 266.    –  입력되는
  • 267.   얼굴이미지를
  • 268.   고유성분얼굴로
  • 269.   구성된
  • 270.   얼굴공간으로
  • 271.    프로젝션
  • 272.    Eigen value eigen Covariance covar. value
  • 273.    Computation Eigenface C Matrix matrix
  • 274.    (Jacobi met eigen omputation
  • 275.    Computation
  • 276.    hod)
  • 277.    vector
  • 278.    eigenfaces
  • 279.    training images
  • 280.    Projecting to S weights
  • 281.    ubspace
  • 282.    Face DB
  • 283.    Training
  • 284.   
  • 285. PCA
  • 286.   얼굴인식(식별)
  • 287.   알고리즘
  • 288.    식별할 식별
  • 289.    
  • 290.   이미 결과
  • 291.    지
  • 292.    A A’ Testing
  • 293.    Face DB
  • 294.    B B’ Projecting to S Finding the Ne testing images
  • 295.    ubspace
  • 296.    arest
  • 297.    C C ’ D E’•  오분류를
  • 298.   줄이기
  • 299.   위해서는
  • 300.   더
  • 301.   많은
  • 302.   얼굴이미지를
  • 303.   학습
  • 304.   
  • 305.   많은
  • 306.   시간이
  • 307.   소요
  • 308.   
  • 309.   가속의
  • 310.   필요성
  • 311.   
  • 312. 모듈1
  • 313.   :
  • 314.   공분산
  • 315.   행렬계산
  • 316.   •  입력
  • 317.   :
  • 318.   얼굴이미지
  • 319.   •  출력
  • 320.   :
  • 321.   얼굴이미지들간의
  • 322.   공분산(
  • 323.   
  • 324.   
  • 325.   
  • 326.   N 2 )
  • 327.   •  수식
  • 328.    –  Ф
  • 329.   =
  • 330.   Γ
  • 331.   ­–
  • 332.   Ψ
  • 333.   (이미지와
  • 334.   평균
  • 335.   이미지의
  • 336.   차이)
  • 337.    –  C
  • 338.   =
  • 339.   공분산
  • 340.   행렬
  • 341.   (N
  • 342.   x
  • 343.   N)
  • 344.    1 C ij = (Γi − Ψ) ⋅ (Γj − Ψ)T P•  복잡도
  • 345.   :
  • 346.   
  • 347.   O(
  • 348.   
  • 349.   N
  • 350.   
  • 351.   2P
  • 352.   
  • 353.   
  • 354.    
  • 355.   
  • 356.    
  • 357.   
  • 358.   ) -
  • 359.   N
  • 360.   =
  • 361.   얼굴이미지
  • 362.   수,
  • 363.   P
  • 364.   =
  • 365.   이미지
  • 366.   픽셀수
  • 367.   
  • 368. 모듈2
  • 369.   :
  • 370.   Jacobi
  • 371.   method
  • 372.   •  입력
  • 373.   :
  • 374.   얼굴이미지들간의
  • 375.   공분산
  • 376.   행렬
  • 377.   •  출력
  • 378.   :
  • 379.   고유벡터(
  • 380.   
  • 381.   M
  • 382.    
  • 383.   
  • 384.   ) –  M
  • 385.   =
  • 386.   고유벡터의
  • 387.   수 
  • 388.   
  • 389.   •  계산
  • 390.    –  Jacobi
  • 391.   eigenvalue
  • 392.   method
  • 393.   •  복잡도
  • 394.   :
  • 395.   O(
  • 396.   N
  • 397.   
  • 398.   3
  • 399.    
  • 400.   
  • 401.    )
  • 402. 모듈3
  • 403.   :
  • 404.   고유성분
  • 405.   얼굴
  • 406.   구성
  • 407.   •  입력
  • 408.   :
  • 409.   얼굴이미지,
  • 410.   고유벡터
  • 411.    MP•  출력
  • 412.   :
  • 413.   고유성분
  • 414.   얼굴(
  • 415.   
  • 416.   
  • 417.   
  • 418.   
  • 419.   
  • 420.   
  • 421.   )
  • 422.   •  수식
  • 423.    –  u
  • 424.   =
  • 425.   고유성분얼굴,
  • 426.   
  • 427.   v
  • 428.   =
  • 429.   고유벡터
  • 430.   
  • 431.    –  Ψ
  • 432.   =
  • 433.   평균얼굴
  • 434.   이미지,
  • 435.   
  • 436.   Γ
  • 437.   =
  • 438.   얼굴
  • 439.   이미지
  • 440.    –  N
  • 441.   =
  • 442.   학습하는
  • 443.   얼굴이미지의
  • 444.   수
  • 445.    N um = ∑v mk (Γk − Ψ) k =1•  복잡도
  • 446.   :
  • 447.   O
  • 448.   (
  • 449.   NMP
  • 450.    
  • 451.   
  • 452.   
  • 453.   
  • 454.   
  • 455.   
  • 456.   )
  • 457. 모듈4
  • 458.   :
  • 459.   얼굴공간으로의
  • 460.   프로젝션
  • 461.   •  입력
  • 462.   :
  • 463.   얼굴이미지,
  • 464.   고유성분
  • 465.   얼굴
  • 466.   •  출력
  • 467.   :
  • 468.   얼굴공간에서
  • 469.   사용되는
  • 470.   가중치(
  • 471.   
  • 472.   
  • 473.   
  • 474.   
  • 475.   NM 
  • 476.   )
  • 477.   •  수식
  • 478.    –  u
  • 479.   =
  • 480.   고유성분
  • 481.   얼굴,
  • 482.   Γ
  • 483.   =
  • 484.   얼굴
  • 485.   이미지,
  • 486.   Ψ
  • 487.   =
  • 488.   평균얼굴
  • 489.   이미지
  • 490.   
  • 491.    
  • 492.    w nm = u T ⋅ (Γn − Ψ) m•  복잡도
  • 493.   :
  • 494.   O
  • 495.   (
  • 496.   
  • 497.   
  • 498.   
  • 499.   
  • 500.   
  • 501.   
  • 502.   
  • 503.   
  • 504.   )
  • 505.   
  • 506.    NMP
  • 507. 목차
  • 508.   •  PCA를
  • 509.   이용한
  • 510.   얼굴인식기
  • 511.    –  얼굴인식
  • 512.   개요
  • 513.    –  주요
  • 514.   모듈의
  • 515.   병렬성
  • 516.   •  GPU와
  • 517.   병렬프로그래밍
  • 518.    –  CUDA
  • 519.    –  OpenCL
  • 520.   •  GPU
  • 521.   기반
  • 522.   얼굴인식기의
  • 523.   설계
  • 524.    –  매핑
  • 525.    –  동기화
  • 526.   •  실험결과
  • 527.   및
  • 528.   결론
  • 529.   
  • 530. GPU
  • 531.   구조
  • 532.   •  Graphics
  • 533.   Processing
  • 534.   Unit
  • 535.    –  CPU에
  • 536.   비해
  • 537.   캐쉬의
  • 538.   크기를
  • 539.   줄이고,
  • 540.   다수의
  • 541.   코어를
  • 542.   집적
  • 543.    –  데이터
  • 544.   병렬성에
  • 545.   적합
  • 546.    –  Throughput
  • 547.   Computing
  • 548.    –  계층적인
  • 549.   병렬
  • 550.   구조
  • 551.   •  GPGPU
  • 552.   (General
  • 553.   Purpose
  • 554.   GPU)
  • 555.    –  GPU를
  • 556.   프로그래밍을
  • 557.   통해서
  • 558.   범용적으로
  • 559.   사용
  • 560.   가능
  • 561.    –  CUDA,
  • 562.   OpenCL
  • 563.   등
  • 564.   C기반
  • 565.   병렬프로그래밍
  • 566.   프레임워크
  • 567.   사용
  • 568.   
  • 569. GPU
  • 570.   구조
  • 571.   (GTX480)
  • 572.    SM
  • 573.    (Shared
  • 574.   Multipr ocessor)
  • 575.    GTX
  • 576.   480
  • 577.   구조
  • 578.   
  • 579. GPU
  • 580.   구조
  • 581.    SM
  • 582.    SP
  • 583.   
  • 584.    (Streaming
  • 585.   Processor
  • 586.    =CUDA
  • 587.   core)
  • 588.    공유
  • 589.   메모리(shared
  • 590.   memory)
  • 591.    SM내에서
  • 592.   수행되는
  • 593.   쓰레드들간의
  • 594.    자료
  • 595.   공유,
  • 596.   동기화
  • 597.   
  • 598. CUDA
  • 599.   •  Compute
  • 600.   Unified
  • 601.   Device
  • 602.   Architecture
  • 603.    –  NVIDIA의
  • 604.   GPU를
  • 605.   위한
  • 606.   C
  • 607.   기반
  • 608.   병렬
  • 609.   프로그래밍
  • 610.   프레임워크
  • 611.    –  컴파일러,
  • 612.   라이브러리,
  • 613.   디바이스
  • 614.   드라이버
  • 615.   •  Kernel
  • 616.    –  GPU에서
  • 617.   병렬로
  • 618.   수행되는
  • 619.   함수
  • 620.    Thread
  • 621.   block
  • 622.    //serial code (host)‫‏‬ //parallel code in kernel (device)‫‏‬ KernelA<<< nBlk, nThr >>> (args); ... //serial code (host)‫‏‬ Threads
  • 623.    //parallel code = kernel (device)‫‏‬ KernelB<<< nBlk, nThr >>>(args); ...
  • 624. OpenCL
  • 625.   
  • 626.   •  Open
  • 627.   Compute
  • 628.   Language
  • 629.    –  다양한
  • 630.   종류의
  • 631.   멀티코어/매니코어
  • 632.   디바이스를
  • 633.   위한
  • 634.   C
  • 635.   기반
  • 636.   병렬
  • 637.   프 로그래밍
  • 638.   프레임워크
  • 639.    –  이종
  • 640.   (heterogeneous)
  • 641.   시스템의
  • 642.   병렬프로그래밍을
  • 643.   위한
  • 644.   표준
  • 645.    SP
  • 646.    SM
  • 647.    GPU
  • 648.   
  • 649. 목차
  • 650.   •  PCA를
  • 651.   이용한
  • 652.   얼굴인식기
  • 653.    –  얼굴인식
  • 654.   개요
  • 655.    –  주요
  • 656.   모듈의
  • 657.   병렬성
  • 658.   •  GPU와
  • 659.   병렬프로그래밍
  • 660.    –  CUDA
  • 661.    –  OpenCL
  • 662.   •  GPU
  • 663.   기반
  • 664.   얼굴인식기의
  • 665.   설계
  • 666.    –  매핑
  • 667.    –  동기화
  • 668.   •  실험결과
  • 669.   및
  • 670.   결론
  • 671.   
  • 672. 매핑(Mapping)
  • 673.   •  Thread
  • 674.   block
  • 675.   =>
  • 676.   연산을
  • 677.   SM으로
  • 678.   수행
  • 679.   •  Thread
  • 680.   =>
  • 681.   연산을
  • 682.   SP로
  • 683.   수행
  • 684.   •  기본적으로
  • 685.   하나의
  • 686.   쓰레드
  • 687.   블록에서
  • 688.   다수의
  • 689.   쓰레드가
  • 690.   수행되 어야
  • 691.   가속이
  • 692.   이루어질
  • 693.   수
  • 694.   있음
  • 695.   •  극단적으로
  • 696.   두가지
  • 697.   매핑이
  • 698.   존재함
  • 699.    –  매핑
  • 700.   1
  • 701.   :
  • 702.   하나의
  • 703.   쓰레드에
  • 704.   하나의
  • 705.   픽셀
  • 706.   작업
  • 707.   할당
  • 708.    –  매핑
  • 709.   2
  • 710.   :
  • 711.   하나의
  • 712.   쓰레드에
  • 713.   하나의
  • 714.   얼굴이미지
  • 715.   작업
  • 716.   할당
  • 717.   
  • 718. 매핑(Mapping)
  • 719.   •  동기화
  • 720.   
  • 721.    –  쓰레드들의
  • 722.   연산결과를
  • 723.   하나로
  • 724.   모아야
  • 725.   하는
  • 726.   경우에
  • 727.   필요
  • 728.    –  예)
  • 729.   합
  • 730.   리덕션
  • 731.   (sum
  • 732.   reduction)
  • 733.    –  매핑
  • 734.   방법에
  • 735.   따라
  • 736.   동기화가
  • 737.   필요할
  • 738.   수
  • 739.   있음
  • 740.   •  합
  • 741.   리덕션의
  • 742.   구현
  • 743.   예
  • 744.    step
  • 745.   1
  • 746.    + + + + step
  • 747.   2
  • 748.    + + step
  • 749.   3
  • 750.    +
  • 751. 매핑(Mapping)
  • 752.   •  매핑
  • 753.   1
  • 754.    일반적으로
  • 755.   이미지의
  • 756.   수가
  • 757.   적고
  • 758.   픽셀의
  • 759.   크기가
  • 760.   클
  • 761.   때
  • 762.    1
  • 763.   픽셀
  • 764.    픽셀단위
  • 765.   연산
  • 766.    장점:
  • 767.   병렬성이
  • 768.   높다
  • 769.    단점:
  • 770.   쓰레드간
  • 771.   동기화
  • 772.   필요
  • 773.   
  • 774. 매핑(Mapping)
  • 775.   •  매핑
  • 776.   2
  • 777.    일반적으로
  • 778.   이미지의
  • 779.   수가
  • 780.   많고
  • 781.   픽셀의
  • 782.   크기가
  • 783.   작을
  • 784.   때
  • 785.   적용
  • 786.    이미지
  • 787.   단위
  • 788.   작업
  • 789.    장점
  • 790.   :
  • 791.   동기화가
  • 792.   필요없음
  • 793.    단점
  • 794.   :
  • 795.   픽셀
  • 796.   단위
  • 797.   병렬성
  • 798.   없음
  • 799.   
  • 800. 매핑(Mapping)
  • 801.   •  일반적 매핑 하나의
  • 802.   쓰레드가
  • 803.   k개
  • 804.   만큼의
  • 805.   픽셀들을
  • 806.   담당
  • 807.   (1<=
  • 808.   k
  • 809.   <=
  • 810.   P)
  • 811.   
  • 812.   
  • 813.   
  • 814. 공분산
  • 815.   행렬계산
  • 816.   -
  • 817.   모듈1
  • 818.   •  쓰레드
  • 819.   블록
  • 820.    N2 –  얼굴이미지
  • 821.   한
  • 822.   쌍
  • 823.   
  • 824.   총
  • 825.   
  • 826.   
  • 827.   
  • 828.   개의
  • 829.   쓰레드
  • 830.   블록
  • 831.   필요
  • 832.   •  쓰레드
  • 833.    –  한
  • 834.   얼굴이미지
  • 835.   중
  • 836.   일정
  • 837.   개수의
  • 838.   픽셀들
  • 839.    –  내적
  • 840.   (dot
  • 841.   product)를
  • 842.   계산
  • 843.    서브
  • 844.   공분산1
  • 845.    서브
  • 846.   공분산2
  • 847.    
  • 848.   
  • 849.    서브
  • 850.   공분산3
  • 851.    서브
  • 852.   공분산4
  • 853.    내적
  • 854.   계산
  • 855.    서브
  • 856.   공분산5
  • 857.    합
  • 858.   리덕션
  • 859.    공분산
  • 860.    서브
  • 861.   공분산6
  • 862.    서브
  • 863.   공분산7
  • 864.    서브
  • 865.   공분산8
  • 866.    서브
  • 867.   공분산9
  • 868.    서브
  • 869.   공분산10
  • 870.    하나의
  • 871.   쓰레드
  • 872.   블록에서
  • 873.   이루어지는
  • 874.   연산
  • 875.   
  • 876. 고유성분
  • 877.   얼굴
  • 878.   구성
  • 879.   ­–
  • 880.   모듈3
  • 881.   •  쓰레드
  • 882.   블록
  • 883.    –  고유얼굴
  • 884.   
  • 885.   총
  • 886.   고유벡터의
  • 887.   수만큼
  • 888.   쓰레드
  • 889.   블록
  • 890.   필요
  • 891.   •  쓰레드
  • 892.    –  한
  • 893.   얼굴이미지
  • 894.   중
  • 895.   일정
  • 896.   개수의
  • 897.   픽셀들
  • 898.   •  동기화
  • 899.    –  N장의
  • 900.   입력
  • 901.   얼굴이미지들에
  • 902.   대한
  • 903.   계산
  • 904.   결과를
  • 905.   누적하여
  • 906.   고유 얼굴을
  • 907.   계산
  • 908.    순차적으로
  • 909.   
  • 910.    누적
  • 911.    하나의
  • 912.   쓰레드
  • 913.   블록에서
  • 914.   이루어지는
  • 915.   연산
  • 916.   
  • 917. 고유얼굴
  • 918.   정보로
  • 919.   매핑
  • 920.   ­–
  • 921.   모듈4
  • 922.   •  쓰레드
  • 923.   블록
  • 924.    –  얼굴이미지
  • 925.   한
  • 926.   장과
  • 927.   고유얼굴
  • 928.   하나에
  • 929.   대한
  • 930.   연산
  • 931.    –  총
  • 932.   N
  • 933.   x
  • 934.   M
  • 935.   개의
  • 936.   쓰레드
  • 937.   블록
  • 938.   필요
  • 939.   •  쓰레드
  • 940.    –  일정 개수의 픽셀에 대해 내적 계산 서브
  • 941.   가중치
  • 942.   1
  • 943.    서브
  • 944.   가중치
  • 945.   2
  • 946.    서브
  • 947.   가중치
  • 948.   3
  • 949.    서브
  • 950.   가중치
  • 951.   4
  • 952.    내적
  • 953.   계산
  • 954.    서브
  • 955.   가중치
  • 956.   5
  • 957.    합
  • 958.   리덕션
  • 959.    W 서브
  • 960.   가중치
  • 961.   6
  • 962.    서브
  • 963.   가중치
  • 964.   7
  • 965.    서브
  • 966.   가중치
  • 967.   8
  • 968.    서브
  • 969.   가중치
  • 970.   9
  • 971.    하나의
  • 972.   쓰레드
  • 973.   블록에서
  • 974.   이루어지는
  • 975.   연산
  • 976.   
  • 977. 목차
  • 978.   •  PCA를
  • 979.   이용한
  • 980.   얼굴인식기
  • 981.    –  얼굴인식
  • 982.   개요
  • 983.    –  주요
  • 984.   모듈의
  • 985.   병렬성
  • 986.   •  GPU와
  • 987.   병렬프로그래밍
  • 988.    –  CUDA
  • 989.    –  OpenCL
  • 990.   •  GPU
  • 991.   기반
  • 992.   얼굴인식기의
  • 993.   설계
  • 994.    –  매핑
  • 995.    –  동기화
  • 996.   •  실험결과
  • 997.   및
  • 998.   결론
  • 999.   
  • 1000. 고화질
  • 1001.   DB
  • 1002.   (190장)
  • 1003.   
  • 1004.    DB
  • 1005.   :
  • 1006.   Caltech
  • 1007.   DB(픽셀
  • 1008.   320X400)
  • 1009.   
  • 1010.    학습하는
  • 1011.   이미지
  • 1012.   수
  • 1013.   :
  • 1014.   190,
  • 1015.   쓰레드당
  • 1016.   할당하는
  • 1017.   픽셀의
  • 1018.   수
  • 1019.   :
  • 1020.   500
  • 1021.    실행시간(ms) 속도이득 작업 CUDA C/CUDA CUDA C/CUDA C Portion(%) (kernel + Portion(%) (kernel + (kernel) (kernel)
  • 1022.    memory) memory)
  • 1023.    모듈1 9,201 22% 92 159 16% 100X 58X 모듈3 15,858 38% 268 332 34% 59X 48X 모듈4 16,477 39% 203 254 26% 81X 65X 모듈 41,535 99% 562 745 76% 74X 56X (1+3+4) 전체 응용시 41,776 987 52X 42X 간
  • 1024. 고화질
  • 1025.   DB
  • 1026.   (360장)
  • 1027.   
  • 1028.    DB
  • 1029.   :
  • 1030.   Caltech
  • 1031.   DB(픽셀
  • 1032.   320X400)
  • 1033.   
  • 1034.    학습하는
  • 1035.   이미지
  • 1036.   수
  • 1037.   :
  • 1038.   360,
  • 1039.   쓰레드당
  • 1040.   할당하는
  • 1041.   픽셀의
  • 1042.   수
  • 1043.   :
  • 1044.   500
  • 1045.    실행시간(ms) 속도이득 작업 CUDA C/CUDA CUDA C/CUDA C Portion(%) (kernel + Portion(%) (kernel + (kernel) (kernel)
  • 1046.    memory) memory)
  • 1047.    모듈1 33,124 22% 331 403 11% 100X 82X 모듈3 57,249 38% 954 1,077 28% 60X 53X 모듈4 59,607 39% 735 851 22% 81X 70X 모듈 (1+3+4 149,980 99% 2,019 2,331 61% 74X 64X ) 전체 응용시 151,466 3,821 43X 39X 간
  • 1048. 저화질
  • 1049.   DB
  • 1050.   (200장)
  • 1051.   
  • 1052.    DB
  • 1053.   :
  • 1054.   AT&T
  • 1055.   DB(픽셀
  • 1056.   92X112)
  • 1057.   
  • 1058.    학습하는
  • 1059.   이미지
  • 1060.   수
  • 1061.   :
  • 1062.   200,
  • 1063.   쓰레드당
  • 1064.   할당하는
  • 1065.   픽셀의
  • 1066.   수
  • 1067.   :
  • 1068.   40
  • 1069.    실행시간(ms) 속도이득 작업 CUDA C/CUDA CUDA C/CUDA C Portion(%) (kernel + Portion(%) (kernel + (kernel) (kernel) memory) memory) 모듈1 819 21% 11 60 14% 76X 14X 모듈3 1,403 35% 25 35 8% 55X 40X 모듈4 1,455 37% 17 43 10% 87X 34X 모듈 3,677 93% 53 138 32% 70X 27X (1+3+4) 전체 응용시 3,969 427 12X 9X 간
  • 1070. 저화질
  • 1071.   DB
  • 1072.   (400장)
  • 1073.   
  • 1074.    DB
  • 1075.   :
  • 1076.   AT&T
  • 1077.   DB(픽셀
  • 1078.   92X112)
  • 1079.   
  • 1080.    학습하는
  • 1081.   이미지
  • 1082.   수
  • 1083.   :
  • 1084.   400,
  • 1085.   쓰레드당
  • 1086.   할당하는
  • 1087.   픽셀의
  • 1088.   수
  • 1089.   :
  • 1090.   40
  • 1091.    실행시간(ms) 속도이득 작업 CUDA C/CUDA CUDA C/CUDA C Portion(%) (kernel + Portion(%) (kernel + (kernel) (kernel)
  • 1092.    memory) memory)
  • 1093.    모듈1 3,261 19% 43 95 4% 76X 34X 모듈3 5,664 33% 95 113 5% 59X 50X 모듈4 5,895 35% 59 123 5% 100X 48X 모듈 14,820 87% 196 331 13% 75X 45X (1+3+4) 전체 응용시 16,999 2,492 7X 7X 간
  • 1094. 결론
  • 1095.   
  • 1096.   •  PCA
  • 1097.   기반의
  • 1098.   얼굴인식
  • 1099.   알고리즘을
  • 1100.   GPU를
  • 1101.   이용하여
  • 1102.   가속
  • 1103.   
  • 1104.    –  입출력,
  • 1105.   Jacobi
  • 1106.   모듈을
  • 1107.   제외한
  • 1108.   주요
  • 1109.   모듈들을
  • 1110.   모두
  • 1111.   가속
  • 1112.   (최대
  • 1113.    100배)
  • 1114.    –  전체
  • 1115.   얼굴인식기(학습)에
  • 1116.   걸리는
  • 1117.   시간이
  • 1118.   40배
  • 1119.   정도
  • 1120.   단축
  • 1121.    •  128K
  • 1122.   입력화소의
  • 1123.   얼굴이미지
  • 1124.   400장
  • 1125.   •  얼굴이미지를
  • 1126.   많이
  • 1127.   사용할수록
  • 1128.   Jacobi
  • 1129.   모듈도
  • 1130.   병렬화가
  • 1131.   향후 
  • 1132.   필요
  • 1133.    
  • 1134.   
  • 1135.