Skip to content

Commit

Permalink
Add vscode configurations to make development easier
Browse files Browse the repository at this point in the history
  • Loading branch information
Tabrizian committed Apr 9, 2024
1 parent 4d42111 commit 6215dee
Show file tree
Hide file tree
Showing 4 changed files with 148 additions and 1 deletion.
49 changes: 49 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Copyright 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# * Neither the name of NVIDIA CORPORATION nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
# OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

FROM gitlab-master.nvidia.com:5005/dl/dgx/tritonserver:master-py3-devel

ARG USERNAME=triton-server

RUN pip3 install transformers torch

# Create the user
RUN apt-get update \
&& apt-get install -y sudo \
&& echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
&& chmod 0440 /etc/sudoers.d/$USERNAME

RUN pip3 install pre-commit ipdb

RUN apt-get install -y cmake rapidjson-dev

# ********************************************************
# * Anything else you want to do like clean up goes here *
# ********************************************************

RUN mkhomedir_helper triton-server
# [Optional] Set the default user. Omit if you want to keep the default as root.
USER $USERNAME
25 changes: 25 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"name": "Python Backend",

"build": {
"dockerfile": "Dockerfile"
},

"customizations": {
"vscode": {
"extensions": [
"ms-python.vscode-pylance",
"ms-python.python",
"ms-vscode.cpptools-extension-pack",
"ms-vscode.cmake-tools"
]
}
},

"runArgs": [ "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined", "--gpus=all", "--shm-size=2g", "--ulimit", "stack=67108864"],
"mounts": [
"source=${localEnv:HOME}/.ssh,target=/home/triton-server/.ssh,type=bind,consistency=cached",
"source=${localEnv:HOME}/scratch,target=/scratch,type=bind,consistency=cached",
"source=${localEnv:HOME}/.cache/huggingface,target=/home/triton-server/.cache/huggingface,type=bind,consistency=cached"
]
}
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
/build
/.vscode
*.so
builddir

Expand Down
74 changes: 74 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "Configure",
"type": "shell",
"command": "cmake",
"args": [
"-DCMAKE_INSTALL_PREFIX:STRING=/opt/tritonserver/",
"-DTRITON_COMMON_REPO_TAG:STRING=main",
"-DTRITON_BACKEND_REPO_TAG:STRING=main",
"-DTRITON_CORE_REPO_TAG:STRING=main",
"-DTRITON_ENABLE_STATS:STRING=ON",
"-DTRITON_ENABLE_GPU:STRING=ON",
"-DTRITON_ENABLE_ENSEMBLE:STRING=ON",
"-DTRITON_ENABLE_NVTX:STRING=ON",
"-DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE",
"-DCMAKE_BUILD_TYPE:STRING=Debug",
"-DCMAKE_C_COMPILER:FILEPATH=/usr/bin/gcc",
"-DCMAKE_CXX_COMPILER:FILEPATH=/usr/bin/g++",
"-S${workspaceFolder}",
"-B${workspaceFolder}/build",
"-G",
"Unix Makefiles"
],
"problemMatcher": []
},
{
"label": "Build",
"type": "shell",
"command": "cmake",
"args": [
"--build",
"/${workspaceFolder}/build",
"--config",
"Debug",
"--target",
"all",
"-j",
"18",
"--"
]
},
{
"label": "Install",
"type": "shell",
"command": "cmake",
"args": [
"--build",
"${workspaceFolder}/build",
"--config",
"Debug",
"--target",
"install",
"-j",
"18",
"--"
]
},
{
"label": "Build Python",
"dependsOrder": "sequence",
"dependsOn": [
"Configure",
"Build",
"Install"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}

0 comments on commit 6215dee

Please sign in to comment.