CUDA 코어는 GPU에 코어를 렌더링하는 것과 동일합니까?


1

CUDA 코어를 읽은 후에는 CUDA 코어가 GPU의 일반적인 코어 일 뿐이라는 가정하에 있습니다. PhysX를 사용하여 CPU를 언로드하기 위해 물리 계산을 수행하거나 CPU에서 종종 느린 인코딩 / 렌더링과 같은 다른 계산 작업을 수행하는 데 사용할 수 있습니다. 이것은 또한 그래픽 렌더링은 내 지식에 맞는 많은 계산 일 뿐이라고 가정합니다.

묻는 맥락은 게임을하고 동시에 렌더링 / 변환하는 것이 가능한지 알고 싶습니다. 컴퓨터가 켜져있는 동안 생산성이 향상됩니다.

CUDA 코어는 GPU의 핵심 코어입니까? 아니면 계산을 위해 독점적으로 사용할 수있는 별도의 코어입니까?


내가 발견했다 현대 GPU가 폴리곤을 그리는 방법에 대한 유용한 설명입니다. 셰이더 (Nvidia의 cuda 코어)는 "다각형"이 그려지는 방식을 정의하는 데 매우 밀접하게 관련되어 있으며 셰이더 코어가 실제 삼각형을 해결하고 픽셀 출력을 처리한다는 것을 암시하는 것처럼 보입니다. ARM 프로세서 기반이지만 GPU 원리는 동일합니다.
Mokubai

@ 모쿠 바이 기사를 링크 해 주셔서 감사합니다. GPU 도면에서 읽기 좋습니다. 왜 그것이 관련성이 있는지 알지만, CUDA 코어의 경우에는별로 도움이되지 않습니다.
Remy Baratte

답변:


2

최신 그래픽 엔진은 셰이더를 기반으로합니다. 셰이더는 그래픽 하드웨어에서 실행되어 형상 (장면), 이미지 (렌더링 된 장면) 및 픽셀 기반의 후 효과를 생성하는 프로그램입니다.

셰이더에 관한 Wikipedia 기사 :

셰이더는 버텍스 또는 픽셀의 특성을 설명하는 간단한 프로그램입니다. 버텍스 쉐이더는 버텍스의 특성 (위치, 텍스처 좌표, 색 등)을 설명하는 반면, 픽셀 셰이더는 픽셀의 특성 (색, z 깊이 및 알파 값)을 설명합니다. 버텍스 쉐이더는 프리미티브 (테셀레이션 이후 가능)의 각 버텍스에 대해 호출됩니다. 따라서 하나의 정점, 하나의 (업데이트 된) 정점. 각 정점은 화면에 전송 될 표면 (메모리 블록)에 일련의 픽셀로 렌더링됩니다.

현대의 그래픽 카드는 이러한 쉐이더를 실행할 수있는 수백에서 수천 개의 계산 코어를 가지고 있습니다. 그들은 이전에는 기하학, 정점 및 픽셀 쉐이더로 분할되었지만 아키텍처는 이제 통일되며 코어는 모든 유형의 쉐이더를 실행할 수 있습니다. 게임 엔진 및 / 또는 그래픽 카드 드라이버가 얼마나 많은 셰이더가 어떤 작업에 쓰여지는지 조정할 수 있기 때문에 리소스를 훨씬 효율적으로 사용할 수 있습니다. 기하학 쉐이더에 할당 된 코어가 많을수록 풍경이 더 자세하게 표시 될 수 있으며, 픽셀 쉐이딩에 할당 된 코어가 많아지면 모션 블러 또는 조명 효과와 같은 더 나은 효과를 얻을 수 있습니다.

본질적으로 화면의 모든 픽셀에 대해 사용 가능한 계산 코어에서 여러 수준의 쉐이더가 실행됩니다.

CUDA는 개발자가 GPU 코어에 액세스 할 수있게 해주는 Nvidias API입니다. "CUDA 코어"라는 용어를들은 적이 있지만 그래픽에서 CUDA 코어는 그래픽 카드가 사용하는 프로세싱 코어 유형 인 스트림 프로세서와 유사합니다. CUDA는 프로그램을 운영합니다. ...에 그래픽 코어, 프로그램은 쉐이더 일 수 있거나 비디오 인코딩과 같은 고도로 병렬 작업을 수행하는 작업을 계산할 수 있습니다.

게임의 디테일 레벨을 낮추면 그래픽 카드의 계산량을 현저히 줄일 수 있습니다. 양철통 다른 작업을 수행하는 데 사용하지만, 다른 작업에 느려지라고 말할 수있는 경우가 아니라면 그래픽 프로세서 코어를 사용하여 게임을 플레이 할 수 없도록 만들 수 있습니다.


모든 셰이더를 처리 할 수있는 통합 코어를 명확히 해 주셔서 감사합니다. "CUDA는 단순히 개발자가 GPU 코어에 액세스 할 수있게 해주는 Nvidias API입니다." 내가 찾고 있던거야. GPU가 포화 상태가 아니라면 CUDA를 사용하여 남은 컴퓨팅 성능을 사용할 수 있어야합니다.
Remy Baratte

나는 추천 할 것이다. GPU-z 그래픽 카드로 어떤 일이 벌어지고 있는지 확인하십시오. 예를 들어, "울트라"설정에서 Far Cry 3을 재생할 수 있고 내 GPU로드를 최대 98 %까지 늘릴 수 있지만 앤티 앨리어싱을 해제하고 포스트 프로세싱을 줄이면 레알 그래픽 품질의 손실) 내 GPU로드가 45-55 %로 떨어집니다. 다음 프레임을 생성해야하기 전에 "일시 중지"기능을 제공하므로 게임에서 수직 동기화를 활성화하여 그래픽 쉐이더 처리를 일시 중지하고 vsync 오프 프레임은 최대한 빨리 전체 그래픽로드를 생성합니다.
Mokubai

개인적으로 Adaptive V-sync를 사용하고 있지만 일부 게임에서는 눈물이 더 심하다. 내 GPU는 대개 대부분의 게임 (GTX 970 MSI)에서 최대 50-80 % 정도입니다. 나는 약간의 포스트 프로세싱과 AA를 눈에 띄는 수준으로 또는 프레임 /로드 (보통 무시할 정도)에 따라 조정하는 경향이있다. MSI 애프터 버너 (Afterburner)를 사용하여 사용량을 모니터링하고 여분의 주스가 정말로 필요한 경우 ~ 10 % 증가 할 수있는 여유 공간이 있습니다. CUDA를 사용하여 렌더링하거나 변환하는 것이 명시 적으로 명확하게 만들어지지 않았기 때문에 게임 성능을 병에 넣을 지 확신하지 못했습니다.
Remy Baratte
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.