Alternative Text


Download v0.8.5

Click the download link below to download Coderrect Scanner, one tailored for HPC settings and one for systems software such as databases.


Ranked #1 by DataRaceBench

Download on Apple Store Download on Google Play

License

Coderrect Scanner is currently under an Evaluation License
(subject to change in the future).

Read the license

System Requirement

Ubuntu 14+.
CentOS 7+.
4GB+ RAM.

Read full specification

Release Notes

Add support for Fortran & support for more OpenMP (4.5 and 5) features

Read more

Quick Start


Check out Quick Start to get started, and you can try this Easy Tutorial, which walks you through using Coderrect to detect race conditions in a simple single file multi-thread C software program written with OpenMP, step by step.


Read More Tutorials
Alternative Text
FAQ

Frequently Asked Questions


Got a question? We've got answers. If you have some other questions, please contact us.

What are pre-requisites to run Coderrect successfully on my project?

Coderrect requires Linux-based OS, such as Ubuntu 14+, and CentOS 7+.  

To run Coderrect, you will need to compile your code successfully without Coderrect. For example, running make/cmake/Ninja/Bazel will build your project without errors.

How does Coderrect work internally?

Coderrect generates an intermediate representation of your source code in the form of LLVM bitcode (BC) files and then performs sophisticated static analyses based on them to find potential race conditions. 

Coderrect produces a single BC file for each build binary (an executable, a static library, or a shared library).

Does Coderrect change my build binaries?

No. Coderrect intercepts your build commands but will not change your build targets. Running Coderrect will generate exactly the same build binaries as w/o Coderrect.

What source languages are supported?

Coderrect has full support for C and C++ source code through GCC/Clang/ICC, and Fortran source code through Flang/GFortran/IFORT.

What compilers are supported?

Coderrect supports most common C/C++ compilers (GCC/Clang/ICC). However, internally Coderrect will use clang to generate LLVM bitcode. So, it may not work if your code does not compile with clang, here is an example showing the difference between clang and gcc.

Coderrect also supports Fortran compilers including Flang/GFortran/IFORT.

Where can I find the output of the code scan results?

Besides the console output, there is an HTML file named index.html generated under ./report directory by default. You can specify the location of the report through “-o <directory>” option on the command line.

What license is Coderrect under?

Coderrect is currently under an Evaluation License, and is subject to change in the future.

I think that I have found a bug, what should I do?

Please contact us (contact@coderrect.com).

What does “Coderrect” mean, and how do you pronounce it?

Coderrect is a created word by combining “Code” and “Correct”.  It simply means code-correct. Coderrect is pronounced code-rect.

What’s Coderrect?

Coderrect is a fast and scalable tool that finds race conditions in complex software. 

Updated 10/22/2020