Gstreamer + memory usage

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Gstreamer + memory usage

Daniel Laird
All,

I am new to Gstreamer but have been impressed at the ease with which I got it running on my embedded platform.  I now have A/V decode running on my embedded decoders and using GStreamers input-selectors/queues and demux+filesrc etc to make this happen.

However, the system I am developing on has < 64 mb RAM.  Once the system starts up and runs I am left with 20MB odd for applications.
Once I start up Gstreamer it really seems to eat memory with it using nearly all the 18-20MB to run.

Some of this is due to my A/V queue lengths.  
But a lot of it seems to be untraceable.

My questions are:
1. Any hints on tracking where memory has gone.
2. Does Gstreamer have a memory manager where I could limit what it can use (much like Java allows) so that I could say heres 10MB no more
3. Is anyone else running on embedded systems finding similar issues?

I suspect I am missing some options, my design choices might be floored or many other reasons so I really would appreciate any hints or tips for this. In the mean time calling free and checking calls to malloc (g_malloc) seems the only way forward

Many thanks
Daniel Laird

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: [gst-embedded] Gstreamer + memory usage

Prajnashi S
check if you link libxml2. If yes, use binary registry

On Tue, Mar 10, 2009 at 1:17 AM, Daniel James Laird <[hidden email]> wrote:
All,

I am new to Gstreamer but have been impressed at the ease with which I got it running on my embedded platform.  I now have A/V decode running on my embedded decoders and using GStreamers input-selectors/queues and demux+filesrc etc to make this happen.

However, the system I am developing on has < 64 mb RAM.  Once the system starts up and runs I am left with 20MB odd for applications.
Once I start up Gstreamer it really seems to eat memory with it using nearly all the 18-20MB to run.

Some of this is due to my A/V queue lengths.
But a lot of it seems to be untraceable.

My questions are:
1. Any hints on tracking where memory has gone.
2. Does Gstreamer have a memory manager where I could limit what it can use (much like Java allows) so that I could say heres 10MB no more
3. Is anyone else running on embedded systems finding similar issues?

I suspect I am missing some options, my design choices might be floored or many other reasons so I really would appreciate any hints or tips for this. In the mean time calling free and checking calls to malloc (g_malloc) seems the only way forward

Many thanks
Daniel Laird

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Gstreamer-embedded mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-embedded



--
-- Prajnashi S

------------------------------------------------------------------------------

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: [gst-embedded] Gstreamer + memory usage

Stefan Sauer
In reply to this post by Daniel Laird
hi,

Daniel James Laird schrieb:
> All,
>
> I am new to Gstreamer but have been impressed at the ease with which I got it running on my embedded platform.  I now have A/V decode running on my embedded decoders and using GStreamers input-selectors/queues and demux+filesrc etc to make this happen.
>
> However, the system I am developing on has < 64 mb RAM.  Once the system starts up and runs I am left with 20MB odd for applications.
> Once I start up Gstreamer it really seems to eat memory with it using nearly all the 18-20MB to run.
>
> Some of this is due to my A/V queue lengths.  
> But a lot of it seems to be untraceable.

GStreamer uses GLib and with that GSlice. You might not see the usage easily
with normal tools then. You can use env-vars like
 G_SLICE=always-malloc G_DEBUG=gc-friendly
to make things more trackable.

>
> My questions are:
> 1. Any hints on tracking where memory has gone.
> 2. Does Gstreamer have a memory manager where I could limit what it can use (much like Java allows) so that I could say heres 10MB no more
> 3. Is anyone else running on embedded systems finding similar issues?
>
> I suspect I am missing some options, my design choices might be floored or many other reasons so I really would appreciate any hints or tips for this. In the mean time calling free and checking calls to malloc (g_malloc) seems the only way forward

We run tests under valrind to ensure we don't leak (too much). Do you run into
issues with specific use cases, or already after gst_init().

Stefan

>
> Many thanks
> Daniel Laird
>
> ------------------------------------------------------------------------------
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> _______________________________________________
> Gstreamer-embedded mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/gstreamer-embedded


------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel