Logo návodník

VS Code: Vysoká spotřeba výkonu CPU

Visual Studio Code patří mezi nejpopulárnější vývojové prostředí (IDE), a to na všech platformách, kde je dostupné. Je to skvělý kus software, který používají jak amatéři, tak profesionálové. A to rozhodně nejen proto, že je zdarma. Nic ale není dokonalé: pokud ho necháte, rád spotřebuje veškerý výkon vašeho procesoru, a stejně tak rád obsadí i celou dostupnou RAM.

A že je to problém častý, který se nevyhýbá ani těm nejvýkonnějším pracovním stanicím, zjistíte snadno: zkuste si do Google zadat například "vscode cpu power consuption". Získáte okolo 2000 výsledků, a každý den přibývají nové.

Důvodů proč vám VSCode užírá drahocenný výkon může být, a bohužel i bývá, mnoho. Mezi nejčastější patří jednoznačně špatně napsaná rozšíření (extensions). Obecně pak mezi největší "žrouty", kteří často umí z VS Code udělat takřka nepoužitelný kus SW, patří skoro všechny typy našeptávačů a kontrolorů syntaktické správnost kódu (Intellisense extensions). U tohoto problému najdete nejčastěji rady typu "vypněte všechna rozšíření, a je po problému". Jsou sice nejčastější, podle nás ale zcela nesmyslné.

Jaký by mělo smysl používat tak sofistikované IDE bez těchto rozšíření? To pak rovnou můžete kód psát "po paměti" i v běžném notepadu.

Pokud se tedy nejste (stejně jako my) ochotni se jich vzdát , pak se nevyhnete různě náročné optimalizaci, nastavování a ladění. Ale to si, alespoň u těch nejběžnějších a nejrozšířenějších modulů, ukážeme příště.

Dalším, a to (ne)skutečně velkým žroutem výkonu jsou systémové služby watcherService (tento problém by měl být již v aktuálních verzích VSCode vyřešen) a File watcher. Tyto systémové služby si VSCode spouští automaticky, a někdy to i na skutečně silném stroji může vypadat až takto:

https://api.apeople.cz/assets/f6a64ce5-9caf-4fc2-859d-b62ffd03dda1
Zdroj obrázku: microsoft.com

Jak snížit u VS Code spotřebu výkonu procesoru

Problém se službou watcherService by měl být vyřešen vývojáři VS Code.

Problém se službou File-watcher ale stále přetrvává. Řešení je naštěstí ale velmi snadné. Obecně je potřeba zmenšit počet souborů, které má VS Code prohledávat a sledovat. A to můžeme to udělat dvěma snadnými způsoby.

Nastavení VS Code

Přejděte do nastavení: File >> Preferences >> Settings (nebo použijte klávesovou zkratku CTRL + SHIFT + P). Do políčka "Search Settings" napište "watcher". A nyní byste měli vidět něco takovéhoto (bez těch červených čar samozřejmě :-):

https://api.apeople.cz/assets/949daf3d-db5a-4ddf-be74-9d1828d55cb5
Zdroj obrázku: microsoft.com

V části nastavení pojmenované Files: Watcher Exclude můžeme přidat adresáře, které VS Code nemá prohledávat a má je ignorovat. Stačí kliknout na tlačítko Add Pattern a přidat adresář, nebo typ souborů, který chcete z prohledávání vynechat. Pokud bychom chtěli například vynechat z prohledávání všechny soubory v adresářích .next, stačí přidat **/.next/**.

Takto si postupně můžete přidat vše, co nepotřebujete pro svůj projekt.

Načítání pouze projektových adresářů

Předchozí postup funguje perfektně, ale nastavení může trvat docela dlouho a navíc je platné pro všechny projekty. Nejlepší je zkombinovat toto nastavení s otevíráním a načítáním pouze projektových adresářů.

Tímto jednoduchým způsobem zcela přirozeně zmenšíme počet sledovaných souborů. VS Code bude mít méně práce a vašemu procesoru se výrazně odlehčí.

Zdroj: VSCode: Jak na vysokou spotřebu CPU