Package: john Version: 1.8.0-2+b1 Severity: important Upstream JtR supports OpenCL, but the Debian package is compiled without it.
$ /usr/sbin/john --devices=0 --test --format=sha256crypt-opencl Unknown option: "--devices=0" $ Manually built john from upstream github repo, and libraries available in Debian: user@debian:~/JohnTheRipper/run$ ./john --test --format=md5crypt Will run 32 OpenMP threads Benchmarking: md5crypt, crypt(3) $1$ [MD5 256/256 AVX2 8x3]... (32xOMP) DONE Raw: 1070K c/s real, 35925 c/s virtual user@debian:~/JohnTheRipper/run$ ./john --devices=0 --test --format=md5crypt-opencl Device 0: pthread-AMD Ryzen Threadripper 2950X 16-Core Processor Benchmarking: md5crypt-opencl, crypt(3) $1$ [MD5 OpenCL]... DONE Raw: 141784 c/s real, 4752 c/s virtual user@debian:~/JohnTheRipper/run$ ./john --devices=1 --test --format=md5crypt-opencl Device 1: gfx803 [Fiji [Radeon R9 FURY / NANO Series]] Benchmarking: md5crypt-opencl, crypt(3) $1$ [MD5 OpenCL]... DONE Raw: 2692K c/s real, 135987K c/s virtual user@debian:~/JohnTheRipper/run$ On the other hand Debian package doesn't support OpenCL (nor OpenMP, nor AVX): user@debian:~/JohnTheRipper/run$ /usr/sbin/john --devices=1 --test --format=md5crypt-opencl Unknown option: "--devices=1" user@debian:~/JohnTheRipper/run$ /usr/sbin/john --test --format=md5crypt-opencl Unknown ciphertext format name requested user@debian:~/JohnTheRipper/run$ /usr/sbin/john --test --format=md5crypt Benchmarking: md5crypt [MD5 32/64 X2]... DONE Raw: 21050 c/s real, 21092 c/s virtual user@debian:~/JohnTheRipper/run$ (~100 times slower) Both OpenCL and OpenMP should be enabled, as that will still make possible to run john on even the old hardware (as I understand the amd64 binary is only configured to support SSE2, and that is understandable, to support older CPUs in Debian, that might not support AVX/AVX2, and because john doesn't support multiple versions of code paths in single binary). (PS. Again this is not about AVX, just OpenCL part). PS2. There is about 40 OpenCL kernels in John, for most of popular formats. Best regards, Witold -- System Information: Debian Release: buster/sid APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.18.0-2-amd64 (SMP w/32 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages john depends on: ii john-data 1.8.0-2 ii libc6 2.27-8 john recommends no packages. Versions of packages john suggests: ii wamerican [wordlist] 2018.04.16-1 ii wamerican-huge [wordlist] 2018.04.16-1 ii wamerican-insane [wordlist] 2018.04.16-1 ii wamerican-large [wordlist] 2018.04.16-1 ii wamerican-small [wordlist] 2018.04.16-1 ii wbrazilian [wordlist] 3.0~beta4-22 ii wbritish [wordlist] 2018.04.16-1 ii wbritish-huge [wordlist] 2018.04.16-1 ii wbritish-insane [wordlist] 2018.04.16-1 ii wbritish-large [wordlist] 2018.04.16-1 ii wbritish-small [wordlist] 2018.04.16-1 ii wbulgarian [wordlist] 4.1-6 ii wcanadian [wordlist] 2018.04.16-1 ii wcanadian-huge [wordlist] 2018.04.16-1 ii wcanadian-insane [wordlist] 2018.04.16-1 ii wcanadian-large [wordlist] 2018.04.16-1 ii wcanadian-small [wordlist] 2018.04.16-1 ii wcatalan [wordlist] 0.20111230b-12 ii wdanish [wordlist] 1.6.36-11 ii wdutch [wordlist] 1:2.10-6 ii wfrench [wordlist] 1.2.4-1 ii wgerman-medical [wordlist] 20160103-2 ii witalian [wordlist] 1.10 ii wngerman [wordlist] 20161207-5 ii wnorwegian [wordlist] 2.2-4 ii wpolish [wordlist] 20180621-1 ii wportuguese [wordlist] 20171225-2 ii wspanish [wordlist] 1.0.28 ii wswedish [wordlist] 1.4.5-2.2 ii wukrainian [wordlist] 1.7.1-2 -- no debconf information