Które kombinacje wersji TensorFlow i CUDA są kompatybilne?
145
Zauważyłem, że niektóre nowsze wersje TensorFlow są niekompatybilne ze starszymi wersjami CUDA i cuDNN. Czy istnieje przegląd kompatybilnych wersji lub nawet lista oficjalnie przetestowanych kombinacji? Nie mogę znaleźć tego w dokumentacji TensorFlow.
Pytanie dotyczyło kompatybilności i (oficjalnie) przetestowanych kombinacji, których moim zdaniem nie ma w instrukcji instalacji. Nie mogę też znaleźć sekcji, do której się odnosisz. Z tych uwag wynika, że w moim ogólnym przekonaniu poszukiwane informacje są trudne do znalezienia i dlatego uzasadniają one zapewnienie łatwego dostępu do odsyłacza zamieszczonego w odpowiedzi.
Och, rozumiem, co masz na myśli - próbując sprawdzić, która wersja tensorflow pasuje do określonej kombinacji CUDA / cuDNN. Mógłbyś przejrzeć informacje o wydaniu TF, ale tabela, do której linkujesz, jest rzeczywiście dobrym podsumowaniem.
Tabela kompatybilności podana na stronie tensorflow nie zawiera określonych wersji pomocniczych dla cuda i cuDNN. Jeśli jednak określone wersje nie zostaną spełnione, podczas próby użycia tensorflow wystąpi błąd.
Dla tensorflow-gpu==1.12.0i cuda==9.0kompatybilna cuDNNwersja to 7.1.4, którą można pobrać stąd po rejestracji.
Możesz sprawdzić swoją wersję CUDA za pomocą nvcc --version
Wersja cuDNN używająca cat /usr/include/cudnn.h | grep CUDNN_MAJOR -A 2
Wersja tensorflow-gpu używająca pip freeze | grep tensorflow-gpu
AKTUALIZACJA:
Od czasu wydania tensorflow 2.0 udostępnię również kompatybilne wersje cuda i cuDNN (dla Ubuntu 18.04).
Twoja odpowiedź była bardzo przydatna. Tak jak powiedziałeś, dokumentacja nie była zbyt jasna, aby przywołać pomniejsze wersje. Śledziłem twoją konfigurację i zadziałało!
Podobny problem miałem po aktualizacji do TF 2.0. Wersja CUDA, którą raportował TF, nie pasowała do tego, co według mnie Ubuntu 18.04 zainstalowałem. Napisał, że używam CUDA 7.5.0, ale apt pomyślał, że mam zainstalowaną odpowiednią wersję.
Co ja w końcu musiałem zrobić, to grep rekurencyjnie w /usr/localza CUDNN_MAJOR, i okazało się, że /usr/local/cuda-10.0/targets/x86_64-linux/include/cudnn.hrzeczywiście było określić jako wersję 7.5.0. /usr/local/cuda-10.1zrozumiałem i /usr/local/cudawskazałem /usr/local/cuda-10.1, więc było (i pozostaje) tajemnicą dla mnie, na co patrzy TF /usr/local/cuda-10.0.
W każdym razie przeniosłem się /usr/local/cuda-10.0do /usr/local/old-cuda-10.0TF, więc nie mogłem go już znaleźć i wszystko działało jak urok.
To wszystko było bardzo frustrujące i nadal czuję, że właśnie zrobiłem przypadkowego włamania. Ale zadziałało :) i może to pomoże komuś z podobnym problemem.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.