Sublime Forum

ST3 runs a HUGE number of processes

#1

As the title says, I’ve recently noticed that ST3 tends to start a large number of subprocesses when running for a while.

The last time it were nearly 100 (!!!) subprocesses, each eating about a megabyte of RAM but little CPU. Nethertheless they obviously build up and slow my machine down.

Here are some system specs:

Sublime Text 3 - Build 3065
Windows 7 64bit Enterprise Edition

I currently have 64 plugins installed, but I would say 1/3 of those are Snippets, Syntax-Highlighting and Theme related.

]AdvancedNewFile/]
]BoundKeys/]
]BracketHighlighter/]
]Calculate/]
]Case Conversion/]
]ColorPicker/]
]Colorsublime/]
]CSS Completions/]
]DocBlockr/]
]Emmet/]
]File History/]
]FileDiffs/]
]Find++/]
]FindKeyConflicts/]
]Generic Config/]
]Git Config/]
]Git Conflict Resolver/]
]GitCommitMsg/]
]GitGutter/]
]Gitignore/]
]GoToLastEdit/]
]HTML5/]
]Inc-Dec-Value/]
]INI/]
]Insert Nums/]
]Javascript Beautify/]
]JavaScript Snippets/]
]Javatar/]
]jQuery/]
]JSHint/]
]JSLint/]
]LinkOpener/]
]Markdown Preview/]
]MarkdownEditing/]
]MoveTab/]
]MoveText/]
]Package Control/]
]Placeholders/]
]PlainTasks/]
]Pretty JSON/]
]QuickRef Command Lookup/]
]Sass/]
]SideBarEnhancements/]
]SnippetMaker/]
]SortBy/]
]StringUtilities/]
]SublimeCodeIntel/]
]SublimeGit/]
]SublimeLinter/]
]SublimeLinter-annotations/]
]SublimeLinter-csslint/]
]SublimeLinter-javac/]
]SublimeLinter-jshint/]
]SublimeLinter-json/]
]SublimeLinter-xmllint/]
]Sublimerge Pro/]
]Super Calculator/]
]Theme - Flatland/]
]Theme - Glacier/]
]Toggle words/]
]TrailingSpaces/]
]Underscore.js Snippets/]
]VAlign/]
]Zen Tabs/]

Kind regards,
Zeeker

0 Likes

#2

if you don’t close some build systems properly they might keep running. Please post which processes those are (image name, use procexp to find all details) and which build systems you use. Linter plugins might spawn subprocesses as well.

0 Likes

#3

What did you expect from plugin system based on Python ? Because of GIL noone is using threads in Python (too slow), so this is why you have 100 subprocesses. Some overhead is acceptable, times of c are gone, web rules, simplicity rules, ruby & python - memory monsters - rules. But who cares if 1GB of ram is cheaper than programmers ?

0 Likes

#4

Look at the command line of the subprocesses, if there’s something like “crawl” (don’t remember the exact name) in the parameters, it’s the scanning of file used by the ‘Goto Definition…’ feature.
I also found some of these zombie process on my system (especially since last updates I think), but not as much. Look at the console if there’s some more information.

Don’t think so, don’t remember a single plugin using subprocesses, but a lot use threads. And most have nothing to do with parallel computation, so the GIL isn’t an issue.

0 Likes