Skip to content

Draft: nongnu: Add cudnn.

Petr Hodina requested to merge phodina/nonguix:patch/cuda-toolkit into master
  • nongnu/packages/nvidia.scm (cudnn): New variables.

This will add support for CUDA on Nvidia GPUs to allow machine-learning algos and other parallel stuff to run.

Currently I'm stuck on unpacking and running the installer.

[ ] Based on the strace log it seems it depends on libncurses.so.5:

$  /gnu/store/7aq8fzd1rc4cgcvwkcqmbcr19b3l2m74-strace-5.15/bin/strace ./cuda-installer
...
openat(AT_FDCWD, "/gnu/store/9rrnm5hdjw7cy96a2a9rfgh6y08wsbmf-ncurses-6.2.20210619/lib/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "glibc-hwcaps/x86-64-v3/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "glibc-hwcaps/x86-64-v2/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "tls/haswell/x86_64/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "tls/haswell/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "tls/x86_64/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "tls/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "haswell/x86_64/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "haswell/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "x86_64/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/gnu/store/5h2w4qi9hk1qzzgi1w83220ydslinr4s-glibc-2.33/lib/libncurses.so.5", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
write(2, "Failed to load required ncurses "..., 41Failed to load required ncurses libraries) = 41
write(2, "\n", 1
)                       = 1
stat("/tmp/cuda-installer.log", {st_mode=S_IFREG|0644, st_size=197, ...}) = 0
newfstatat(1, "", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x5), ...}, AT_EMPTY_PATH) = 0
write(1, " Logfile is /tmp/cuda-installer."..., 36 Logfile is /tmp/cuda-installer.log
) = 36
close(3)                                = 0
exit_group(1)                           = ?
+++ exited with 1 +++

[ ] Besides it also needs a lot of space ~7GiB on /tmp which means it fails on devices with low amount of RAM or if the RAM is used by other applications.

Merge request reports