FAQ
I'm suddenly noticing multiple threads named "ImageDecoder" showing
up in the output of top (when threads are turned on with "H").


I've no clue what this is, and haven't found out much about it by
searching.


Can someone tell me what it is, and if it's doing anything useful or
just wasting cycles?


thanks!


--
---- Fred Smith -- fredex at fcshome.stoneham.ma.us -----------------------------
     "Not everyone who says to me, 'Lord, Lord,' will enter the kingdom of
      heaven, but only he who does the will of my Father who is in heaven."
------------------------------ Matthew 7:21 (niv) -----------------------------

Search Discussions

  • John Doe at Feb 4, 2014 at 10:26 am
    From: Fred Smith <fredex@fcshome.stoneham.ma.us>

    I'm suddenly noticing multiple threads named "ImageDecoder"
    showing up in the output of top (when threads are turned
    on with "H").
    I've no clue what this is, and haven't found out much about it by
    searching.
    Can someone tell me what it is, and if it's doing anything useful or
    just wasting cycles?

    From which process...?? java?


    JD
  • Fred Smith at Feb 4, 2014 at 2:28 pm

    On Tue, Feb 04, 2014 at 02:26:32AM -0800, John Doe wrote:
    From: Fred Smith <fredex@fcshome.stoneham.ma.us>
    I'm suddenly noticing multiple threads named "ImageDecoder"
    showing up in the output of top (when threads are turned
    on with "H").
    I've no clue what this is, and haven't found out much about it by
    searching.
    Can someone tell me what it is, and if it's doing anything useful or
    just wasting cycles?
    From which process...?? java?

    Um, it appears in the process list as "ImageDecoder". I don't know how
    one would determine that it's java or not.


    Can you give me a hint?


    --
    ---- Fred Smith -- fredex at fcshome.stoneham.ma.us -----------------------------
        "For the word of God is living and active. Sharper than any double-edged
        sword, it penetrates even to dividing soul and spirit, joints and marrow;
                   it judges the thoughts and attitudes of the heart."
    ---------------------------- Hebrews 4:12 (niv) ------------------------------
  • Laurent Wandrebeck at Feb 4, 2014 at 2:31 pm
    Fred Smith <fredex@fcshome.stoneham.ma.us> a ?crit?:

    Um, it appears in the process list as "ImageDecoder". I don't know how
    one would determine that it's java or not.

    Can you give me a hint?

    Try pstree ?


    HTH,
    Laurent.
  • Fred Smith at Feb 4, 2014 at 2:55 pm

    On Tue, Feb 04, 2014 at 02:31:51PM +0000, Laurent Wandrebeck wrote:
    Fred Smith <fredex@fcshome.stoneham.ma.us> a ?crit?:
    Um, it appears in the process list as "ImageDecoder". I don't know how
    one would determine that it's java or not.

    Can you give me a hint?
    Try pstree ?

    pstree shows nothing by that name.


    here's some output from top (with ppid and thread id added):


    23040 fredex 20 0 2424m 1.2g 41m S 0.3 16.3 1:13.71 1 fredex ImageDecoder #1
    23123 fredex 20 0 2424m 1.2g 41m S 0.3 16.3 1:12.82 1 fredex ImageDecoder #2
    23189 fredex 20 0 2424m 1.2g 41m S 0.3 16.3 1:13.47 1 fredex ImageDecoder #3
    23190 fredex 20 0 2424m 1.2g 41m S 0.3 16.3 1:12.73 1 fredex ImageDecoder #4
    23191 fredex 20 0 2424m 1.2g 41m S 0.3 16.3 1:14.02 1 fredex ImageDecoder #5


    it appears to be a child of init, since PPID is 1 (the column just to the left of
    "fredex".)


    given that "ImageDecoder #1" is process 23040, doing "ps -eLf | grep 23040" reveals:


    fredex 23011 1 23040 0 40 Feb03 ? 00:01:13 /home/fredex/myfiles/programs/firefox-19/firefox/firefox


    It appears to be some kind of firefox alias, though I don't understand that relationship...


    further:


    $ ps -eLf | grep firefox
    fredex 1152 1001 1152 0 1 09:47 pts/3 00:00:00 grep firefox
    fredex 23011 1 23011 7 40 Feb03 ? 00:59:47 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23014 0 40 Feb03 ? 00:00:10 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23015 0 40 Feb03 ? 00:00:34 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23016 0 40 Feb03 ? 00:03:06 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23017 0 40 Feb03 ? 00:00:00 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23018 0 40 Feb03 ? 00:00:00 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23019 0 40 Feb03 ? 00:00:01 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23020 0 40 Feb03 ? 00:00:01 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23021 0 40 Feb03 ? 00:00:01 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23022 0 40 Feb03 ? 00:00:01 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23023 0 40 Feb03 ? 00:00:01 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23024 0 40 Feb03 ? 00:00:01 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23025 0 40 Feb03 ? 00:00:23 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23027 0 40 Feb03 ? 00:00:00 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23028 0 40 Feb03 ? 00:00:00 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23029 0 40 Feb03 ? 00:00:00 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23030 0 40 Feb03 ? 00:00:00 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23033 0 40 Feb03 ? 00:00:23 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23035 0 40 Feb03 ? 00:00:00 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23036 0 40 Feb03 ? 00:00:00 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23040 0 40 Feb03 ? 00:01:14 /home/fredex/myfiles/programs/firefox-19/firefox/firefox
    fredex 23011 1 23054 0 40 Feb03 ? 00:00:00 /home/fredex/myfiles/programs/firefox-19/firefox/firefox


    where the 2nd column is the PID, the 3rd is the PPID and the 4th is
    "LWP", which I take to also be the same as "thread ID."


    so, Firefox has spawned a ton of child threads, and some of them appear
    in top as "Image Decoder #x". I dunno WHY they have a strange name,
    but at least I now know where they came from.


    I find it somewhat odd that I've never seen them before (I just upgraded
    to a new motherboard and 6-core CPU, from previously having had a 2-core
    CPU) and suddenly I see them in top. I've spent a fair amount of time,
    over the years, staring at top output, but don't recall ever seeing
    those there before.


    And yes, it's the same centos installation, I just put a new MB into
    the system and fired it up.


    So, I guess this is solved as far as I feel like taking it. Thanks to all
    (both) of you who offered advice.


    Fred


    --
    ---- Fred Smith -- fredex at fcshome.stoneham.ma.us -----------------------------
                    But God demonstrates his own love for us in this:
                              While we were still sinners,
                                   Christ died for us.
    ------------------------------- Romans 5:8 (niv) ------------------------------
  • Mark Roth at Feb 4, 2014 at 3:04 pm

    Fred Smith wrote:
    On Tue, Feb 04, 2014 at 02:31:51PM +0000, Laurent Wandrebeck wrote:
    Fred Smith <fredex@fcshome.stoneham.ma.us> a ?crit?:
    Um, it appears in the process list as "ImageDecoder". I don't know how
    one would determine that it's java or not.
    <snip>
    here's some output from top (with ppid and thread id added):

    23040 fredex 20 0 2424m 1.2g 41m S 0.3 16.3 1:13.71 1 fredex
    ImageDecoder #1
    23123 fredex 20 0 2424m 1.2g 41m S 0.3 16.3 1:12.82 1 fredex
    ImageDecoder #2 <snip>
    it appears to be a child of init, since PPID is 1 (the column just to the
    left of "fredex".)

    Suggests that they crashed, or logged out, and this remained running.
    given that "ImageDecoder #1" is process 23040, doing "ps -eLf | grep
    23040" reveals:

    fredex 23011 1 23040 0 40 Feb03 ? 00:01:13
    /home/fredex/myfiles/programs/firefox-19/firefox/firefox

    It appears to be some kind of firefox alias, though I don't understand
    that relationship... <snip>
    so, Firefox has spawned a ton of child threads, and some of them appear
    in top as "Image Decoder #x". I dunno WHY they have a strange name,
    but at least I now know where they came from. <snip>
    So, I guess this is solved as far as I feel like taking it. Thanks to all
    (both) of you who offered advice.

    One more thing before you drop it - it is, in fact, a firefox thing, and
    based on the name, either java or perl....
    <https://bugzilla.mozilla.org/show_bug.cgi?id�0149> (after googling
    firefox imagedecoder).


           mark
  • John Doe at Feb 4, 2014 at 3:43 pm
    From: Fred Smith <fredex@fcshome.stoneham.ma.us>

    so, Firefox has spawned a ton of child threads, and some of them appear
    in top as "Image Decoder #x". I dunno WHY they have a strange name,
    but at least I now know where they came from.

    Maybe webkit's ImageDecoder "function"...


    JD
  • Fred Smith at Feb 4, 2014 at 6:02 pm

    On Tue, Feb 04, 2014 at 07:43:27AM -0800, John Doe wrote:
    From: Fred Smith <fredex@fcshome.stoneham.ma.us>
    so, Firefox has spawned a ton of child threads, and some of them appear
    in top as "Image Decoder #x". I dunno WHY they have a strange name,
    but at least I now know where they came from.
    Maybe webkit's ImageDecoder "function"...

    Firefox uses WebKit????




    --
    ---- Fred Smith -- fredex at fcshome.stoneham.ma.us -----------------------------
                              God made him who had no sin
                           to be sin for us, so that in him
                      we might become the righteousness of God."
    --------------------------- Corinthians 5:21 ---------------------------------
  • John Doe at Feb 5, 2014 at 10:41 am
    From: Fred Smith <fredex@fcshome.stoneham.ma.us>

    On Tue, Feb 04, 2014 at 07:43:27AM -0800, John Doe wrote:
    Maybe webkit's ImageDecoder "function"...
    Firefox uses WebKit????

    Ok, maybe I need some vacations...
    Last try, from the source "mozilla-release/image/src/RasterImage.cpp":


    RasterImage::DecodePool::DecodePool()
    ?: mThreadPoolMutex("Thread Pool")
    {
    ? if (gMultithreadedDecoding) {
    ??? mThreadPool = do_CreateInstance(NS_THREADPOOL_CONTRACTID);
    ??? if (mThreadPool) {
    ????? mThreadPool->SetName(NS_LITERAL_CSTRING("ImageDecoder"));
    ????? uint32_t limit;
    ????? if (gDecodingThreadLimit <= 0) {
    ??????? limit = std::max(PR_GetNumberOfProcessors(), 2) - 1;
    ????? } else {
    ??????? limit = static_cast<uint32_t>(gDecodingThreadLimit);
    ????? }


    ????? mThreadPool->SetThreadLimit(limit);
    ????? mThreadPool->SetIdleThreadLimit(limit);


    ????? nsCOMPtr<nsIObserverService> obsSvc = mozilla::services::GetObserverService();
    ????? if (obsSvc) {
    ??????? obsSvc->AddObserver(this, "xpcom-shutdown-threads", false);
    ????? }
    ??? }
    ? }
    }


    JD
  • Mark Roth at Feb 4, 2014 at 2:41 pm

    Fred Smith wrote:
    On Tue, Feb 04, 2014 at 02:26:32AM -0800, John Doe wrote:
    From: Fred Smith <fredex@fcshome.stoneham.ma.us>
    I'm suddenly noticing multiple threads named "ImageDecoder"
    showing up in the output of top (when threads are turned
    on with "H"). I've no clue what this is, and haven't found out much
    about it by
    searching. Can someone tell me what it is, and if it's doing anything
    useful or
    just wasting cycles?
    From which process...?? java?
    Um, it appears in the process list as "ImageDecoder". I don't know how
    one would determine that it's java or not.

    Can you give me a hint?

    So ImageDecoder is a running process? Then I'd think that locate
    ImageDecoder would find it, so that you can check.


           mark

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupcentos @
categoriescentos
postedFeb 4, '14 at 2:59a
activeFeb 5, '14 at 10:41a
posts10
users4
websitecentos.org
irc#centos

People

Translate

site design / logo © 2021 Grokbase