mirror of
https://github.com/andreinechaev/nvcc4jupyter.git
synced 2026-06-14 03:00:47 +05:30
Feature: Passing arguments to NVCC compiler (#26)
* Add option to give nvcc extra arguments * Add test for nvcc options that changes c++ dialect from c++17 to c++14 * Add make and the english language pack to devcontainer to be able to build the documentation * Update documentation config to automatically import the current version of the package * Document new --compiler-args argument * Improve tests coverage by testing for bad arguments and the error output during a failed compilation * Add IPython to docs requirements to allow the __version__ import for readthedocs env * Change devcontainer base image to have the latest CUDA toolkit * Mock the nsight compute tool with a bash script * Add test to compile with opencv * Add new page to documentation that contains a new notebook that explains compiling with external libraries * Add autodocstring vscode extension to devcontainer * Add function that modifies the default profiler/compiler arguments to allow reusing them in multiple magic command calls * Update pylint exceptions * Update contributing instructions * Change version from 1.0.3 to 1.1.0 due to adding features in a backward-compatible manner * Install latest CUDA toolkit on the test runner to pass the OpenCV compilation test * Install opencv in test runner and update code coverage install * Add CUDA bin to PATH in test and coverage runners * Add cuda bin to path variable in .bashrc * Update way to set environment variable PATH in github action * Change devcontainer base image back to ubuntu:22.04 to match the environment from the test runner
This commit is contained in:
committed by
GitHub
parent
5cd225851b
commit
781ff5b76b
@@ -0,0 +1,34 @@
|
||||
*********
|
||||
Notebooks
|
||||
*********
|
||||
|
||||
This page provides a list of useful Jupyter notebooks written with the
|
||||
**nvcc4jupyter** library.
|
||||
|
||||
.. note::
|
||||
These notebooks are written for Google's Colab, but you may run them in
|
||||
other environments by installing all expected dependencies. If running in
|
||||
Colab, make sure to set the runtime type to a GPU instance (at the time of
|
||||
writing this, T4 is the GPU offered for free by Colab).
|
||||
|
||||
------
|
||||
|
||||
.. _compiling_with_external_libraries:
|
||||
|
||||
Compiling with external libraries
|
||||
=================================
|
||||
|
||||
[`NOTEBOOK <https://colab.research.google.com/drive/1iuY46DCwv4hy3SqDhJgFeO8kgpHnzjTh?usp=sharing>`_]
|
||||
|
||||
If you need to compile CUDA C++ code that uses external libraries in the host
|
||||
code (e.g. OpenCV for reading and writing images to disk) then this section is
|
||||
for you.
|
||||
|
||||
To achieve this, use the :ref:`compiler-args <compiler_args>` option of the
|
||||
:ref:`cuda <cuda_magic>` magic command to pass the correct compiler options
|
||||
of the OpenCV library to **nvcc** for it to link the OpenCV code with the
|
||||
code in your Jupyter cell. Those compiler options can be provided by the
|
||||
`pkg-config <https://www.freedesktop.org/wiki/Software/pkg-config/>`_ tool.
|
||||
|
||||
In the notebook we show how to use OpenCV to load an image, blur it with a CUDA
|
||||
kernel, and then save it back to disk using OpenCV again.
|
||||
Reference in New Issue
Block a user