Hey Marco, Did you make any progress diagnosing this problem ?
-- Glen Gray [EMAIL PROTECTED] On 18 Mar 2008, at 09:09, Marco Amadori wrote: > Il Monday 17 March 2008 23:11:52 Ross Finlayson ha scritto: >>> So it seems to be a strange threading or concurrency problem >> >> Unlikely, because the LIVE555 code is single-threaded. > > Do you think it could be easely extended to be multithreaded? > >> You're clearly running into a resource limit; the question now is: >> Which resource? > > Nice question. I intially thought that my performance issue was a > FAQ :-( > >> Because your 95-stream limit seems to be happening >> per process (rather than machine-wide), the first thing I would look >> at is increasing the maximum number of open files (sockets) per >> process. > > No, 95-96 it is not a limit like "I cannot accept other clients" but > just a > visual quality limit, I could reach like 300 streams before hitting > disk IO > 100%. Anyway, "ulimit -a" reports 1024 open files max as default on > debian. > >> Linux has a way to increase this (I'm not sure of the >> details, though). > > Yes, ulimit can increase that, but I reported no differences > increasing max > open files. > >> Of course, down the road you need to also consider running into >> limits of network bandwidth and/or file system bandwidth. > > Bandwith seems to me to not be not really an issue, because on that > machine I > have 3 bonded gibabit interfaces used for like 6% each (at 95 > streams). > > I will investigate filesystem bandwitdth but I have reported same > limits > between ext3, ext3 with largefile4 and xfs (ranging from 3 sas 10k > to 6 sas > 15k). > > So I'm little clueless, anyone did similar tests* before? > > * My test system is like that, you need to generate a list of movies > streamables by live555MediaServer like the one below and invoke > "test_rtsp.sh > $filelist $url $baseport", you could then add streams until a client > starts > to lose frames/packets: > > $ filelist=/srv/movies/list > $ url=rtsp://10.0.0.10:8554 > $ baseport=1500 > > $ cat $filelist > b00560.mpg.ts > b00635.mpg.ts > b00711.mpg.ts > b00729.mpg.ts > b00752.mpg.ts > b00753.mpg.ts > b00759.mpg.ts > b00760.mpg.ts > b00762.mpg.ts > b00798.mpg.ts > > $ cat test_rtsp.sh > #!/bin/sh > > MOVIES=$1 > URL=$2 > BASEPORT=$3 > > i=0 > > for movie in `cat $MOVIES` ; do > sleep 3 > PORT=$(( $BASEPORT + $i )) > #echo $i: openRTSP -r -p $PORT $URL/$movie > echo $i: openRTSP -p $PORT $URL/$movie > openRTSP -p $PORT $URL/$movie > /dev/null 2>&1 & > i=$(( i+2 )) > done > > -- > ESC:wq > _______________________________________________ > live-devel mailing list > live-devel@lists.live555.com > http://lists.live555.com/mailman/listinfo/live-devel _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel