multi cpu vlc encoding

About encoding, codec settings, muxers and filter usage
tomasmie
New Cone
New Cone
Posts: 1
Joined: 21 Apr 2011 23:00

multi cpu vlc encoding

Postby tomasmie » 21 Apr 2011 23:14

I have 10+ vlc encoding processes going on a server with 8CPUS (each 3ghz)

the problem is that I can run one stream with 1ghz virtual server, but 10 streams on 8x3=20+ghz is choppy unless I do this dirty hack

cvlc -vvvv http://123.123.123:1234 --http-caching=10000 --no-skip-frames --no-drop-late-frames --loop --no-play-and-stop --sout-keep --sout-all --sout '#transcode{threads=200,vcodec=h264,venc=x264{vbv-maxrate=1500,x8dct=no,fast-pskip=yes,mbtree=no,weightp=0,aq-mode=0,lookahead=0,bframes=0,qcomp=0.6,qpmin=10,qpmax=51,qpstep=4,ref=1,direct=auto,trellis=0,bpyramid=no,mixed-refs=no,weightb=no,cabac=yes,coder=0,nf=yes,chroma-me=yes,partitions=-parti8x8-parti4x4-partp8x8-partb8x8,me=dia,subq=0,me_range=16,keyint=250,min-keyint=25,scenecut=0,ipratio=0.71},acodec=aac,ab=128,channels=2,deinterlace}:std{access=http,mux=ts,dst=0.0.0.0:1234}'


notice the extreme thread count (threads=200). this may sound stupid but its the only way I can get 10 not choppy encodings running.

cpu (top) information (without dirty hack threads not set CHOPPY ! well sometimes still choppy)

top - 13:36:35 up 1 day, 2:34, 1 user,

Tasks: 202 total, 3 running, 199 sleeping,

Cpu0 : 13.4%us, 0.0%sy, 3.8%ni,

Cpu1 : 33.3%us, 0.0%sy, 66.7%ni

Cpu2 : 14.0%us, 0.0%sy, 2.9%ni

Cpu3 : 15.0%us, 0.0%sy, 2.9%ni,

Cpu4 : 15.1%us, 0.0%sy, 2.9%ni

Cpu5 : 100%us, 0.0%sy, 33.3%ni, <<TOOO MUCHH

Cpu6 : 25.0%us, 0.0%sy, 75.0%ni

Cpu7 : 25.0%us, 0.0%sy, 75.0%ni

cpu (top) information (with dirty hack NOT CHOPPY) Tasks: 201 total, 4 running, 197 sleeping,

Cpu0 : 15.8%us, 1.2%sy, 72.2%ni, 10.8%id,

Cpu1 : 14.1%us, 1.0%sy, 73.6%ni, 11.2%id,

Cpu2 : 13.4%us, 0.9%sy, 74.1%ni, 11.6%id,

Cpu3 : 13.3%us, 0.9%sy, 73.9%ni, 11.9%id

Cpu4 : 15.2%us, 2.1%sy, 69.0%ni, 11.8%id

Cpu5 : 14.9%us, 1.1%sy, 71.7%ni, 12.0%id

Cpu6 : 13.6%us, 0.9%sy, 73.0%ni, 12.5%id,

Cpu7 : 13.5%us, 0.9%sy, 72.8%ni, 12.8%id,

it seems my vlc is not utilizing all processors rite. any suggestions what else I could try?

tried all kinds of thread including auto, tried changing priorities...

thanks in advance

kdh
Cone that earned his stripes
Cone that earned his stripes
Posts: 224
Joined: 16 Jun 2009 22:38

Re: multi cpu vlc encoding

Postby kdh » 01 May 2011 00:16

you could pin each vlc process to a certain cpu with the taskset command.

http://linuxcommand.org/man_pages/taskset1.html

still kind of dirty, but allows you to be a bit more granular with your resources.


Return to “VLC stream-output (sout)”

Who is online

Users browsing this forum: No registered users and 10 guests