당신은 코어의 수와 연산 유닛의 수를 쿼리 할 수 없습니다. 인텔 통합 GPU는 일반적으로 컴퓨팅 유닛 당 8 개의 코어 만 가지고 있으며, 엔비디아는 컴퓨팅 유닛 당 192 또는 128 코어를 가지고 있습니다. Max_compute_units는 계산 단위 수이며 파티션을 찾기 위해 (그리고 제한적으로) 장치 파티션에서 사용할 수 있지만 일반적으로 CPU 만 장치 파티셔닝을 지원합니다.
병렬로 수행 할 수있는 프로세스 (작업 항목)의 수는 하드웨어의 기능에 따라 다릅니다. AMD 그래픽 카드의 경우 코어 수 (계산 단위 수의 64 배)가 최대 40 배가 될 수 있습니다. 예를 들어 8 개의 연산 장치 AMD GPU는 20k (8 * 64 * 40) 개의 스레드를 기내에 장착 할 수 있으며 단일 큐에 더 많은 스레드를 장착 할 수 있습니다.
최대 계산 단위 수는 드라이버에서 변경할 수 있습니다. 베타 드라이버 및 12 개의 컴퓨팅 장치 만 표시하는 통합 인텔 GPU를 보았습니다. 또한 새로운 AMD GPU는 일부 컴퓨팅 장치 예약을 지원 받았습니다. 일부 응용 프로그램에서는 오디오 컴퓨팅을 지원하므로 범용 컴퓨팅 커널은 해당 응용 프로그램의 나머지 컴퓨팅 장치 만 볼 수 있습니다.
엔비디아 GPU에 계산 유닛이 13 개 있고 드라이버가 모두 13을 계산할 수있는 경우 OpenCL은 모두 13 개를 사용할 수 있습니다. GTX970은 Intel Iris GPU보다 더 많은 코어를 가지고 있습니다.
대기열에 들어간 OpenCL 커널의 작업 그룹은 전체적으로 계산 단위로 실행되므로 각 작업 그룹의 작업 항목은 동일한 작업 그룹의 다른 작업 항목과 계산 단위의 동일한 메모리를 공유합니다. 그러나 일부 공급 업체는 규칙을 조금 더 확장 할 수 있습니다. 단일 작업 그룹에 대해 Compute 단위를 공동으로 사용할 수 있습니다. 인텔 igpu와 같은.
GPU에는 13 개의 컴퓨팅 유닛 (NVIDIA의 용어로 스트리밍 멀티 프로세서)이 있기 때문입니다. – talonmies
[작업 그룹 수에 해당하는 컴퓨터 단위 수] 가능한 중복 (http://stackoverflow.com/questions/9326430/number-of-compute-units-corresponding-to-the-number-of-work- 그룹) – talonmies