# GpuOwL

Workload type |
LL, PRP |

First release |
2017 |

Latest version |
2.0 |

**gpuOwL** (also written as **GpuOwl**) is a OpenCL-based program written by Mihai Preda for testing Mersenne numbers for primality.

gpuOwL was developed from scratch, based mainly on the article "Discrete Weighted Transforms and Large Integer Arithmetic" by Richard Crandall and Fagin (1994). It uses IBDWT method. The author's goal was to create the fastest possible implementation of Lucas-Lehmer test (LL) using AMD GPUs.

Apart from the LL test, gpuOwL also implements a base-3 PRP test with Gerbicz error checking ensuring correct results even after long computation.

The code is self-contained, without dependencies on external libraries (such as an FFT library). The only requirements are a C++ compiler and an OpenCL implementation.

The program was used to verify Mersenne prime M50 at the time of its discovery.

## External links

- gpuOwL source code at GitHub
- gpuOwL V.1.x branch at GitHub (version 1 uses 4M FFT and is about 50% faster than version 2) [1]
- gpuOwL thread at MersenneForum