비활성화된 SM(스트리밍 프로세서)을 활성화하는 방법은 무엇입니까?

비활성화된 SM(스트리밍 프로세서)을 활성화하는 방법은 무엇입니까?

NVIDIA Quadro K2000 GPU를 사용하고 있습니다. 나는 실행했고 deviceQuery.exe그 결과는 아래와 같다. SM 유닛이 2개밖에 없다고 하네요. 실제로 SM이 2개만 있는지 아니면 내 SM 중 일부가 비활성화되어 있는지 확실하지 않습니다.이 SO 질문에 대한 세 번째 의견.

SP의 개수는 SM당 192개라는 것도 봤습니다. 더 많은 SM을 활성화할 수 있는 방법이 있을 수 있으며 그러면 SM당 SP 수가 줄어들 것입니다.

영상

업데이트:제가 묻는 이유는 GPU 처리를 효율적으로 만들고 싶기 때문입니다. 저는 1080 x 1920 크기의 이미지를 세 부분으로 나눴습니다. 저는 이러한 세그먼트를 H2D로 전송하고 D2H를 비동기식으로 처리하고 전송합니다. 따라서 내 GPU의 하드웨어 구성을 효율적으로 활용할 수 있는 블록 크기와 블록당 스레드 수를 선택하고 싶습니다. 게다가 SM이 2개 이상(SM이 8개 있다고 가정) 있지만 SM당 SP 수가 적은(384/8 = SM당 48 SP) GPU가 SM당 2개, SP가 192개 있는 GPU와 동일한 성능을 발휘한다는 사실이 여전히 혼란스럽습니다. 에스엠?중요한 것은 사용 가능한 총 SP 수입니까?

답변1

순서대로:

  1. 실제로 SM이 2개만 있는지 아니면 일부 SM이 비활성화되어 있는지 확실하지 않습니다.

    귀하의 GPU는 GK107입니다. 두 개의 SMX가 있으며 각각 192 SP가 있습니다. 비활성화된 프로세서가 없습니다.

  2. 더 많은 SM을 활성화할 수 있는 방법이 있을 수 있으며 그러면 SM당 SP 수가 줄어들 것입니다.

    소프트웨어에서 실리콘을 변경하는 마법 같은 방법은 없습니다.

  3. 2개 이상의 SM(8개 SM이라고 가정)이 있지만 SM당 SP 수가 적은(384/8 = SM당 48SP) GPU가 2개의 SM과 SM당 192개의 SP를 갖는 GPU와 동일한 성능을 발휘한다는 사실이 여전히 혼란스럽습니다.

    그것은 엄청난 질문이고 여기서 대답하려고 노력하지는 않을 것입니다. NVIDIA는 각 세대의 주력 컴퓨팅 카드가 출시될 때마다 다양한 세대의 아키텍처와 성능에 대해 매우 상세한 백서를 많이 발표했습니다. 그렇게 마음이 드신다면 직접 읽어보시길 권합니다. 그러고 보면, 경험 법칙은 다음과 같습니다.동일한 아키텍처 세대 내에서장치에 SM 또는 SMX가 많을수록 산술 바운드 작업에서 더 나은 성능을 발휘합니다. 서로 다른 세대의 GPU를 비교하는 것은 의미가 없습니다. 예를 들어, NVIDIA가 출시한 최초의 Telsa 컴퓨팅 카드에는 16개의 SM(C860)이 있습니다. 가장 최근에는 15 SMX(K40)가 있습니다. 최고 단정밀도 성능에는 약 10배의 차이가 있습니다. 또한 많은 실제 응용 프로그램은 메모리 대역폭에 제한되어 있으며 이로 인해 서로 다른 카드 간의 성능 차이가 근본적으로 바뀔 수 있습니다. 코어 수와 최대 FLOP는 무어의 법칙을 어느 정도 따르지만 메모리 대역폭은 그렇지 않습니다.

관련 정보