Develop. Test. Debug. Automate.

We provide tools that help you test and debug the software that you develop.

You can also automate their usage for use in your unit tests, smoke tests and regression tests.

We help you to find and fix bugs faster, and more reliably.

Our goal is to make you more productive and successful.

A change in perspective is worth 80 IQ points

Are you tired of tools that collect lots of valuable data but then don’t allow you to inspect that data thoroughly?

Just looking at the problem (or the data) in a different way can let you see the problem differently. The “Eureka!” moment.

Following this philosophy, we’ve created tools that provide multiple ways of inspecting and querying your data, allowing you to understand aspects of your software that were previously unavailable to you.

 

Memory Validator's memory usage and memory leak summary page

Applications, Services and IIS

Applications

Modern software engineering practices mean that many technologies are in use. Compiled software (native) and just-in-time compiled software (.Net) are used for many applications. Some applications use both technologies. Whichever way you develop, we have tools that support those technologies.

  • Native applications.
  • .Net applications.
  • .Net Core applications.
  • Mixed mode applications (native and .Net technology in the same application).
  • Applications
  • Applications launched from other applications
  • Application launched from batch files
  • Language and product extensions (JNI extensions to Java, Python extensions, AutoCAD arx extensions, etc)
Launch Dialog

Services

.Net Services are supported.

Native Services are supported with the Software Verify Service API.

Monitor a service dialog

IIS and WDS

ASP.NET is supported.

ISAPI DLLs are supported with the Software Verify Service API.

Start ASP.Net application on IIS

Work the way you want

GUI

For an interactive exploration of the collected data, we provide multiple user interfaces to show different perspectives on the data.

Most user interfaces support context menus to allow you to filter the data, or change the perspective by displaying the data on another view.

Performance Validator line timing context menu

Command Line / Automation

If you like to run automated tests, unit tests, regression tests, smoke tests etc., we have a command line that allows you to automate our software tools.

Don’t like writing command lines? We have that covered too.

Find any already launched program on the launch dialog, select it, the command line builder will automatically create your command line for you.

Command Line Builder Wizard

API (fit and forget)

You don’t need to use our API for most things, but if you choose to do so, you can fit it and forget it.

If your software using the API is installed on a computer without the Validator (for example, a customer machine) the API will do nothing.

This allows you to ship your development code with the API installed because it won’t do anything unless your software has been started from the Validator.

Only native services and IIS ISAPI need to use the API. For everything else, API use is optional.

API source code example

Your favourite compilers and IDEs

We support your compiler / IDE, and support all Windows operating systems all the way back to Windows XP, including Windows Embedded.

  • Native, .Net, .Net, mixed mode
  • C, C++
  • C#, C++.Net, F#, J#
  • Visual Basic 6, VB.Net
  • Delphi
  • Fortran (95, 2003, 2008, 2018)
  • Visual Studio
  • C++ Builder
  • Delphi
  • Rad Studio
  • Intel Performance compiler
  • Qt Creator
  • MinGW gcc / g++ compiler
  • Clang / LLVM compiler
  • Salford Software Fortran
  • Compaq Fortran

Tools by debugging activity

One Tool For Each Job

We think software tools should concentrate on one job at a time. Your memory leak tool should be all about memory issues – it shouldn’t be trying to be a performance profiler and a deadlock detector at the same time.

The right tool for each job.

If you develop for Windows and use Visual Studio, C++ Builder, Delphi, QtCreator, MingW we have tools to help you. They can help you to find and fix bugs in C, C++, Delphi, Fortran, Visual Basic, C# and VB.Net.

We’ve helped thousands of software developers find, fix, and prevent bugs.

For 21 years we’ve been providing tools to tackle the biggest problems out there: our happy customers include giants like Adobe, Cisco, Intel, UBS, and HP.

Coverage Validator screenshot

Testimonials

T.B, Canada

I’m not getting much time these days to offer as much feedback as I would like, but I’m making good use of Memory Validator and Coverage Validator. These two tools have become a staple in my toolbox. Still looking forward to a new Thread Validator, nobody else (that I know of) can do a good job of this.

T.B, Canada

Thanks, this version works fine. Reran my big coverage run and it took 8.6 hours to run, very impressive considering it takes Rational Coverage 30 hrs. to do the same thing.

The source code is ~800,000 lines. I am running ~150 runs of the test driver with different input specifications.

Sam Anderson
Senior Engineer & WoW Lua User

I just installed and used Lua Coverage Validator for the first time. LCV is very impressive. I’ll be sending feedback as I use this. I did not try the tutorial, and that’s on my to-do list. Great product from what I touched on the first time. It identified one whole area of code missed by the tests, and that was just my first time watching it run.

Keith Sabine
Software Consultant

Once again, great product, found a whole mass of leaks I was not aware of (and some that I was)!

You’re more than welcome! I had looked at several memory debugging packages, but most of these required a lot of work to get up and running. Memory Validator on the other hand was easy – no changes to my code, up and running and finding leaks and errors in minutes.

Fabrizio Oddone
Ixia Communications

First off, congratulations on this great product of yours. With all these code reviews, I only wish I could use your products more often.

Barry Etter
Team Lead, Product Development

Now, that IS impressive! Talk about customer service! Your tool has been very impressive thus far, making our previous purchases of DevPartner, HeapAgent and Purify a waste. Our application uses so much memory (250MB at startup, 1.4GB during full load), the other tools simply couldn’t handle it. The ability to start and stop data collection is key because of our application’s enormous initialization routine.

Jan Olderdissen
Omni Orb Developer

The Memory Validator folks (softwareverify.com) were very courteous and helpful. Their tech support quickly jumped on the two bugs I reported. As of today, these issues have been resolved and I can recommend Memory Validator as a good balance between performance and strictness for use with omniorb.

Recent News

Slicing and dicing by memory allocator

We’ve just released Memory Validator 9.63. This release introduces improvements for viewing trending statistics by allocator type. The Job To Be Done behind these changes […]

Memory Fragmentation – mvFragmentation

Many software engineers and their managers struggle to understand what memory fragmentation is and the effects memory fragmentation can have on the software they produce. […]

The Command Line Builder

Last week we introduced the command line builder to all our Validator tools.

Using and Debugging Environment Variables

Environment variables can be used to configure the various Validator tools that we provide.

Exceptions Codes you’ve never heard of

If you write software for any length of time you’ll have seen your software fail in a variety of ways.

Fully functional, free for 30 days