2012-04-12 3 views
2

저는 GPU 프로그래밍에 꽤 새로 왔습니다. 비디오 보드를 사용하는 다른 방법 (CUDA와 OpenCL을 제외하고)에 대해 들어 본 적이 없으므로 다른 방법이 있는지 궁금합니다. 아무도 몇 가지 예를 가르쳐 줄 수 있습니까?그래픽 카드 (CUDA 및 OpenCL 제외)를 사용하는 방법이 있습니까?

그리고 더 많은 질문 : D : OpenGL과 DirectX가 그래픽 카드를 활용합니까? 그렇다면 어떻게 말해 주실 수 있습니까?

P .: C++을 사용합니다.

편집 : 빠른 답장을 보내 주셔서 감사합니다.

내가 아는 한, 그래픽 카드는 병렬 처리 (특히 동일한 명령 다중 데이터)에 사용됩니다. 당신이 그것을 언급했다면, 나는 또한 그래픽 카드의 다른 용도가 있는지 알고 싶습니다. (특히 오래된 것들은 OpenCL과 CUDA를 지원하지 않기 때문에 병렬 처리를 할 수 없습니다) .

답변

0

OpenCL, OpenGL, DirectX 및 특정 범위에서 CUDA는 하드웨어 공급 업체가 드라이버에서 구현할 수있는 인터페이스 사양입니다. 이 인터페이스는 버스가 드라이버에 의해 구동되는 것을 활용하는데 사용될 수 있습니다. 대부분의 경우이 인터페이스에 대한 GPU입니다. GPU와 통신 할 수있는 다른 인터페이스 (WDDM은 더 많은 인터페이스를 지정합니다)가 있지만 특정 유스 케이스가 있습니다. "grahpics 카드 사용"이 의미하는 바를 명확히 할 수 있습니다.

2

Addional GPGPU 언어/Stanadards

Brook

OpenACC

OpenMP

그리고 하나 더 질문 : D : 마의 OpenGL 및 DirectX는 그래픽 카드를 활용? 그렇다면 어떻게 말해 주실 수 있습니까?

셰이더의 도입 전에, 상기 렌더링 과정이 고정 기능 circuits.After 쉐이더 모델 순차적으로 실행되었다가 도입 된 버텍스 쉐이더 프로세서와 픽셀 셰이더 프로세서 thefixed 기능 블록을 대체 하였다. 이제 각 스트림 코어는 DirectX11 및 Compute Shaders-Kernels에 도입 된 Hull 및 Doman Shader뿐 아니라 Vertex/Geometry/Pixel Shader를 실행할 수있는 통합 셰이더 프로 시저입니다. 따라서 셰이더의 전체 용량을 전혀 사용할 수 없습니다 셰이더 성능을 극대화합니다.

1

나는 GPU 프로그래밍에서 아주 새로운 그리고 난 비디오 보드

의 OpenCL 및 OpenMP의 거기를 사용하는 (떨어져 CUDA 및 OpenCL을에서) 다른 방법으로 들어하지 않았습니다. ATI는 또한 API (일종의)를 가지고 있었지만 그것이 무엇인지 불리는 것을 잊어 버렸다.

OpenGL 및 DirectX가 그래픽 카드를 활용합니까?

물론 그렇습니다. 특히 DirectX는 하드웨어 가속화에보다 쉽게 ​​접근 할 수 있도록 설계되었습니다. 같은 속도로 CPU에서 렌더링을 수행 할 수 없습니다.

, 나는 또한 당신이 그와 연동 해에 단편/픽셀 쉐이더를 사용할 수있는 카드는 소수점 텍스처 부동 지원하는 경우도 그래픽 카드

의 용도의 다른 종류가 있는지 알고 싶습니다 GPU가 CUDA/OpenCL/무엇이든 지원하지 않는 경우에도 GPU에서 일부 계산을 수행하는 텍스처. I 기술을 GDGPU라고 생각했습니다. DirectX SDK에는 얼마 전에 "GPU cloth"예제가 있었고 NVidia OpenGL SDK에는 "GDGPU fluid" and "GPU particles"이 있습니다. 이런 식으로 GPU에서 과도하게 비싼 계산 (모든 픽셀 렌더링에 대해 4096x4096 텍스처에 대한 철저한 검색 수행)을 수행하려고하면 특정 하드웨어에서 시스템을 블루 스크린 할 수 있습니다.

관련 문제