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
[EMAIL PROTECTED]
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
[email protected]
http://lists.gnu.org/mailman/listinfo/ccrtp-devel