私は超高速のコンピュータを持っているにもかかわらず、特定のタスクが大量の強力なプロセスを一斉に起動し、すべての CPU の使用率がほぼ 100% になるため、マシン全体が応答せず、マウスとキーボードの動作がカクツキ、イライラし続けることに悩まされていました。 たとえば、Windows 11 の WSL モードでは、Cursor で 10 個のプロジェクトを開いていることがよくあります。Cursor が更新されて再起動すると、それらのプロセスがすべて同時に起動して、マシンがクラッシュしてしまいます。 あるいは、同時にさまざまなプロジェクトに取り組んでいるときに、突然エージェントの 1 つが大きな Rust コードベースをコンパイルしようとすると、マウスの動きがおかしくなり、気が狂いそうになります。 ついにうんざりして、どうにかしようと決意しました。私が求めていた機能のほとんどを備えた既存のパッケージはいくつかありましたが、特にananicyは、私が直面していた特定の問題を解決するために、すべての設定を自動で処理してくれるものを探していました。 基本的に、この仕組みは、CPU を過剰に使用しているプロセスを検出し、優先度レベル (Unix 用語では「適切」なレベル) を変更して優先度を下げ、マシンの応答性を回復するというものです。 また、「ionice」を使用すると、膨大な数のファイル ハンドルをオープンし、大量の I/O 使用によって I/O を強制終了しているプロセスに対しても同じことを行うことができます。 インストール、設定、永続化など、あらゆる作業をワンライナーで「ただ動作する」形で実行してくれるツールが本当に欲しかったのです。これは、以下の最初のスクリーンショットに示されています。 ついでに、Go言語でsysmonというシステムモニターを作ることにしました。これは非常に洗練されたターミナルインターフェースを備えています(下の2枚目と3枚目のスクリーンショットをご覧ください)。皮肉なことに、これは単体で見るとかなり大きなプロジェクトになってしまいましたが、この統合システムの一部として残しておくことにしました。 htopやbtopに似ていますが、システムパフォーマンスを低下させる問題のあるプログラムやプロセスを特定することに特化したツールです。最もパフォーマンスの悪いプログラムやプロセスを表示し、I/Oも考慮します。 最も問題を引き起こしていたのは Cursor と Cargo だったので、これらには特別なミニ コマンドがいくつかあります。 とにかく、ぜひ見て、感想を聞かせてください。このツールはすべてオープンソースで、MITライセンスで提供されています。こちらからダウンロードできます。
スレッドを読み込み中
X から元のツイートを取得し、読みやすいビューを準備しています。
通常は数秒で完了しますので、お待ちください。


