Web CPU Tamer

通过隐式的异步调度延迟减少浏览器的能耗

当前为 2025-04-05 提交的版本,查看 最新版本

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

作者
𝖢𝖸 𝖥𝗎𝗇𝗀
评分
0 0 0
版本
2025.100.2
创建于
2025-04-05
更新于
2025-04-05
大小
16.1 KB
许可证
MIT
适用于
所有网站

🌿 Web CPU Tamer

Reduce your browser’s energy usage and CPU load by adding smart, invisible delays to script execution.


📌 What does this userscript do?

Web CPU Tamer introduces a lightweight, intelligent delay into the browser's task scheduling system. By doing so, it prevents web pages from overwhelming your CPU with tightly packed timers and animations — all without breaking any functionality.

This leads to:

  • Lower energy usage 🔋
  • Reduced fan noise 🌀
  • Smoother multitasking 🧠
  • A cooler and more efficient browsing experience 🌡️

💡 How does it work?

This script replaces the browser’s built-in scheduling functions with optimized versions:

Original What it does
setTimeout / setInterval Adds two micro-delays before each execution using queueMicrotask and MutationObserver. This lets the browser handle layout and paint cycles more gracefully.
requestAnimationFrame Adds a subtle delay by measuring the time difference across animation frames and yielding execution until the browser is ready.
clearTimeout / clearInterval / cancelAnimationFrame Fully respected and properly tracked, so cancelling still works perfectly.

Under the hood, these replacements insert a two-stage implicit delay around scheduled tasks — just enough for the browser to breathe without making apps feel sluggish.


✅ Key Features

  • Reduces unnecessary CPU usage
  • 🔋 Improves battery life
  • 💻 Optimizes responsiveness during heavy workloads
  • 🧠 Smart async delay mechanism with DOM-based triggers
  • Fully respects cancellation (no memory leaks!)
  • 🧩 Compatible with all websites — no modifications to content
  • 🧪 Special handling for performance-sensitive sites like YouTube + Brave

🚫 What it doesn't do

  • ❌ It doesn’t block content, ads, or trackers
  • ❌ It doesn’t interfere with page visuals or features
  • ❌ It doesn’t slow down websites unnecessarily
  • ✅ It only intercepts background scripting in a subtle way

🖼️ Where does it run?

This script runs on all http:// and https:// pages, except direct links to file types like images or logs:

.txt, .png, .jpg, .jpeg, .gif, .xml, .svg, .manifest, .log, .ini

That means no interference with direct downloads, image views, or text-only pages.


🧪 Browser Compatibility

Browser Status
Chrome / Chromium ✅ Full support
Firefox ✅ Full support
Edge ✅ Full support
Brave ✅ Special handling for YouTube
Safari ⚠️ Mostly works, limited mutation timing accuracy

Also works with:

  • ✅ Tampermonkey
  • ✅ Violentmonkey
  • ✅ Greasemonkey (v4+)

🔐 Security & Safety

  • 🧠 No external libraries
  • 🕵️ No trackers or network requests
  • 🚫 Doesn’t collect or share data
  • 📦 MIT Licensed — open and inspectable

🧙 Author

CY Fung
🔗 GitHub Support Page


🧾 License

MIT License
You are free to use, modify, and redistribute.