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ę.

You can switch OpenCL support off and on at any time without requiring a restart. Depending on the type of modules you are using, you will notice the effect as a general speed-up during interactive work and export. Most modules in darktable can take advantage of OpenCL but not all modules are demanding enough to make a noticeable difference. In order to feel a real difference, use modules like diffuse or sharpen, and denoise (profiled).

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