Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
guix-hpc
guix-hpc-non-free
Commits
ecffef86
Commit
ecffef86
authored
Sep 03, 2020
by
Ludovic Courtès
Browse files
cuda: Add 11.0.3.
* non-free/cuda.scm (cuda-11.0): New variable. (no-float128)[description]: Mention CUDA 8.0.
parent
4b9f8793
Changes
1
Hide whitespace changes
Inline
Side-by-side
non-free/cuda.scm
View file @
ecffef86
...
...
@@ -6,7 +6,7 @@
;;; are detrimental to user freedom and to proper scientific review and
;;; experimentation. As such, we kindly invite you not to share it.
;;;
;;; Copyright © 2018, 2019 Inria
;;; Copyright © 2018, 2019
, 2020
Inria
(
define-module
(
non-free
cuda
)
#
:use-module
(
guix
)
...
...
@@ -137,6 +137,77 @@ libraries for NVIDIA GPUs, all of which are proprietary.")
"https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda_8.0.61_375.26_linux-run"
"1i4xrsqbad283qffvysn88w2pmxzxbbby41lw0j1113z771akv4w"
)))
(
define-public
cuda-11
.
0
(
package
(
inherit
cuda-8
.
0
)
(
version
"11.0.3"
)
(
source
(
cuda-source
"https://developer.download.nvidia.com/compute/cuda/11.0.3/local_installers/cuda_11.0.3_450.51.06_linux.run"
"1h4c69nfrgm09jzv8xjnjcvpq8n4gnlii17v3wzqry5d13jc8ydh"
))
(
outputs
'
(
"out"
))
;XXX: no documentation for now
(
arguments
(
substitute-keyword-arguments
(
package-arguments
cuda-8
.
0
)
((
#
:modules
modules
)
`
((
guix
build
utils
)
(
guix
build
gnu-build-system
)
(
ice-9
match
)
(
ice-9
ftw
)))
;for 'scandir'
((
#
:phases
phases
)
`
(
modify-phases
,
phases
(
replace
'unpack
(
lambda*
(
#
:key
inputs
#
:allow-other-keys
)
(
define
libc
(
assoc-ref
inputs
"libc"
))
(
define
ld
.
so
(
string-append
libc
,
(
glibc-dynamic-linker
)))
(
let
((
source
(
assoc-ref
inputs
"source"
)))
(
invoke
"sh"
source
"--keep"
"--noexec"
)
(
chdir
"pkg"
)
#t
)))
(
add-after
'unpack
'remove-superfluous-stuff
(
lambda
_
;; Remove things we have no use for.
(
with-directory-excursion
"builds"
(
for-each
delete-file-recursively
'
(
"nsight_compute"
"nsight_systems"
"cuda_gdb"
)))
#t
))
(
replace
'install
(
lambda*
(
#
:key
inputs
outputs
#
:allow-other-keys
)
(
let
((
out
(
assoc-ref
outputs
"out"
)))
(
define
(
copy-from-directory
directory
)
(
for-each
(
lambda
(
entry
)
(
define
sub-directory
(
string-append
directory
"/"
entry
))
(
define
target
(
string-append
out
"/"
(
basename
entry
)))
(
when
(
file-exists?
sub-directory
)
(
copy-recursively
sub-directory
target
)))
'
(
"bin"
"targets/x86_64-linux/lib"
"targets/x86_64-linux/include"
"nvvm/bin"
"nvvm/include"
"nvvm/lib64"
)))
(
setenv
"COLUMNS"
"200"
)
;wide backtraces!
(
with-directory-excursion
"builds"
(
for-each
copy-from-directory
(
scandir
"."
(
match-lambda
((
or
"."
".."
)
#f
)
(
_
#t
))))
;; 'cicc' needs that directory.
(
copy-recursively
"cuda_nvcc/nvvm/libdevice"
(
string-append
out
"/nvvm/libdevice"
)))
#t
)))
;; XXX: No documentation for now.
(
delete
'move-documentation
)))))
(
native-inputs
`
((
"which"
,
which
)
,@
(
package-native-inputs
cuda-8
.
0
)))))
(
define-public
cuda
;; Default version.
cuda-8
.
0
)
...
...
@@ -171,7 +242,7 @@ libraries for NVIDIA GPUs, all of which are proprietary.")
(
description
"This package provides a @file{<bits/floatn.h>} header to override that
of glibc and disable float128 support. This is required allow the use of
@command{nvcc} with glibc 2.26+. Otherwise, @command{nvcc} fails like this:
@command{nvcc} with
CUDA 8.0 and
glibc 2.26+. Otherwise, @command{nvcc} fails like this:
@example
/gnu/store/…-glibc-2.26.105-g0890d5379c/include/bits/floatn.h(61): error: invalid argument to attribute \"__mode__\"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment