/ / Czy replikacja danych globalnych na urządzeniu zgodnym z OpenCL poprawi wydajność? - opencl, gpu, gpgpu, amd-processor

Czy replikacja danych globalnych na urządzeniu zgodnym z OpenCL zwiększy wydajność? - opencl, gpu, gpgpu, AMD-procesor

Mam dość mały zestaw danych, ale wystarczająco dużyże nie zmieści się w obszarze roboczym ani w prywatnych pamięciach na żadnym GPU obecnie dostępnym na rynku. Oznacza to, że każde jądro musi mieć dostęp do danych w pamięci globalnej na GPU. Jeśli powielę te dane do wielu kopii w globalnej pamięci, czy może to zwiększyć wydajność / zmniejszyć opóźnienia, czy kontroler pamięci jest restrykcyjny i pozwoli na dostęp do pamięci globalnej tylko jednemu rdzeniu naraz? Jeśli jest to specyficzne dla urządzenia, czy są jakieś modele, które mają tę funkcję?

Odpowiedzi:

1 dla odpowiedzi № 1

Jest to ściśle związane z kontrolerem pamięci karty graficznej, a wiele kopii tych samych danych nie pomoże. Nie jestem świadomy, że GPU ma więcej niż jeden kontroler pamięci do globalnego dostępu.

Wzorzec dostępu do pamięci znacznie wpłynie na ogólną przepustowość jądra. Czy masz konkretny przykład / jądro, które potrzebujesz zoptymalizować?