Forums > Jitter

problem CPU multi-player Jitter

November 8, 2006 | 11:21 am

Hello
I’m working actually on a musical spectacle in Paris, with 5 video sources. I’m working on a PC with Windows XP Pro (double processeur Athlon Opteron 2,36GHZ, 2Go RAM, carte video Nvidia Geforce 4 with 2 Matrox TripleHead2Go to manage the screens.)

In my Max patch, for each source, I have simply :
#toggle
#metro 2
#jit.qt.movie 640 480
#jit.brosca
#jit.window name @border 0
All the movies are Quicktime PhotoJPEG.
The problem is when I launch the 5 movies simultaneous, the fps fall down at 7 frame per second, whereas the CPU is used at 50% and the RAM isn’t totally dedicated to Max (500 Mo only on the 2 Go !!).
Do you think the problem is from my development, or from Max which can’t use all the cpu and the ram available ?
The first representation is tomorrow, and for the moment, I only use 2 or 3 sources at the same time, which is too bad for the spectacle. It’s very urgent, thank you very much for your help !


November 8, 2006 | 11:33 am

>Hello
>I’m working actually on a musical spectacle in Paris, with 5 video
>sources. I’m working on a PC with Windows XP Pro (double processeur
>Athlon Opteron 2,36GHZ, 2Go RAM, carte video Nvidia Geforce 4 with 2
>Matrox TripleHead2Go to manage the screens.)
>
>In my Max patch, for each source, I have simply :
>#toggle
>#metro 2
>#jit.qt.movie 640 480
>#jit.brosca
>#jit.window name @border 0
>All the movies are Quicktime PhotoJPEG.
>The problem is when I launch the 5 movies simultaneous, the fps fall
>down at 7 frame per second, whereas the CPU is used at 50% and the
>RAM isn’t totally dedicated to Max (500 Mo only on the 2 Go !!).
>Do you think the problem is from my development, or from Max which
>can’t use all the cpu and the ram available ?

in my opinion (i work on macs – and mostly on pbooks) if you manage
to have 3 movies it’s not so bad already !!!

__more seriously, when i asked the same question recently i got some
nice answers, most notably from vade, (the jitter thread named "basic
jitter playing and mixing on a G4")

some of the answers:

***************

Id suggest a few things.

1) mix on the GPU. try loading up the GPU DV mixing patch in
examples/jitter/render. I bet you will find it performs better than
CPU mixing, esp on a lower end G4

2) I usually mix on the GPU on my 1.67 powerbook with ~ 1/4 res HDV
stuff, 426x 240 @ 15 fps Photo Jpeg, plus slab effects and openGL
rendered and mixed in as a texture, I can get between 40 to 25 FPS
(or, well, much lower if I turn on everything) on my rendered output,
depending on things. this is using the built in hd, a lowly 5400 rpm
POS

maybe that will shed some light. If you keep the patches simple, you
should be able to do it.

***************

/Examples/Jitter-Examples/Render/Slab/jit.gl.slab-compositeDV.pat

***************

I finally did not do the project in jitter but on different miniDV
cams, but from my first trys playing on the GPU did a difference

there was other answers as well – check the thread

hope it helps

kasper

Kasper T. Toeplitz
noise, composition, bass, computer

http://www.sleazeArt.com


November 8, 2006 | 1:39 pm

Hello,

besides what Kasper suggested:

do you need to manipulate the video while playing, or you just hit play, sit
comfortably and enjoy the performance?

if there is no need for realtime meddling, then you could render the movies
with jit.brcosa, remove jit.brcosa, and play using direct-to-screen mode of
jit.qt.movie.

loading movies into ram might help too, checkout loadram message of
jit.qt.movie

is your movies PhotoJPEG quality at more than 75% – it shouldn’t more than
this for better performance*

maybe you should set sync attribute of jit.windows to 0*

five 640×480 sources might be too much for your computer, but i’m not
sure(for my it surely is).

hope this helps,
nesa

* check archives for explanation


November 8, 2006 | 7:11 pm

Attached are some patches and js that is useful for best multi-file, multi-screen playback. It uses a modified "jsmoviebank.js" from the jitter-examples/javascript/video folder, and does everything with uyvy colormode on videoplanes.
I have found that four 640×480 movies is a limit – jkc mentioned this was seemingly more a fault of Quicktime than cpu or drive speed. You could try using an instance of MaxRuntime at the same time you run Max to make use of both processors. Or you can network 2 machines, and run 3 screens from each.
To "buy some time", you could recompress the movies to a lower resolution for your demo, and have no problem playing 6 movies at the same time (I’ve used these patches to play 6 320×240 movies on a computer similar to yours). Depending on the content, there’s a good chance the extra pixels won’t be missed.
If you can’t figure it out, you can fly me to Paris and I’ll get it working :) HA HA.

Good luck with the spectacle /O-O/,

PeterN


November 8, 2006 | 8:38 pm


November 9, 2006 | 2:24 am


November 9, 2006 | 3:58 am

Q> Do you think the problem is from my development, or from Max which can’t use all the cpu and the ram available ?
> The first representation is tomorrow, and for the moment, I only use 2 or 3 sources at the same time, which is too bad for the spectacle. It’s very urgent, thank you very much for your help !

as you dont provide a patch for us to test its hard to say, but you certainly have lots of little jit.pwindows , that you use as previews, make sure to turn off onscreen mode. ( get info on jit.pwindow). this could help a bit, but you would be really better of switching to the gpu.

bonne chance pour le spectacle. tout ira bien ;)


November 12, 2006 | 2:13 am

Quote: nangyor wrote on Wed, 08 November 2006 12:21
—————————————————-
> The problem is when I launch the 5 movies simultaneous, the fps fall down at 7 frame per second, whereas the CPU is used at 50% and the RAM isn’t totally dedicated to Max (500 Mo only on the 2 Go !!).
> Do you think the problem is from my development, or from Max which can’t use all the cpu and the ram available ?

This has to do with jitter multi-core support. A good thread that explains the problem is here:

http://www.cycling74.com/forums/index.php?t=msg&goto=78171&rid=3579&S=266c595fbb6d78dcb5fdfea86037a9a2#msg_78171

To increase your framerate with at least a factor 2 you should open a new instance of max (or a max runtime environment) and send data to and fro with networking objects.

When playing back multiple movies, loading the movies in ram will probably make quite a difference, especially if you’re not playing linearly.

Btw I done quite a few seminars with 320×240 movies. I never heard one complaint about the quality.

> The first representation is tomorrow, and for the moment, I only use 2 or 3 sources at the same time, which is too bad for the spectacle. It’s very urgent, thank you very much for your help !

Seems a little late to start the first performance tests, no? ;)

Cheers,
Mattijs


November 14, 2006 | 3:21 pm

Thank you very much for all yours answers,
all very happened well for the spectacle, last Thursday and Friday !

Finally, in details, the main problem was the use of the CPU with 2 processors. Then, lauching at the same time Max and Max Running make the cpu used at 100%. When the 5 sources are playing simultaneous, 2 movies are played at 18/19 fps with Max, and the 3 others at 12/13 fps with Max Running. It passed well.

In addition, to gain in fludity, I reduce my movies to 640×480 at PhotoJPEG compression 60%, set sync attribute of jit.window to 0, load into ram all the movies (short loops).
I keep jit.brcosa to make some fade in and fade out with a midi controller, and to have little previews (pwindow 80×60) for each source, between jit.qt.movie and jit.brcosa.

Sure soon I’ll use gpu to still improve fluidity !
Thanks for all your easy ways,
ClaireR


Viewing 9 posts - 1 through 9 (of 9 total)