-
Notifications
You must be signed in to change notification settings - Fork 186
Docker refactor, parameterizes OS and compiler versions. #267
Conversation
065362d
to
5589926
Compare
5589926
to
7414de3
Compare
6e92dd2
to
72c032c
Compare
a19733e
to
369fd23
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This already looks great.
I am super looking forward to using this
docker2/config.Dockerfile
Outdated
|
||
ADD . /libcudacxx | ||
|
||
# Install compiler and configure project |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this really install the compiler?
docker2/driver.Dockerfile
Outdated
# Released under the Apache License v2.0 with LLVM Exceptions. | ||
# See https://llvm.org/LICENSE.txt for license information. | ||
|
||
# ARG BASE_IMAGE=nvcr.io/nvidia/nvhpc:22.3-devel-cuda_multi-ubuntu20.04 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should that be something conditional like below
if [ ${NVCXX_ENABLED} ]; then
BASE_IMAGE="nvcr.io/nvidia/nvhpc:22.3-devel-cuda_multi-ubuntu20.04"
else
BASE_IMAGE="nvcr.io/nvidia/cuda:11.7.0-devel-ubuntu22.04"
fi;
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's no conditionals in dockerfiles, it can only be parameterized.
At least I think.
docker2/wrapper.sh
Outdated
EMPTY_DIR=$(mktemp -d) | ||
|
||
LIBCUDA=$(ldconfig -p | grep libcuda.so | tr ' ' '\n' | grep / | head -n 1 | tr '\n' ' ' | sed 's/ *$//') | ||
LIBNVIDIAPTXJITCOMPILER=$(ldconfig -p | grep libnvidia-ptxjitcompiler.so | tr ' ' '\n' | grep / | head -n 1 | tr '\n' ' ' | sed 's/ *$//') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we add some underscores here to make it somewhat readable?
1233ac9
to
6e81028
Compare
* Works seemlessly with VSCode + Docker extension. * manual bringup: `docker compose up --profile clang-14` or whatever compiler
db268c9
to
2e34809
Compare
@miscco Give this a shot, on Windows + VSCode it's pretty stellar. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am loving it!
Ideally we instead generate one layer that handles all dialects.
CMake demands a CUDA Toolkit be present, currently internal builds of the runtime do not satisfy that requirement so we must still sync from nvcr.io.