
Ask HN: Why does Slack App on macOS drain 3GB of memory? - ktamiola
Can somebody explain to me why the Slack app drains &gt;3.5GBs of memory.<p>I am using the version 3.1.0 on 10.10.5 OSX.<p>Am I the only &quot;lucky&quot; user getting such a poor memory performance?
======
e12e
I quickly abandoned the slack "App", but even dedicating a chromium tab to
Slack ended up being absurdly heavy. So I've finally migrated to
weechat+weechat slack plugin. For a moment I thought I was too late, as slack
is killing the xmpp and irc bridges - but the dedicated slack plugin for
weechat uses the slack api.

As an added bonus, there are no more animated emojis in my peripheral vision
that can be mistaken for an update / alert.

I'm on Linux, but I presume wc works fine on Mac. A bit of a shame that the
qt-based client seems abandoned - but it's open source and python so maybe
it'll pick up some steam for those that want something a bit less console
only, but still not Web app crappy.

[https://github.com/wee-slack/wee-slack](https://github.com/wee-slack/wee-
slack)

[https://github.com/weechat/weechat](https://github.com/weechat/weechat)

[https://github.com/weechat/qweechat](https://github.com/weechat/qweechat)

I imagine that both for the console client and the qt one it should be
possible to map some of the more common emojis to Unicode (eg :heart:).

~~~
taneq
I don't have a horse in the slack/xmpp race (although I do hope open standards
win out) but if they have a public API which lets you do all that, would it be
easy enough to build an XMPP gateway?

~~~
auscompgeek
IRCCloud have actually written a IRCv3 gateway for Slack (although it's not
open... yet):
[https://twitter.com/IRCCloud/status/971416931373854721](https://twitter.com/IRCCloud/status/971416931373854721)

------
totallysnowman
This is what you get when you use a full-blown web browser for a simple
messaging app.

------
yoz-y
A lot of digital ink was spent on this issue. Basically it is due to the fact
that the Slack app uses Electron, and thus it is not much more than a Chromium
browser with several loaded webpages.

~~~
qaq
VS Code is an electron app

~~~
jrs95
And it sucks at this too. Just not as badly as Slack or Atom.

------
d3ckard
104 MB at the moment. For me at least, Slack really got their shit together
sometime last year and improved the issue significantly. I still remember
having to restart Slack twice a day, but it ain't issue anymore.

~~~
nellyspageli
Yeah, mine is 122MB at the moment as displayed in the OS X Activity monitor.

~~~
eddieroger
Continuing the anecdata collection, I'm in the over 1GB club. One instance of
Slack, six of Slack Helper, several of which using 200GB of memory, but the
biggest being 1GB. Timely thread, since when I sat down this morning and
unlocked my computer, I was warned that I'd run out of memory and needed to
quit some apps.

~~~
vog
_> several of which using 200GB of memory_

I really, really hope you mean "200MB", although I honestly wouldn't be
surprised if they managed to use 200GB if accidentally started on a beefy
server.

------
matthewmacleod
What I find interesting is that this is now becoming more noticed by other
people. We've had a whole bunch of non-tech people at my company start
complaining about Slack's sluggish performance, connection drops, the fact
that it makes other things on their machine unusable, that kind of stuff.

I would like to think this means there will be a bit of a change going
forward.

------
steeve
I don't use the app anymore and open it in my browser as a regular tab. Much
much better.

~~~
stephenSinniah
I have a MPB 2012 and I purchased a second hand ipad mini2 just so I could
handle all my comms through it. Slack was the main culprit for that decision,
my computer was basically unusable while running rails with guard + ember +
chrome(pivotal tracker) + slack.

------
dijit
No, that's the default slack experience if you have a lot of teams.

I recommend:

* Disabling emoji support, especially animated emojis>

* Disabling auto-expanding of images (gifs are egregious)

* Use compact display

* Limit number of channels/groups you're in if possible, surely you don't need all those channels.

Doing this curbed my resource usage quite a lot. I don't miss emoji's all that
much.

~~~
cimmanom
Hm, I wonder how much a company's Slack culture affects memory usage. I've
never seen it eat more than a few hundred MB, but then my coworkers almost
never post GIFs.

------
makkesk8
to be fair, this is not an electron issue as vscode runs fine on all
platforms. I don't really want to bash the devs but... Maybe they should take
a look at it.

~~~
natecavanaugh
VS Code is by far the best optimized Electron app I've seen, but with a total
of 5 files open, it will still turn my laptop into a pizza oven on my lap.

It, and every JS/Desktop hybrid has so much promise, but my Lord, as a
proficient JavaScript junkie that has a deep abiding love for the language,
it's not performant.

I just can't use either Atom or VS Code for day to day work.

PS, Sublime, please support some form of JS plugins, even if that means
limiting the API for JS plugins.

~~~
singularity2001
they have plenty JavaScript plugins which functionality are you missing?

~~~
natecavanaugh
I mean supporting it as the language in which the plugin is written. If there
are plugins that are doing that, let me know, I'll be googling that all day
today.

------
onion2k
_Am I the only "lucky" user getting such a poor memory performance?_

No, that's very common. For most people Slack's usefulness outweighs it's poor
memory footprint.

------
nextweek2
I hate these questions.

You need to put it in context. Is system ram under pressure? Poor memory
performance is measured by swap i/o or bandwidth, not usage.

If you have 16gb of ram and little else using the ram then there is nothing to
worry about. If you have 4gb of ram then a support ticket is probably your
best course of action rather than whining to random forums.

To answer your question, runtimes will lazy garbage collect because you might
want the data again. Decompressed images and frame buffers lead to faster
under interface interaction. You're not using a terminal app, you're using an
app that can render any font or image in complex ways to an image buffer, for
rendering at 60fps with smooth scroll. Are you also on a retina display?

------
matt_oriordan
This reminds me of the CPU issues there were previously with Slack:
[https://medium.com/@matt.at.ably/wheres-all-my-cpu-and-
memor...](https://medium.com/@matt.at.ably/wheres-all-my-cpu-and-memory-gone-
the-answer-slack-9e5c39207cab)

Sounds like Slack doesn't have any type of performance testing as part of
their release cycles.

------
reustle
I get around this by using the web client daily (pinned tab in chrome) and
open up the desktop app whenever I need to do specifically screen sharing (or
just skype). It's not worth the resource headache.

~~~
enraged_camel
Same. The web client has feature parity with the desktop client so I haven’t
understood why people bother with the latter.

~~~
phereford
It does not have complete feature parity. One of the things missing, that is
important for me and the team I am on, is the ability to share screens and
allow for remote control in that session. That is a Mac App only right now, at
least the last time I checked.

~~~
lojack
Now that screenhero is no more, screen sharing is literally the only reason
one of my teams use slack. We use hipchat (not by choice) for the rest of our
communication.

------
acd
FreeBSD an entire operating system runs on about 100MB ram.
[https://www.freebsd.org/doc/handbook/bsdinstall-
hardware.htm...](https://www.freebsd.org/doc/handbook/bsdinstall-
hardware.html)

~~~
znpy
CentOS 7 is roughly the same.

For a minimal install (with ssh service and vsftpd), i booted it and flushed
the filesystem cache, then ram usage was about 88MB.

~~~
Koshkin
Heh, the _recommended_ amount of RAM to run Windows 95 was 8MB.

------
unfunco
If you're signed into many workspaces, try closing a few.

------
kevingadd
I once had it hit 40gb of memory usage. I bought more RAM.

------
KnightEternal
The joys of Electron...

