Cuda 사용에 있어서 질문이 있습니다.

   조회 3647   추천 0    

 


안녕하세요?


Cuda 사용에 있어서 질문이 있습니다.


- 목적: 큰 사이즈 영상처리(머신비젼)

- 문제: 그래픽 카드 메모리에 데이터 긴 전송시간 발생으로 처리속도가 느려짐.

- 해결방법: N개 그래픽카드를 사용 SLI로 연결하여 전송시간 줄임.

- 검토사항:


1) 전송 속도가 빨라지는 것이 그래픽카드에 데이터를 분산하여 처리하기 때문인지?

2) 분산되어 송수신 된다면, cuda 프로그램에서 처리에 문제점은 없는지?(하나 처럼 프로그램되길 희망)

3) N개(아마2개)그래픽 카드 사용시에 고려해야할 H/W 요구사항은 무엇이 있을까요?(메인보드 선정 등등)


감사합니다.

짧은글 일수록 신중하게.
무아 2019-09
2)
머신비전으로 처리해야할 내용이 여러 영역으로 나누어 각각 처리가 가능하다면 되겠죠.
간단하게 예를 들어 영상의 평균 밝기 값을 구하는 문제라면 (이런 걸 cuda로 하진 않겠지만 쉬운 예를 든 것 입니다)
전체 영상의 평균을 구하지 않고 N 개의 서브 영역으로 구분하여 N 개의 카드로 각각의 평균을 구한뒤 그 값을 다시 평균하는 거라면 가능하겠죠.
즉, 어떤 영상처리를 하느냐 (어떤 알고리즘을 적용하느냐)에 따라 달라집니다.
경우에 따라서는 영상을 어느정도 겹치게 중복되는 영역을 만들어 나누는 방법이 가장 일반적일 것이고..
단순히 큰 영상을 나누어 전체적인 알고리즘을 별도로 실행해서 합치는 것은 안될 겁니다.
구하고자 하는 결과가 (평균 구하기 처럼) separable 한 알고리즘을 쓸 수 있을 때 만 가능합니다.

국내의 AI 머신비전 업체 중 한 곳인 라온피플에서 보내온 광고메일에는 이런 식으로 한다는 광고도 있습니다.
epowergate 2019-09
CUDA를 사용해서 개발해본지가 오래되기는 했지만 제가 아는 범위에서는 CUDA를 사용한다고 해서 Graphic Card의 메모리를 빠르게 전송하지는 않습니다.
분산해서 송수신하는 로직은 직접 개발 또는 이를 수행하는 SDK (예전에는 없었음)를 사용하셔야 할 겁니다.
하셀호프 2019-09
제가 아는 바로는 cuda를 사용하신다면 sli가 필요없습니다
글픽 2개 설치하고 1개처럼 사용하면 다 인식합니다
 개별 gpu 인식하고 각각의 cuda 코어, gpu 메모리 인식할 거라고 생각합니다
어떤 최적화가 필요한지는 저도 잘 모릅니다
cuda 메모리는  레지스터 메모리 / 로컬 메모리, shared 메모리, global 메모리가 있습니다
이런 메모리를 조정하는 것이 최적화일것이구요 저는 잘 모르는 부분입니다


QnA
제목Page 1255/5731
2015-12   1793636   백메가
2014-05   5268626   정은준1
2015-08   3713   다롱이
2018-10   3713   시골노인
2020-12   3713   새총
2016-08   3713   yuno
2017-11   3713   Win31
2018-08   3713   미나리나물
2018-10   3713   Nikon
2018-12   3713   BlueApple
2016-02   3713   이승익
2018-07   3713   최동민
2014-04   3713   박완경
2018-02   3713   minsuk
2015-02   3713   문대형
2018-03   3713   jore
2021-09   3714   한효석
2014-07   3714   insert
2015-11   3714   AplPEC
2018-01   3714   올빼미잠와
2019-06   3714   Nikon
2017-04   3714   삐돌이슬픔이