많은 리소스 온라인에서 '메모리', '대역폭'대기 시간이 지정된 커널의 다양한 용도를 찾을 수 있습니다. 저에게 저자는 때때로이 용어에 대한 자신의 정의를 사용하는 것으로 보이고 누군가가 명확한 구별을하는 것이 유익한 것이라면 저는 생각합니다.cuda '메모리 바인딩'vs '대기 시간 바인딩'vs '대역폭 바인딩'vs '계산 바인딩'
내 이해 : 대역폭 바운드 커널은 전역 메모리에 대한 액세스 측면에서 장치의 물리적 한계에 접근합니다. 예 : 응용 프로그램은 M2090 장치에서 177GB/s 중에서 170GB/s를 사용합니다.
레이턴시 바인딩 된 커널은 메모리 스틱으로 인한 스톨의 주된 원인입니다. 따라서 우리는 전역 메모리 버스를 포화 시키지는 않지만 커널에 데이터를 가져 오기 위해 기다려야합니다.
계산 된 바운드 커널은 커널에 메모리를 제공하는 데 문제가 없다는 가정하에 계산 시간이 지배적이며 산술과 대기 시간이 잘 겹쳐 있습니다.
이 내용이 정확하다면 '메모리 바운드'커널은 무엇이 될까요? 모호한 점이 있습니까? 그렇다면 위의 세 가지 조건으로 대화를 제한해야합니까?
감사합니다.
자주 발생하는 또 다른 경우는 없습니까? pci-e 전송 속도로 제한됩니까? – hbogert