Gidsen/Cursor gebruikt veel CPU

Gebruikt Cursor veel CPU of trekt het de batterij van je Mac leeg? Zo vind je de oorzaak

Atta 🐬

Oprichter van Vitals

Gepubliceerd

Kort antwoord

Cursor is gebouwd als een browser, dus Activiteitenweergave toont het als meerdere processen: Cursor, Cursor Helper (Renderer) voor elk venster, Cursor Helper (Plugin) voor extensies, en Cursor Helper (GPU). Hoge CPU komt bijna altijd van een van drie plekken: een extensie, indexering of bestandsbewaking in een groot project, of een tool die de agent startte en liet draaien, zoals een dev-server of een linter. Kies in Cursor Help → Open Process Explorer om te zien welke het is. Vitals, een systeemmonitor voor de Mac, toont Cursor als één app, verdeeld over vensters, extensies en graphics, en toont elk proces dat in een projectmap werkt.

Zo vind je wat Cursor aan het doen is

  1. 01 Open Activiteitenweergave, klik op CPU en typ Cursor in het zoekveld. Kijk welke regel druk is: Cursor Helper (Plugin) zijn je extensies, Cursor Helper (Renderer) is een venster, Cursor Helper (GPU) tekent het beeld.
  2. 02 Kies in Cursor Help → Open Process Explorer. Die toont de eigen processen van Cursor op naam, met CPU en geheugen, zodat je ziet of het de extensiehost is, een venster, de bestandsbewaking of een zoekopdracht.
  3. 03 Zijn extensies de oorzaak, open dan het Command Palette (⇧⌘P) en voer Help: Start Extension Bisect uit. Cursor zet telkens de helft van de extensies uit tot het de schuldige heeft gevonden.
  4. 04 Maak het zoekveld van Activiteitenweergave leeg en sorteer opnieuw op % CPU. Zoek bovenaan naar node, next-server, biome en soortgelijke tools: dat is niet Cursor zelf, maar iets dat Cursor of zijn agent heeft gestart.
  5. 05 Stop Cursor volledig met ⌘Q en kijk een minuut. Alles uit de vorige stap dat nog draait, is achtergebleven; selecteer het en klik op de stopknop in de knoppenbalk van Activiteitenweergave.

Om extensies in één keer uit te sluiten of aan te wijzen, stop je Cursor en start je het vanuit Terminal met cursor --disable-extensions. Blijft de Mac koel, dan is een extensie de oorzaak.

Cursor is een fork van Visual Studio Code, en beide zijn Electron-apps: een browserengine, een Node.js-service die extensies draait, en een proces per venster. Daarbovenop indexeert Cursor je project zodat zijn AI erin kan zoeken, en zijn agent voert namens jou opdrachten uit in een terminal. Elk daarvan kan de CPU bezighouden, elk verschijnt onder een andere naam, en elk heeft een andere oplossing. De tabel koppelt de naam die je ziet aan wat het is.

Wat de processen van Cursor zijn

Wat je zietWat het isWat je doet
Cursor Helper (Plugin) met hoge CPU De extensiehost: elke extensie draait erin Extension Bisect, of start met extensies uitgeschakeld
Cursor Helper (Renderer) met hoge CPU Eén venster, met zijn editor en chat Sluit lange chats en ongebruikte vensters; laad het venster opnieuw
rg-processen met hoge CPU Zoeken en indexering die de bestanden van het project lezen Sluit grote mappen uit van zoeken en indexering
Cursor Helper (GPU) druk Het tekenen van de interface Meestal kort; update Cursor als het hoog blijft
node, tsc, biome die warm lopen Een dev-server, typechecker of linter die vanuit Cursor is gestart Stop hem in de terminal van Cursor, of stop hem in Activiteitenweergave

Extensies: de meest voorkomende oorzaak

Elke extensie draait in één proces, Cursor Helper (Plugin), dus één drukke extensie laat het hele proces schuldig lijken. Linters, formatters en language servers die een groot project bij elke toetsaanslag opnieuw controleren, zijn de gebruikelijke. Extension Bisect vindt de schuldige in een paar herstarts, en dat gaat sneller dan ze een voor een uitzetten.

Extensies die uit Visual Studio Code zijn meegekomen toen je Cursor voor het eerst instelde, zijn ook een blik waard: sommige overlappen met wat Cursor al doet. Verwijder wat je niet gebruikt; een uitgeschakelde extensie kost niets.

Grote projecten: indexering en bestandsbewaking

Als je een project opent, indexeert Cursor het voor zijn AI en houdt het de bestanden in de gaten op wijzigingen. In een grote repository, of een met grote gegenereerde mappen, kan dat meerdere cores lang bezighouden, en mensen op het forum van Cursor melden rg-zoekprocessen die in heel grote projecten nooit tot rust komen.

Houd gegenereerde mappen en mappen van derden erbuiten. Zet ze in een .cursorignore-bestand in de hoofdmap van het project, en in files.watcherExclude en search.exclude in Settings. Build-uitvoer, mappen met afhankelijkheden en caches zijn de mappen die ertoe doen. Kijk daarna in Cursor Settings → Indexing & Docs of de indexering klaar is.

Wat de agent laat draaien

De agent van Cursor voert opdrachten voor je uit: een dev-server om zijn werk te controleren, een typechecker, een testwatcher. Als de taak klaar is, of de chat wordt gesloten, stoppen die processen niet altijd. Het zijn gewone processen zonder venster, dus niets op het scherm zegt dat ze er zijn, en een vastgelopen linter of een dev-server die een paar gigabyte vasthoudt, kan dagenlang draaien.

Daardoor lijkt Cursor ook de batterij leeg te trekken nadat je het hebt gesloten: Cursor is gestopt, en wat het heeft gestart niet. Controleer Activiteitenweergave na het stoppen, zoals in de stappen hierboven. Een proces waarvan het ouderproces weg is, heet een weesproces, en dat is meestal wat mensen bedoelen als ze naar een zombieproces vragen.

Batterij: wat je kunt verwachten

Een Electron-editor met een AI-model dat antwoordt terwijl je typt, gebruikt meer energie dan een gewone teksteditor, en dat deel is de prijs van de tool. Wat niet normaal is, is hoge CPU terwijl je niet typt. Staat Cursor in het tabblad Energie van Activiteitenweergave bovenaan terwijl het niets doet, loop dan de stappen hierboven door. Voor het bredere beeld, zie wat de batterij van je Mac leegtrekt.

Wat Vitals toevoegt

Vitals toont Cursor als één app met zijn onderdelen bij naam, en de processen die het heeft gestart gegroepeerd per project.

  • Cursor als één regel met zijn totale geheugen, CPU en energie; klik erop om vensters, extensies en graphics apart te zien
  • Een tabblad Projecten: elk proces dat in een projectmap werkt, welke app het ook startte, met zijn geheugen, CPU en de poorten waarop het luistert
  • Dev-servers die zijn blijven draaien zonder iets te doen, worden aangewezen, met het aanbod om ze te stoppen
  • Een melding als een app de CPU minutenlang vasthoudt of steeds meer geheugen gebruikt
  • Welke app de meeste energie gebruikte, per uur, zodat je ziet of het Cursor was of wat het heeft gestart

Goed om te weten

  • Vitals toont het proces van de extensies, niet welke extensie daarbinnen druk is. Dat vindt Extension Bisect van Cursor.
  • Vitals stopt nooit iets uit zichzelf. ‘Stop’ doet alleen iets als je erop klikt.
Koop Vitals voor $9 $9 tijdens de lancering, daarna $29. 14 dagen geld terug.

Vragen die mensen stellen

Waarom gebruikt Cursor zoveel CPU op mijn Mac?

Meestal een extensie, indexering in een groot project, of een tool die de agent startte en liet draaien. Kies in Cursor Help → Open Process Explorer om te zien welk van zijn processen druk is.

Wat is Cursor Helper (Plugin)?

Het proces dat elke extensie van Cursor draait. Gebruikt het veel CPU, dan is één extensie druk. Voer Help: Start Extension Bisect uit vanuit het Command Palette om te vinden welke.

Wat is Cursor Helper (Renderer)?

Eén venster van Cursor: de editor, de panelen en de chat. Elk venster heeft er een. Lange chats sluiten en het venster opnieuw laden brengt zijn geheugen en CPU omlaag.

Waarom trekt Cursor de batterij van mijn MacBook leeg?

Cursor is een Electron-app met een AI-model dat meewerkt terwijl je typt, en dat kost meer dan een gewone editor. Loopt de batterij snel leeg terwijl Cursor niets doet, dan wijst dat op een extensie, indexering, of een dev-server of buildtool die is blijven draaien.

Waarom is mijn Mac nog warm nadat ik Cursor heb gestopt?

Iets dat Cursor heeft gestart, draait nog: een dev-server, een typechecker of een linter. Sorteer Activiteitenweergave op % CPU en zoek naar node, tsc of biome.

Hoe zorg ik dat Cursor een map niet indexeert?

Zet de map in een .cursorignore-bestand in de hoofdmap van het project. Build-uitvoer en mappen met afhankelijkheden zijn de mappen die je het best kunt uitsluiten.

Is er een app die laat zien wat Cursor gebruikt op een Mac?

Vitals toont Cursor als één app, verdeeld over vensters, extensies en graphics, en zijn tabblad Projecten toont elk proces dat in een projectmap draait en wijst dev-servers aan die niets meer doen.

In de woordenlijst

Meer gidsen