ACE Optimizer is a lightweight Windows utility that detects ACE anti-cheat processes directly and reduces their CPU impact by lowering process priority and pinning them to the last CPU core.
简体中文:ACE Optimizer 是一个 Windows 桌面工具,会直接检测 ACE 反作弊进程,并通过降低优先级、绑定最后一个 CPU 核心来减少 CPU 占用。
- Direct ACE process detection without a game allowlist
- Sets detected ACE processes to
Idlepriority - Pins detected ACE processes to the last CPU core
- Runs quietly in the system tray
- Optional startup task via Windows Task Scheduler with elevation support
- English and Simplified Chinese UI resources
| Process | Description |
|---|---|
SGuard64 |
ACE user-mode process |
SGuardSvc64 |
ACE service process |
ACE Optimizer is built for Windows 10 and Windows 11.
Some ACE versions require administrator privileges before Windows allows priority or CPU-affinity changes. If optimization is blocked, restart ACE Optimizer as administrator when prompted.
Download the latest installer or portable archive from GitHub Releases:
Release assets usually include:
| File | Description |
|---|---|
ACEOptimizer_Setup_v*.exe |
Windows installer |
ACEOptimizer_Portable_v*.zip |
Portable single-file build |
- Start ACE Optimizer.
- Launch a game or application that starts ACE.
- ACE Optimizer detects
SGuard64orSGuardSvc64automatically. - When access is allowed, the detected process is moved to
Idlepriority and pinned to the last CPU core. - Use the tray icon to reopen or exit the app.
- .NET 8
- WPF
- WPF-UI 3.0.4
- H.NotifyIcon.Wpf 2.1.4
- NetSparkleUpdater 3.1.0
- Inno Setup
- GitHub Actions
dotnet restore
dotnet builddotnet publish -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:EnableCompressionInSingleFile=true -o ./publishThe repository includes a GitHub Actions workflow that builds and publishes releases when a v* tag is pushed.
Releases require an Ed25519 update-signing key. Add NETSPARKLE_PRIVATE_KEY as a GitHub Actions secret containing the Base64 private key generated by NetSparkle.
The public signing keys are embedded in Services/UpdateSecurity.cs. Never commit an Ed25519 private key. Before rotating keys, publish a version that trusts both the current and next public keys, then switch the release workflow to the next private key.
Each release includes a signed appcast.xml, its detached appcast.xml.signature, the installer, and the portable archive. The application verifies the appcast and installer with Ed25519 before installation. The binaries are not Authenticode-signed, so Windows SmartScreen may display a warning.
To create a new release:
- Update the version in
ACEOptimizer.csproj. - Confirm
NETSPARKLE_PRIVATE_KEYis configured. - Commit and push to
main. - Create and push a tag matching the project version.
- The workflow validates the tag, runs tests, generates the signed update feed, and publishes a GitHub Release.
Example:
<Version>1.2.14</Version>
<AssemblyVersion>1.2.14.0</AssemblyVersion>
<FileVersion>1.2.14.0</FileVersion>git tag v1.2.14
git push origin v1.2.14The release workflow rejects tags whose version does not exactly match the Version value in ACEOptimizer.csproj.
- ACE Optimizer only changes process priority and CPU affinity for the monitored ACE process names.
- It does not modify game files, anti-cheat files, drivers, or system services.
- Compatibility can change if ACE changes process names or blocks priority and affinity updates.
Created by @Ninthless.