Mem Reduct: a Windows memory cleaner built on the Native API
Lightweight real-time memory management application to monitor and clean system memory on your computer.
At a glance
- What is it?
- Mem Reduct is a C application for Windows 7 SP1 and later that clears system cache through undocumented Native API calls, with the README claiming a variable 10 to 50 percent result. Here is what it does, how to install it, and where it stops being the right tool.
- Who is it for?
- Mem Reduct suits Windows 7 SP1 through 11 users who want a small portable tool to force cache release on demand, and who accept that the README describes the result as variable at roughly 10 to 50 percent. It is not for anyone expecting a permanent fix for a process that keeps allocating, and it is not a Linux, macOS, Android or Minecraft tool despite what search results suggest.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 32 days ago.
- What is it written in?
- Mainly C, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 29, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What Mem Reduct actually does to Windows memory
Windows keeps a large amount of RAM in caches that are reclaimable but not automatically returned when a program asks for memory. The working set of each process, the system working set, the standby page lists and the modified page lists all hold pages that the kernel can drop under pressure, but the kernel does not always drop them early. Mem Reduct exists to force that release on demand. It is a single-purpose tool: monitor memory, then clean it when you press the button or when a threshold is crossed.
The README is explicit about the mechanism. The program uses undocumented internal system features, the Native API, to clear the system cache, naming the system working set, working set, standby page lists and modified page lists. That is a different approach from a task manager or a performance counter. It is not asking Windows politely to trim a process; it is calling into interfaces Microsoft does not document and does not promise to keep stable across builds.
The README also states the expected result: variable, around 10 to 50 percent. That number is worth reading carefully. It is not a guarantee per clean, and it is not a claim about how much faster anything becomes. A machine with 8 GB where most of the RAM is genuinely in use by applications will show a small change, because there is little cache left to reclaim. A machine that has been running for days with large file caches will show more.
The audience is narrow and clear. It is for Windows users who want a visible counter of memory state and a manual lever to pull. It is not for servers, and the system requirements list only Windows 7, 8, 8.1, 10 and 11 on 64-bit or ARM64, with an SSE2-capable CPU.
Native API calls, administrator rights and the portable mode switch
The architecture is thin, which is the point. The repository is a Visual Studio solution, memreduct.sln, with a memreduct.vcxproj project and a src directory, written in C. The top level also carries build.bat, build_locale.bat and build_vc.bat, so the project expects to be built with the Microsoft toolchain rather than a cross-compiler. There is no service, no driver and no background daemon in the layout; the executable does the work in the user session.
Because the operations touch system-wide page lists, the README states that administrator rights are required for correct working. That is a real constraint, not a formality. Without elevation the Native API calls that clear the standby and modified lists will not do what the interface implies, so a user who runs the portable binary from a non-elevated shell may see the window and the counters but not the effect.
Configuration has two locations. In the default install, settings live in %APPDATA%\Henry++\Mem Reduct. Portable mode is activated by creating memreduct.ini in the application folder, or by moving an existing file there from that AppData path. That is the whole switch: no command line flag, no environment variable. For a tool you might keep on a USB stick next to other diagnostics, that is the right shape.
One thing the README does not document is rollback. There is no described way to undo a clean, because there is nothing to undo in the conventional sense: the pages being released are caches, and the kernel rebuilds them as programs read files again. What you may notice after a clean is that the first access to previously cached data is slower, since it has to come from disk. The README does not discuss that trade-off at all, and it should.
Installing Mem Reduct and running a first clean
The README points to the releases page for downloads and says you can take either the installer or the portable version. It does not give a package manager command, and there is no winget or Chocolatey instruction in the README, so the release page is where you start. The system requirements are Windows 7, 8, 8.1, 10 or 11 on 64-bit or ARM64, an SSE2-capable CPU, and the KB3063858 update for Windows 7.
The README's only installation instruction concerns portable mode. It says to create memreduct.ini in the application folder, or move it from the default settings path:
To activate portable mode, create "memreduct.ini" in application folder, or move it from "%APPDATA%\Henry++\Mem Reduct".After that you run the executable, elevated, because the README states that administrator rights are required for correct working. What you should see is a window with live memory figures and a control to clean. The README does not document the exact button labels, so treat the interface as self-describing rather than something to script against.
The project publishes a GPG signature alongside the binary. The README says the signature file is memreduct.exe.sig in the application folder, and it gives the key ID and fingerprint:
Key ID: 0x5635B5FD
Fingerprint: D985 2361 1524 AB29 BE73 30AC 2881 20A7 5635 B5FDCompare those against what your GPG tool reports for the downloaded binary. If they do not match, do not run it. That check matters more here than for an ordinary utility, because the update path is a manual download rather than a signed auto-updater, and the README does not describe any other verification step.
The case against running a memory cleaner on a healthy machine
The honest limitation is conceptual. Clearing caches frees memory that was doing useful work. Standby pages are files and code the system has already read and may read again; releasing them means the next access goes back to disk. On a machine with plenty of free RAM, a clean can make the next few minutes slower, not faster, and the freed memory is refilled by the same caches shortly afterwards. The README's 10 to 50 percent figure describes how much is released, not how much good it does.
There is also a real risk in the mechanism itself. Undocumented Native API calls are not a stable contract. Microsoft can change or remove them between Windows builds, and the project's compatibility list stops at Windows 11 as of the README. A tool that reaches into standby and modified page lists is also, by nature, the kind of program that security software watches closely, which is why the signed binary and the published fingerprint matter more here than for an ordinary utility.
Where it is clearly the wrong tool: if a process is leaking memory, cleaning the cache repeatedly treats the symptom and hides the growth. If a machine is genuinely short of RAM, the fix is more RAM or fewer running applications, not a button. And if you are on Linux, macOS or Android, this is not your tool at all, whatever a search result may suggest. The README lists Windows only.
Mem Reduct compared with ISLC and with doing nothing
The most common comparison is with ISLC, Intelligent Standby List Cleaner. The difference is in the model of operation. ISLC is built around monitoring and automatically purging the standby list when free memory drops below a threshold you set, and it is aimed at a specific symptom: stutter in games caused by the standby list filling up. Mem Reduct is a broader manual tool. It clears the system working set, per-process working sets, the standby page lists and the modified page lists, and it presents itself as a general memory monitor and cleaner rather than a gaming-specific one.
That distinction matters for choosing. If your problem is frame-time spikes on a machine with lots of RAM, a threshold-driven standby list purge targets the actual mechanism. If you want a small utility that shows memory state and lets you release caches across several categories when you decide to, Mem Reduct covers more ground. The README does not document automatic threshold cleaning, so treat the clean as something you trigger.
The third option is doing nothing. Windows already trims working sets under pressure, and the standby list exists to make file access faster. A cleaner is a manual override of that policy. It is defensible when you are about to start a memory-heavy task and want the maximum free pool immediately, and it is pointless as a background habit.
Licence, build cost and what an upgrade actually involves
Mem Reduct is GPL-3.0. For an end user running the published binary, that changes nothing about daily use. For anyone embedding it, shipping it inside a product, or linking its code into a proprietary tool, the copyleft terms apply to the combined work, and the LICENSE file at the repository root is the document that governs. That is a description of the licence, not legal advice; if you plan to redistribute it, read the licence and get proper advice.
Building from source is a Visual Studio exercise. The solution and project files are at the top level, and the build scripts are batch files, so you need the Microsoft compiler and the Windows SDK rather than a portable toolchain. There is no CMake file in the repository layout, which means cross-building or building in a Linux CI container is not a path the project offers.
Upgrade cost for users is low but manual. Releases are tagged, with v.3.5.2 on 2025-04-01, v.3.5.1 on 2024-12-27 and v.3.5 on 2024-12-17. The last push to the repository was on 2026-08-29, so the project is not archived and code is still landing between releases. Because the README describes no auto-update mechanism, upgrading means downloading the new binary and verifying its signature again. In portable mode, keep memreduct.ini outside the extracted folder or re-copy it after each upgrade, otherwise your settings go with the old directory.
If you build it yourself, your cost is the Visual Studio toolchain plus a rebuild every time you want a fix. If you use the binary, your cost is the manual download and the GPG check.
Editorial conclusion
Mem Reduct suits Windows 7 SP1 through 11 users who want a small portable tool to force cache release on demand, and who accept that the README describes the result as variable at roughly 10 to 50 percent. It is not for anyone expecting a permanent fix for a process that keeps allocating, and it is not a Linux, macOS, Android or Minecraft tool despite what search results suggest. Before relying on it, verify the GPG signature against key ID 0x5635B5FD, confirm you are running it with administrator rights, and decide whether you want the installer or portable mode with memreduct.ini in the application folder.
Frequently asked questions
Does Mem Reduct actually work?
The README states that the program clears the system working set, working set, standby page lists and modified page lists using Native API calls, with a variable result of roughly 10 to 50 percent. That describes how much memory is released, not how much faster the machine becomes.
How do I use Mem Reduct?
Download the installer or portable build from the releases page, run it with administrator rights as the README requires, and use the interface to monitor memory and trigger a clean. For portable mode, create memreduct.ini in the application folder or move it there from %APPDATA%\Henry++\Mem Reduct.
Is Mem Reduct safe?
The project publishes binaries with a GPG signature, memreduct.exe.sig, and the README lists key ID 0x5635B5FD with the full fingerprint. Verifying that signature before running the binary is the check the project itself makes possible.
Is Mem Reduct malware?
The source is published in C under GPL-3.0 at github.com/henrypp/memreduct, and release binaries carry a GPG signature. A program that calls undocumented Native API functions to alter system page lists will attract attention from security software, so verify the signature rather than relying on a reputation label.
Is Mem Reduct good for gaming?
The README does not describe any gaming-specific behaviour or automatic threshold cleaning; it presents a general memory monitor and cleaner. If stutter from a full standby list is your symptom, a tool built around automatic standby list purging targets that mechanism more directly.
Is Mem Reduct legit?
The source code is public at github.com/henrypp/memreduct under GPL-3.0, and the README documents a GPG signature with key ID 0x5635B5FD and the full fingerprint for the published binaries. Whether it is useful to you depends on whether you want a manual cache release tool on Windows.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/henrypp-memreduct)