Skip to content

Commit

Permalink
Update run script for local builds
Browse files Browse the repository at this point in the history
  • Loading branch information
gigony committed Apr 17, 2021
1 parent 6cfdbfb commit c3559c8
Show file tree
Hide file tree
Showing 25 changed files with 245 additions and 219 deletions.
96 changes: 52 additions & 44 deletions 3rdparty/LICENSE.cuda
Original file line number Diff line number Diff line change
@@ -1,6 +1,16 @@
End User License Agreement
--------------------------

The CUDA Toolkit End User License Agreement applies to the
NVIDIA CUDA Toolkit, the NVIDIA CUDA Samples, the NVIDIA
Display Driver, NVIDIA Nsight tools (Visual Studio Edition),
and the associated documentation on CUDA APIs, programming
model and development tools. If you do not agree with the
terms and conditions of the license agreement, then do not
download or use the software.

Last updated: Mar 24, 2021.


Preface
-------
Expand Down Expand Up @@ -99,10 +109,6 @@ Windows platform:
---------------------------------------------------------


Release Date: May 21, 2019
--------------------------


Important Notice—Read before downloading, installing,
copying or using the licensed software:
-------------------------------------------------------
Expand Down Expand Up @@ -257,6 +263,11 @@ terms, the terms of this Agreement. Copyright to third party
software is held by the copyright holders indicated in the
third-party software or license.

Subject to the other terms of this Agreement, you may use the
SDK to develop and test applications released under Open
Source Initiative (OSI) approved open source software
licenses.


1.1.7. Reservation of Rights

Expand Down Expand Up @@ -304,12 +315,12 @@ SDK:
application where the use or failure of the system or
application can reasonably be expected to threaten or
result in personal injury, death, or catastrophic loss.
Examples include use in nuclear, avionics, navigation,
military, medical, life support or other life critical
applications. NVIDIA does not design, test or manufacture
the SDK for these critical uses and NVIDIA shall not be
liable to you or any third party, in whole or in part, for
any claims or damages arising from such uses.
Examples include use in avionics, navigation, military,
medical, life support or other life critical applications.
NVIDIA does not design, test or manufacture the SDK for
these critical uses and NVIDIA shall not be liable to you
or any third party, in whole or in part, for any claims or
damages arising from such uses.

7. You agree to defend, indemnify and hold harmless NVIDIA
and its affiliates, and their respective employees,
Expand All @@ -328,8 +339,8 @@ SDK:
1. NVIDIA or its licensors hold all rights, title and
interest in and to the SDK and its modifications and
derivative works, including their respective intellectual
property rights, subject to your rights described here .
This SDK may include software and materials from
property rights, subject to your rights under Section
1.3.2. This SDK may include software and materials from
NVIDIA’s licensors, and these licensors are intended
third party beneficiaries that may enforce this Agreement
with respect to their intellectual property rights.
Expand All @@ -338,7 +349,7 @@ SDK:
applications and your derivative works of the sample
source code delivered in the SDK, including their
respective intellectual property rights, subject to
NVIDIA’s rights described here .
NVIDIA’s rights under Section 1.3.1.

3. You may, but don’t have to, provide to NVIDIA
suggestions, feature requests or other feedback regarding
Expand Down Expand Up @@ -519,10 +530,6 @@ parties.
NVIDIA Software Development Kits
------------------------------------------------------------


Release date: August 16, 2018
-----------------------------

The terms in this supplement govern your use of the NVIDIA
CUDA Toolkit SDK under the terms of your license agreement
(“Agreement”) as modified by this supplement. Capitalized
Expand Down Expand Up @@ -582,8 +589,12 @@ nvidia-compute-license-questions@nvidia.com.

2.6. Attachment A

The following portions of the SDK are distributable under the
Agreement:
The following CUDA Toolkit files may be distributed with
Licensee Applications developed by you, including certain
variations of these files that have version number or
architecture specific information embedded in the file name -
as an example only, for release version 9.0 of the 64-bit
Windows software, the file cudart64_90.dll is redistributable.

Component

Expand Down Expand Up @@ -729,26 +740,6 @@ libcurand.so, libcurand_static.a

Component

CUDA Accelerated Graph Library

Windows

nvgraph.dll, nvgraph.lib

Mac OSX

libnvgraph.dylib, libnvgraph_static.a

Linux

libnvgraph.so, libnvgraph_static.a

Android

libnvgraph.so, libnvgraph_static.a

Component

NVIDIA Performance Primitives Library

Windows
Expand Down Expand Up @@ -814,7 +805,11 @@ libculibos.a

Component

NVIDIA Runtime Compilation Library
NVIDIA Runtime Compilation Library and Header

All

nvrtc.h

Windows

Expand Down Expand Up @@ -914,8 +909,20 @@ NVIDIA CUDA Driver Libraries

Linux

libcuda.so, libnvidia-fatbinaryloader.so,
libnvidia-ptxjitcompiler.so
libcuda.so, libnvidia-ptxjitcompiler.so

Component

NVIDIA CUDA File IO Libraries and Header

All

cufile.h

Linux

libcufile.so, libcufile_rdma.so, libcufile_static.a,
libcufile_rdma_static.a

The NVIDIA CUDA Driver Libraries are only distributable in
applications that meet this criteria:
Expand Down Expand Up @@ -1062,8 +1069,9 @@ conditions:
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS WITH THE SOFTWARE.

5. Licensee's use of the PCRE third party component is
subject to the following terms and conditions:
5. Licensee's use (e.g. nvprof) of the PCRE third party
component is subject to the following terms and
conditions:

------------
PCRE LICENCE
Expand Down
4 changes: 1 addition & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2020, NVIDIA CORPORATION.
# Copyright (c) 2020-2021, NVIDIA CORPORATION.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
Expand Down Expand Up @@ -120,11 +120,9 @@ superbuild_depend(abseil)
superbuild_depend(rmm) # this imports googletest internally
#superbuild_depend(googletest)
superbuild_depend(googlebenchmark)
#superbuild_depend(gds)
superbuild_depend(openslide)
superbuild_depend(catch2)
superbuild_depend(cli11)
superbuild_depend(pybind11)
superbuild_depend(json)

################################################################################
Expand Down
7 changes: 1 addition & 6 deletions LICENSE-3rdparty.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,16 +83,11 @@ DLPack
- https://github.com/dmlc/dlpack/blob/main/LICENSE
- Copyright: DLPack Contributors

NVIDIA CUDA TOOLKIT
NVIDIA CUDA TOOLKIT (including libcufile)
- License: NVIDIA License
- https://docs.nvidia.com/cuda/pdf/EULA.pdf
- Copyright: NVIDIA Corporation

NVIDIA cufile (GDS)
- License: NVIDIA License
- TBD
- Copyright: NVIDIA Corporation

RAPIDS RMM
- License: Apache-2.0 License
- https://github.com/rapidsai/rmm/blob/branch-0.17/LICENSE
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
`<CUDA version>` should be 11.0+ (e.g., `11.0`, `11.2`, etc.)

**NOTE:** The first cuCIM conda package (v0.19.0) would be available on 4/15/2021.
**NOTE:** The first cuCIM conda package (v0.19.0) would be available on 4/19/2021.

#### Conda (nightlies)

Expand Down
1 change: 1 addition & 0 deletions conda/environments/env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,4 @@ dependencies:
- gcc_linux-64=9
- compilers
- click
- yasm # [x86_64]
1 change: 1 addition & 0 deletions conda/recipes/libcucim/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ requirements:
build:
- cmake >=3.18.0
- {{ compiler("cxx") }}
- yasm # [x86_64]
host:
- cudatoolkit {{ cuda_version }}.*
- openslide
Expand Down
8 changes: 4 additions & 4 deletions cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2020, NVIDIA CORPORATION.
# Copyright (c) 2020-2021, NVIDIA CORPORATION.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
Expand Down Expand Up @@ -28,8 +28,6 @@ if(NOT BUILD_SHARED_LIBS)
set(BUILD_SHARED_LIBS ON)
endif()

set(CMAKE_C_FLAGS "-O2")

################################################################################
# Set definitions
################################################################################
Expand Down Expand Up @@ -110,6 +108,7 @@ target_compile_definitions(${CUCIM_PACKAGE_NAME}
CUCIM_VERSION_PATCH=${PROJECT_VERSION_PATCH}
CUCIM_VERSION_BUILD=${PROJECT_VERSION_BUILD}
CUCIM_SUPPORT_GDS=$<BOOL:${CUCIM_SUPPORT_GDS}>
CUCIM_STATIC_GDS=$<BOOL:${CUCIM_STATIC_GDS}>
_GLIBCXX_USE_CXX11_ABI=0 # TODO: create two library, one with CXX11 ABI and one without it.
)

Expand All @@ -118,7 +117,6 @@ target_link_libraries(${CUCIM_PACKAGE_NAME}
PUBLIC
${CMAKE_DL_LIBS}
$<BUILD_INTERFACE:deps::fmt>
$<BUILD_INTERFACE:deps::gds>
# $<BUILD_INTERFACE:deps::boost>
# $<BUILD_INTERFACE:deps::rmm>
# $<BUILD_INTERFACE:deps::gds>
Expand All @@ -128,6 +126,7 @@ target_link_libraries(${CUCIM_PACKAGE_NAME}
## $<INSTALL_INTERFACE:cucim::gds>
PRIVATE
deps::abseil
deps::gds
)

if (CUCIM_STATIC_GDS)
Expand Down Expand Up @@ -164,6 +163,7 @@ target_compile_definitions(${CUCIM_PACKAGE_NAME}-header-only
CUCIM_VERSION_PATCH=${PROJECT_VERSION_PATCH}
CUCIM_VERSION_BUILD=${PROJECT_VERSION_BUILD}
CUCIM_SUPPORT_GDS=$<BOOL:${CUCIM_SUPPORT_GDS}>
CUCIM_STATIC_GDS=$<BOOL:${CUCIM_STATIC_GDS}>
CUCIM_HEADER_ONLY=1
)
target_compile_features(${CUCIM_PACKAGE_NAME}-header-only INTERFACE ${CUCIM_REQUIRED_FEATURES})
Expand Down
39 changes: 0 additions & 39 deletions cpp/cmake/deps/gds.cmake

This file was deleted.

14 changes: 11 additions & 3 deletions cpp/include/cucim/filesystem/cufile_driver.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2020, NVIDIA CORPORATION.
* Copyright (c) 2020-2021, NVIDIA CORPORATION.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -31,6 +31,14 @@ using ScopedLock = std::scoped_lock<Mutex>;
// Forward declaration.
class CuFileDriver;


/**
* @brief Check if the GDS is available in the system.
*
* @return true if libcufile.so is loaded and cuFileDriverOpen() API call succeeds.
*/
bool EXPORT_VISIBLE is_gds_available();

/**
* Open file with specific flags and mode.
*
Expand Down Expand Up @@ -116,11 +124,11 @@ class CuFileDriverInitializer
{
return is_available_;
}
inline uint64_t max_device_cache_size()
inline uint64_t max_device_cache_size() const
{
return max_device_cache_size_;
}
inline uint64_t max_host_cache_size()
inline uint64_t max_host_cache_size() const
{
return max_host_cache_size_;
}
Expand Down
3 changes: 1 addition & 2 deletions cpp/plugins/cucim.kit.cuslide/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Apache License, Version 2.0
# Copyright 2020 NVIDIA Corporation
# Copyright 2020-2021 NVIDIA Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -127,7 +127,6 @@ add_definitions(-D_GLIBCXX_USE_CXX11_ABI=0) # TODO: create two library, one with
superbuild_depend(fmt)
superbuild_depend(libjpeg-turbo) # libjpeg-turbo should be located before libtiff as libtiff depends on libjpeg-turbo
superbuild_depend(libtiff)
superbuild_depend(gds)
superbuild_depend(catch2)
superbuild_depend(openslide)
superbuild_depend(googletest)
Expand Down
Loading

0 comments on commit c3559c8

Please sign in to comment.