performance and lower level api?

View: New views
1 Messages — Rating Filter:   Alert me  

performance and lower level api?

by Thomas Raschbacher-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi.

I've written some test apps which we want to use to evaluate ccRTPs performance.
It is mostly a re-written rtphello application where I mainly changed 2 things:
1) the transceiver had X destinations (command line parameter)
2) the receiver has X RTPSessions which are organized in a std::list (I don't do anything with the data apart from getData() and then delete it)

It now seems that if I start it with 360 or more RTP sessions it can hardly handle the load on my devel machine (recent P4 Dual core with 2GB memory).
If I use more ports than that then my (very simple) loop (see below) doesn't seem to be able to handle it anymore as both CPUs are permanently on 100% -> memory consumption goes up from ~ 5MB to 700+ (I killed the process then)

while (true)
        {

                        for (it_lRTPSession it = m_Sessions.begin(); it != m_Sessions.end(); ++it)
            {
                const AppDataUnit *adu = NULL;
                            while ( NULL == adu )
                {
                                    adu = (*it)->getData((*it)->getFirstTimestamp());
                    delete adu;
                            }
            }
            Thread::sleep(5);
                }

I'm using MS Visual Studio 2008 btw.

So now I'm wondering .. am I doing something wrong and there is a more efficient way to handle that many connections or is RTPSession just not fast enough (due to the queues,..) If the problem is with RTPSession is there a lower level api which I could potentially get better performance with (and which is relatively easy to use? - I don't mind implementing the timers,.. myself)

Regards,

Mit freundlichen Grüßen
Thomas Raschbacher
____________________________________________
itCampus Technology GmbH
Österreich * Deutschland * Italien
Dresdner Straße 45 /DG
1200 Wien
thomas.raschbacher@...
Tel: +43 (1) 890 22 82 - 58
Fax: +43 (1) 890 22 82 - 958
http://www.itctec.com
UID: ATU 6339 0618
Firmenbuchnr: FN292598t, Handelsgericht Wien
Geschäftsführer: Andreas Günser, Andreas Lassmann
Joint Venture von itCampus und MEC

itCampus Gruppe
Deutschland * Großbritannien * Italien * Österreich * Schweiz * Slowakei
http://www.itcampus.eu



_______________________________________________
Ccrtp-devel mailing list
Ccrtp-devel@...
http://lists.gnu.org/mailman/listinfo/ccrtp-devel