Stress Test Tool Open Source

  • The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to other test functions. What can I do with it?
  • K6 is a developer-centric, open-source load testing tool for testing the performance of your back-end infrastructure. K6 is also Modern load testing tools built with Go and JavaScript so it integrates well into most developers workflow.

Updated: January 2, 2021 Home » Freeware and Software Reviews

Stress Prime Orthos is a simple freeware to perform CPU stress test and RAM stress test. After the stress test is performed, you can view the information about errors and warnings, if encountered during the test. You can choose which stress test you want to perform, from the options: Small FFTs – stress CPU. There are indeed open source load and stress testing tools, and it's probably not a bad idea to explore them. But according to the experts who advised me, you shouldn't imagine that they are equal.

Is your graphics card memory free of errors? If you overclock them and it overheats, chances are, the RAM memory might be damaged. Unlike other components in your desktop, if a memory fails be it RAM or GPU’s Memory errors, your system will automatically reboot itself, sometimes it will display the Blue Screen of Death.

Alternative 2020 Article ➤ 4 Free Tools To Test RAM Memory For Windows, Linux and Mac

The only way to know if your GPU’s memory is fault is to perform a stress test on the GPU memory quickly and thoroughly! Below are 5 very useful tools to stress test your GPU.

↓ 01 – Video Memory stress Test | 40 Test | Free

Video Memory Stress Test is a small application that is free for home use (but paid for commercial use) and is designed to test the RAM on your video card. Similar to Memtest86+, it will read and write data to each part of the video cards RAM and log any errors found. This test allow you to completely test your video RAM (accessible to DirectX). The best way to check stability after overclocking ;)

↓ 02 – OCCT | Free | Pro

OCCT is a stability checking tool, free for personal use. It comes with 4 built-in test aimed at testing CPUs, GPUs and Power supplies. OCCT also monitors in temperatures, voltages and fan speed, as well as system constants such as CPU Usage, Memory Usage and FPS (if testing in 3d).

↓ 03 – GpuMemTest | nVidia Only

GpuMemTest is suitable for anyone who wants to verify that their hardware is not faulty. GpuMemTest is suitable for overclockers (only on nVidia GPUs!) who want to quickly determine the highest stable memory frequency. We recommend setting the memory frequency to be no higher than 90% of the highest stable frequency. Please do not use GpuMemTest for overclocking on AMD GPUs, as it might fail to detect errors. GpuMemTest is suitable for CUDA and OpenCL programmers, because having confidence in hardware is necessary for serious application development.

↓ 04 – FurMark | OpenGL

FurMark is a very intensive OpenGL benchmark that uses fur rendering algorithms to measure the performance of the graphics card. Fur rendering is especially adapted to overheat the GPU and that’s why FurMark is also a perfect stability and stress test tool (also called GPU burner) for the graphics card.

↓ 05 – GpuTest | Linux | Windows | macOS

GpuTest is a cross-platform (Windows, Linux and Max OS X) GPU stress test and OpenGL benchmark. GpuTest comes with several GPU tests including some popular ones from Windows’world (FurMark or TessMark). The number of GPU tests grows with the new versions of the tool. The foolowing tests are available in the latest version:

  • FurMark based stress test (OpenGL 2.1 or 3.2).
  • TessMark based tessellation test (OpenGL 4.0).
  • GiMark: geometry instancing test (OpenGL 3.3).
  • PixMark Piano pixel shader test (OpenGL 2.1 or 3.2).
  • PixMark Volplosion pixel shader test (OpenGL 2.1 or 3.2).
  • Plot3D vertex shader test (OpenGL 2.1 or 3.2).
  • Triangle one of the most simple 3D scene ever made… (OpenGL 2.1 or 3.2).

↓ 06 – EVGA OC Scanner X | Free For EVGA Cards

Introducing EVGA OC Scanner X, the essential utility for any EVGA GeForce card. This application allows you to take your card to the limit with exclusive built-in artifact scanning, benchmarking tools, GPU vitals information, CPU burn in utility and built-in log functionality. When combined with EVGA Precision X, your GeForce overclocking experience is complete!

↓ 07 – FurMark ROG Edition | Free For Asus Cards

FurMark ROG Edition is a heavily revamped version for ASUS of the popular FurMark tool. FurMark ROG Edition comes with modern stress-tests and artifact scanner based on OpenGL and Vulkan. Thanks to FurMark ROG Edition, you can push your graphics card to the limits to test stability and thermal performance.

↓ 08 – MSI Kombustor | Free For MSI Cards

MSI Kombustor is MSI’s exclusive burn-in benchmarking tool based on the well-known FurMark software. This program is specifically designed to push your graphics card to the limits to test stability and thermal performance. Kombustor supports cutting edge 3D APIs such as OpenGL or Vulkan.

Recommended for you:


14 Top Open Source Performance Testing Tools

Here are is our comprehensive list of the top open-source and FREE performance testing tools you can use for your load and stress testing efforts.

Below are some options that include a tools comparison to help you make your decision on what tool to use for your application performance efforts.

This list only includes open source and free options so you can just download and get started right away without spending a dime.

JMeter

Performance test tools open source

I think that JMeter is the most popular open-source tool in the performance space. Apache JMeter describes itself as a Java application that was designed specifically for load testing with the ability to measure application performance and response times.

JMeter was built to pretty much be the open-source alternative to LoadRunner, so you’ll find it has lots of sophisticated features. It's a thick client Java app that's largely driven by right clicks. It's a little weird, but it's got a lot of power. Also, all the features a professional load tester wants are available on JMeter.

Some features are:

  • The ability to performance test a host of technologies such as Java Objects, Web HTTP/HTTPS, SOAP and Rest Services, FTP, Databases with JDBC
  • A nice IDE you can use for recording, building and debugging your performance tests
  • Starting with JMeter 3.1 Groovy is the default programming language
  • One of the more popular performance testing tools
  • Can configure it to help test mobile performance of mobile apps

It currently has 4.1k stars on GitHub.

Although JMeter is one of the more popular test tools, it does have some shortcomings.

For instance, JMeter can be a bit difficult to scale for a large distributed test; especially if you have to set up a bunch of machines since you have to configure them to talk to each other. There is also a host of orchestrating problems in executing large JMeter tests.

That’s where a tool open sourced by BlazeMeter—Taurus—can help you out.

Nvidia Stress Test Tool

Taurus

Stress Test Tool Open Source

The power of Taurus is that it allows you to write your tests in YAML.

You can actually describe a full-blown script in about ten lines of text, which gives teams the ability to describe their tests in a YAML or JSON file. The YAML is a human, readable, edible approach that enables you to describe a test in a simple text file.

This is a big leap forward from the old days of having to bring up a big, heavy vendor-specific record and scripting tool.

Features

  • This should also allow more members of your team to contribute to performance tests. Also, since your test cases are written in YAML the tests are much more readable, making them easier to perform code reviews on.
  • Taurus basically fits performance testing into your CI/CD pipeline much more efficiently.
  • Taurus provides a sort of abstraction layer on top of JMeter, as well as some other tools like Locust, Gatling, the Grinder and Selenium.

It currently has 1.2k stars on GitHub.

Locust

Hard Drive Stress Test Tool

Locust is a simple-to-use, distributed, user load testing tool that can help you capture response times.

It is used to helps performance test websites or other applications.

Locust can also help you figure out how many concurrent users a system can handle.

If you’re familiar with the term “load generators,” Locust uses the term “swarm”–as in you can point a swarm of locusts to put a load on your website.

You can define the behavior you want for each of your Locust instances. It also gives you the ability to monitor the swarming process from a web UI in real time.

Some of the cool features you get with Locust are:

  • The ability to create your test scenarios using straight Python
  • You can easily scale a number of users you need to emulate
  • It has a nice Web-based UI
  • Extensible
  • Good for testing APIs

It currently has 12.7k stars on GitHub.

Fiddler with BlackWidow and Watcher

Fiddler enables you to do many things, but it's probably best described as a packet capture tool.

Fiddler is a free, open-source tool that allows you to monitor, manipulate, and reuse HTTP requests. Fiddler does many things that allow you to debug website issues, and with one of its many extensions, you can accomplish even more.

Some things you might want to use Fiddler for:

  • Troubleshooting issues with your web application
  • Security testing
  • Performance evaluations
  • Debugging web traffic from most computers and devices

Fiddler is already a pretty popular tool among developers. Many use it for debugging to view the HTTP requests their computer is sending to a service or website.

Todd DeCapua recommends using Fiddler with Watcher and BlackWidow to create a quick-start automation testing performance solution.

Watcher is a security add-in for Fiddler which will enable you to get some security results quickly. BlackWidow is a web crawler that gives you the functionality to point it towards a web address and then be able to drill down on results.

For someone who’s just getting started in performance engineering, these three tools working together can provide a great way to get that free look and feel as well as results that one might not otherwise be able to obtain quickly.

Todd actually has a session during this year’s PerfGuild Online Conference where he gives a demo of this approach.

nGrinder

nGrinder‘s GitHub page describes it as having been designed to be an enterprise-level performance engineering solution. It was developed to make stress testing easy and to provide a platform that allows you to create, execute, and monitor tests.

Features:

  • You can write your tests using Jython to create test scenarios and create stress against JVM using multiple agents.
  • It can extend tests with customer libraries like jar and py
  • Allows you to monitor the state of your performance agents

It currently has 1.1k stars on GitHub.

The Grinder

The Grinder is a Java-based framework. It provides you with easy-to-run and -create distributed testing solutions using many load generator machines to capture your end users response times. So you don't have to worry about any Virtual User restrictions.

  • You can perform load testing on any system that has a Java API
  • A nice GUI console
  • It automatically handles the management of client connections and cookies

Gatling

Gatling is a stress tool built on Scala, Akka, and Netty. It allows you to test and measure your application’s end-to-end performance.

  • It has a simple yet powerful DSL.
  • Easy to extend
  • If you’re into Scala and the benefits it brings, this is the load testing tool for you.
  • It has a scenario recorder

It currently has 4.7k stars on GitHub.

To learn more about Gatling check out the Founder of Gatling Stephane Landelle's PerfGuild session on Load Testing Done Right with Gatling.

k6

I’d actually never heard of k6 until I started writing this article. But with6.5k stars on GitHub at the time of this writing, I had to include it.

k6 is a developer-centric, open-source load testing tool for testing the performance of your back-end infrastructure.

k6 is also Modern load testing tools built with Go and JavaScript so it integrates well into most developers workflow.

  • Clean scripting API
  • Provides distributed & Cloud execution
  • Cool REST API orchestration ability

Tsung

Tsung is an open-source, multi-protocol distributed load testing tool.

  • Can monitor a client’s CPU, memory, and network traffic
  • It has an HTTP recorder
  • Includes HTML reports and graphs

It currently has 2k stars on GitHub.

Siege

Siege is a command-line HTTP load testing and benchmarking utility. It was designed to help developers measure their code under stress.

  • Supports basic authentication, cookies, HTTP, HTTPS and FTP protocols.
  • Allows its users hit a server with a configurable number of simulated clients. Those clients place the server “under siege.”
  • Great for a simple, brute-force type of testing tool
Test

It currently has 4k stars on GitHub.

Bees with Machine Guns

Developed by the Chicago Tribune, this is probably the coolest-sounding performance testing tools on this list.

Bees with Machine Guns describes itself as a utility for arming (creating) many bees (micro Amazon EC2 instances) to attack (load test) targets (web applications).

This tool can easily help you load test a site that needs to handle high traffic.

Leverage Amazon EC2

It currently has 5.8k stars on GitHub.

For enterprise-wide performance testing tools, LoadRunner tends to be one of the most common but many of these open-source tools can get you most of the functionality you need. Also, most of these tools protocols can be used for both performance testing web application and performance testing web services.

Fortio

Fortio is a cool load testing library, command-line tool, advanced echo server and web UI in go (golang). This tool allows to specify a set query-per-second load and record latency histograms and other useful stats.

It currently has 1.3k stars on GitHub.

puppeteer-webperf

With most modern applications using javascript heavy front-ends the needs for client-side performance measurements have never been greater. Don't ignore front-end performance. You can use Puppeteer WebPerf to collect web performance stats like a trace for a page load, grab a dev tools trace with screenshots, get runtime performance metrics, and a bunch more.

It currently has 1.1k stars on GitHub.

Flood Element

Element is an open-source Puppeteer that uses a browser-based load testing tool. Scripts are created using Typescript.

You can use it against your Web app in the same way that your customers do, opening a browser and interacting with page elements.

It's written like a functional test script, but with the help of Flood, you can quickly run a load test on as many nodes you want in the Cloud.

One of the few open-source tools that allow you to create performance testing using real browsers to more closely mimic how real users interacts with your application.

Read about it in my post Browser Level Performance Testing Using Element.

It currently has 133 stars on GitHub.

Top Performance Testing Tools

These are, in my opinion, the top ten performance testing tools free options.

As always, choosing the right performance testing tools for your team’s stress and load testing needs depends on what you need to test.

Happy performance testing with these stress testing and load testing tools!

How to Stay Up To Speed with the Latest in Performance Testing?

If you feel overwhelmed with staying up to date with all the latest performance testing and performance testing tools and best practices check out my annual online conference dedicated 100% to just performance testing — PerfGuild.