Skip to content

Commit

Permalink
Added instructions for enabling GPU support
Browse files Browse the repository at this point in the history
  • Loading branch information
petargyurov committed Feb 18, 2021
1 parent 424e0b1 commit bff7c57
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 14 deletions.
48 changes: 48 additions & 0 deletions GPU_SUPPORT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# GPU Support

MegaDetector comes with GPU support which enables much faster image processing.

The following instructions are **somewhat technical** and have not been tested extensively (meaning there is a chance that you might run into some issues)

## 1. Check if have a compatible CUDA GPU.

If you don't, then you cannot proceed. You can find the [list of compatible GPUs here](https://developer.nvidia.com/cuda-gpus). It may or may not be up to date, so do some research if you believe you have a compatible GPU that isn't listed.

## 2. Update your GPU drivers to the latest version

You can find the latest drivers for your model [here](https://www.nvidia.com/download/index.aspx?lang=en-us)

## 3. Install CUDA Toolkit **10.1**

<span style="color:red">**It's important to ensure you download the exact versions specified. The app was built with them in mind and I cannot guarantee it will work with other versions.**</span>

### 3.1 Download the [Toolkit](https://developer.nvidia.com/cuda-10.1-download-archive-update2)

<div align="center">
<img src="https://i.imgur.com/XMU7NBB.png" width="500" >
</div>
<br/>
<br/>

### 3.2 Download [cuDNN **v7.6.5**](https://developer.nvidia.com/compute/machine-learning/cudnn/secure/7.6.5.32/Production/10.1_20191031/cudnn-10.1-windows10-x64-v7.6.5.32.zip) for Windows 10 _(you will need to create an NVIDIA account)_

- Extract the contents of the zip file into a temporary folder
- Copy `<tempfolder>/cuda/bin/cudnn64_7.dll` to `C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin\`
- Copy `<tempfolder>/cuda/include/cudnn.h` to `C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\include\`
- Copy `<tempfolder>/cuda/lib/x64/cudnn.lib` to `C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64\`

## 4. Add the CUDA environment variables to your PATH

You might find that they are already there in which case it's fine. Here are some screenshots to guide you:

<div align="center">
<img src="https://i.imgur.com/cgpptz2.png" width="400" >
</div>

<div align="center">
<img src="https://i.imgur.com/tC8PUY4.png" width="400" >
</div>

<div align="center">
<img src="https://i.imgur.com/Mv4eFzu.png" width="400" >
</div>
22 changes: 8 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,14 @@ The aim of this project is to provide a simple, easy to use, application that en

Using machine learning we can reduce the time it takes to sort these images by making use of _object detection_. **This application categorises your images in folders** depending on what it thinks it has detected.

## Installation (Windows Only)

Go to the [Releases page](https://github.com/petargyurov/megadetector-gui/releases) and download the provided installer for the latest available version.

### GPU Support

Read the instructions [here](https://github.com/petargyurov/megadetector-gui/blob/master/GPU_SUPPORT.md) on how to enable significantly faster processing.

## Features

### Current Features
Expand All @@ -33,20 +41,6 @@ Using machine learning we can reduce the time it takes to sort these images by m
- in-app labelling
- upload photos to a database of your choice

## Installation

Go to the [Releases page](https://github.com/petargyurov/megadetector-gui/releases) and download the provided installer for the latest available version.

### Supported Platforms

Whilst this is an Electron application which will work on most operating systems, the backend executable that it needs to be bundled with is currently only built for Windows. This will be addressed in the future: all that is required is someone with the desired OS to build the backend executable; volunteers are welcome!

Windows :heavy_check_mark:

MacOS :x:

Linux: :x:

## Contributing

This repository is for the frontend of the application. Whether to keep the backend and frontend as two separate repositories is still up for debate, but for now this is the case.
Expand Down

0 comments on commit bff7c57

Please sign in to comment.