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.