aktywacja opencl w darktable

Korzystanie z OpenCL w darktable wymaga, aby twój komputer był wyposażony w odpowiednią kartę graficzną i wymagane biblioteki. Większość nowoczesnych kart graficznych firm NVIDIA i AMD ma pełną obsługę OpenCL. Kompilator OpenCL jest zwykle dostarczany jako część własnościowego sterownika graficznego i jest używany jako biblioteka dynamiczna o nazwie libOpenCL.so. Ta biblioteka musi znajdować się w folderze, w którym może być znaleziona przez dynamiczny linker twojego systemu.

Po uruchomieniu darktable najpierw spróbuje znaleźć i załadować libOpenCL.so, a jeśli się powiedzie, sprawdzi, czy dostępna karta graficzna obsługuje OpenCL. Aby darktable mógł korzystać z GPU, musi być dostępna wystarczająca ilość pamięci graficznej (1 GB+). Jeśli to sprawdzenie zakończy się pomyślnie, darktable spróbuje skonfigurować swoje środowisko OpenCL: należy zainicjować kontekst przetwarzania, uruchomić kolejkę obliczeniową, pliki kodu źródłowego OpenCL (rozszerzenie to .cl) muszą zostać odczytane i skompilowane oraz dołączone procedury (jądra OpenCL) muszą być przygotowane na moduły darktable. Jeśli to wszystko zakończy się pomyślnie, przygotowania są zakończone.

Domyślnie obsługa OpenCL jest aktywowana w darktable, jeśli wszystkie powyższe kroki powiodły się. Jeśli chcesz ją deaktywować, możesz to zrobić w ustawienia > przetwarzanie > cpu/gpu/memory. Ten parametr konfiguracyjny jest wyszarzony, jeśli inicjalizacja OpenCL nie powiodła się.

Możesz wyłączyć i włączyć obsługę OpenCL w dowolnym momencie bez konieczności ponownego uruchamiania. W zależności od rodzaju modułów, których używasz, zauważysz efekt w postaci ogólnego przyspieszenia pracy interaktywnej i eksportu. Większość modułów w darktable może korzystać z OpenCL, ale nie wszystkie moduły są wystarczająco wymagające, aby zrobić zauważalną różnicę. Aby poczuć prawdziwą różnicę, użyj modułów takich jak cienie i światła, wyostrzanie, filtr dolnoprzepustowy, filtr górnoprzepustowy lub nawet bardziej ekstremalne korektora kontrastu i odszumiania (profilowanego).

Jeśli jesteś zainteresowany statystykami profilowania, możesz uruchomić darktable z parametrami wiersza poleceń -d opencl -d perf. Po każdym uruchomieniu kolejki zobaczysz szczegóły czasu przetwarzania dla każdego modułu oraz jeszcze bardziej szczegółowy profil dla wszystkich używanych jąder OpenCL.

Poza przyspieszeniem nie powinieneś widzieć żadnej różnicy w wynikach przetwarzania CPU i GPU. Poza pewnymi błędami zaokrągleń wyniki mają być identyczne. Jeśli z jakiegoś powodu darktable nie zakończy poprawnie obliczeń GPU, zwykle wykryje awarię i automatycznie (i niewidocznie) powróci do przetwarzania przez procesor.

translations