Sublime Forum

ST3 3083 Heavy Memory on MBP

#1

Similar to another topic already here on the boards, I’m seeing heavy memory usage issues leading to the need to close the program.

I’m using a MacBook Pro:
• 2.6GHz Quad-core Intel Core i7, Turbo Boost up to 3.8GHz
• 16GB 1600MHz DDR3L SDRAM
• 512GB PCIe-based Flash Storage

And here are the installed packages:
AdvancedCSV
Base16 Color Schemes
Cucumber
Dayle Rees Color Schemes
JSONLint
Markdown HTML Preview
Maven
Monokai Extended
Monokai Gray
Package Control
PlainTasks
Solarized Color Schemes
Theme - Fox
Theme - Soda
Theme - Soda SolarizedDark
Theme - Sodarized
Theme - Spacegray
Tomorrow Color Schemes

Most of the Out of Memory alerts have been raised as I was using other programs but one popped up while I was trying to put together the package list.

0 Likes

#2

Oh, yes, I forgot to mention I am on Yosemite 10.10.3 as of April 9. I have not yet applied the supplemental update that just popped up in the App Store notification.

0 Likes

#3

It seems that such problems are plugin related, though it’s weird that they appear more prevalent on OSx and with builds from 3080 onwards. Try to disable all your plugins and re-enable them selectively. You can probably exclude colour themes and package control from this procedure.

Another thread reported “All Autocomplete” as the culprit. Together with that, if you can find one plugin that’s causing your issue, we might establish a pattern in the code between 2 plugins which could isolate the problem.

0 Likes

#4

I removed most of the packages this morning leaving a handful of color schemes. I did remove some of the color schemes that I knew I wasn’t using, though. Here is that list. Please note that I did not remove Package Control at any point.
0_package_control_loader.sublime-package
Base16 Color Schemes.sublime-package
Monokai Extended.sublime-package
Monokai Gray.sublime-package
Package Control.sublime-package
Solarized Color Scheme.sublime-package
Theme - Soda SolarizedDark.sublime-package
Theme - Soda.sublime-package
Theme - Sodarized.sublime-package

I then started adding things back from the list in my original post working alphabetically and watching the results in Activity Monitor as I added each in turn and waited for 15 to 20 minutes before adding the next one. I did not add then remove the packages. I added things cumulatively. Here’s the current installed list:
0_package_control_loader.sublime-package
Advanced CSV.sublime-package
Base16 Color Schemes.sublime-package
Cucumber.sublime-package
JSONLint.sublime-package
Markdown HTML Preview.sublime-package
Monokai Extended.sublime-package
Monokai Gray.sublime-package
Package Control.sublime-package
Solarized Color Scheme.sublime-package
Theme - Soda SolarizedDark.sublime-package
Theme - Soda.sublime-package
Theme - Sodarized.sublime-package

I’ve since had ST3 up and running with minimal interaction (basically going about my normal daily use with it) and checked Activity Monitor from time to time. Thus far, there have been no unusual spikes in CPU or memory usage as there had been earlier this week (up through yesterday). At first this made me wonder if one of the color schemes I removed might be the culprit, but I was also remembering that when I did the migration from 2 to 3, I didn’t do a clean install of these packages. I did the copy and paste method suggested elsewhere on the forums here.

I’m going to keep an eye on things to see if there ends up being another spike in the usage since I normally would leave my machine up and running for the week instead of powering it off in the evening but I did power it off yesterday when I headed home. I’ll post an update if I notice anything unusual in the meantime.

0 Likes

#5

And now we have an update. I saw the same thing happen today. The list of installed packages was the same as the response from Friday.

I did notice that I had switched projects earlier today and it’s possible that when I was tracking it last week, I hadn’t switched projects.

I hope this works since I can’t add the file directly (it said a .txt file cannot be attached). The following are snippets of the output of the sample I captured via the Activity Monitor since the original was too large to post here. I cannot attach the screen caps and am given a message saying “Sorry, the board attachment quota has been reached.”

Sampling process 387 for 3 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling Sublime Text (pid 387) every 1 millisecond
Process:         Sublime Text [387]
Path:            /Applications/Sublime Text.app/Contents/MacOS/Sublime Text
Load Address:    0x101708000
Identifier:      com.sublimetext.3
Version:         Build 3083 (3083)
Code Type:       X86-64
Parent Process:  ??? [1]

Date/Time:       2015-04-22 12:49:39.299 -0400
OS Version:      Mac OS X 10.10.3 (14D136)
Report Version:  7
Analysis Tool:   /usr/bin/sample
----
Total number in stack (recursive counted multiple, when >=5):
        232       _pthread_body  (in libsystem_pthread.dylib) + 131  [0x7fff8f2dd268]
        232       _pthread_start  (in libsystem_pthread.dylib) + 176  [0x7fff8f2dd1e5]
        232       thread_start  (in libsystem_pthread.dylib) + 13  [0x7fff8f2db41d]
        221       crawler::read_db(const_substring, std::__1::vector<symbol_def, std::__1::allocator<symbol_def> >*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*)  (in Sublime Text) + 32  [0x101776dce]
        221       leveldb_crawl_storage::get(const_substring, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*)  (in Sublime Text) + 101  [0x101777253]
        221       void* std::__1::__thread_proxy<std::__1::tuple<index_controller::set_folder_list(SP<folder_list>)::$_2::operator()() const::'lambda'()::operator()() const::'lambda'(int)::operator()(int) const::'lambda'()> >(void*)  (in Sublime Text) + 315  [0x1017761b8]
        218       __psynch_mutexwait  (in libsystem_kernel.dylib) + 0  [0x7fff8dae115c]
        218       leveldb::port::Mutex::Lock()  (in Sublime Text) + 9  [0x101a1dadf]
        114       leveldb::DBImpl::Get(leveldb::ReadOptions const&, leveldb::Slice const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*)  (in Sublime Text) + 441  [0x101a04a8f]
        102       leveldb::DBImpl::Get(leveldb::ReadOptions const&, leveldb::Slice const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*)  (in Sublime Text) + 79  [0x101a04925]

Sort by top of stack, same collapsed (when >= 5):
        __psynch_mutexwait  (in libsystem_kernel.dylib)        352288
        __psynch_cvwait  (in libsystem_kernel.dylib)        6464
        mach_msg_trap  (in libsystem_kernel.dylib)        4848
        __psynch_mutexdrop  (in libsystem_kernel.dylib)        1616
        __select  (in libsystem_kernel.dylib)        1616
        __wait4  (in libsystem_kernel.dylib)        1616
        basic_hash<char const*, location_cell*, c_string_hash_traits, compact_occupancy_traits>::basic_hash(unsigned int)  (in Sublime Text)        1616
        kevent64  (in libsystem_kernel.dylib)        1616
        leveldb::(anonymous namespace)::HandleTable::FindPointer(leveldb::Slice const&, unsigned int)  (in Sublime Text)        1616
        leveldb::Block::NewIterator(leveldb::Comparator const*)  (in Sublime Text)        1616
        sem_wait  (in libsystem_kernel.dylib)        1616
        strlen  (in libsystem_c.dylib)        1616
0 Likes