내 노트북에는 NVIDIA Optimus가 있습니다 (그래서 Intel GPU가 있습니다).Direct2D의 D2D1CreateFactory()를 사용하여 GPU를 선택하는 방법은 무엇입니까?
그러나 더 나은 성능을 얻으려면 Direct2D 용 NVIDIA 카드를 사용하고 싶습니다.
(NVIDIA 설정을 수정하고 싶지 않습니다. 프로그램 자체에서 어댑터를 선택하고 싶습니다.)
어떻게하면됩니까?
내가 장치 또는 어댑터를 선택할 수있는 D2D1CreateFactory
에서 찾을 수있는 옵션이 없습니다 ... 항상 기본 GPU를 선택하는 것 같습니다. 기본이 아닌 GPU에 대해 ID2D1Factory
을 얻으려면 어떻게해야합니까?
감사합니다. *** 많은 *** 고통 스럽습니다. 이를 시도하는 다른 누구에게나 인텔 HD 그래픽 4600에서 NVIDIA GeForce GT 750M으로가는 비트는 성능에 도움이되지 않는 것 같습니다. – Mehrdad
@Mehrdad Np. Framerate는 vsync에 내부적으로 제한 될 수 있습니다. 게다가, 당신은 실제로 두 가지의 차이를보기 위해 D2D를 밀어 넣을 필요가 있다고 생각합니다. 그리고 QueryPerformanceCounter()만으로 속도를 끌어 올리면됩니다. * 추신 : 인텔 4600 꽤 좋습니다! * – CodeAngry
병목 현상은 하드웨어가 아닌 Direct2D의 코드 자체 (스택 추적에 따라 CWidener 클래스)입니다. GPU 사용률이 20-30 %에 불과합니다 (기본적으로 화면에 수천 줄의 선을 그립니다). – Mehrdad