Scott C. Frase wrote:
> On Sat, 2007-12-29 at 20:27 +0100, Christian Thaeter wrote:
>> Cinelerra has some race problems between threads which let them wait on
>> each other doing nothing, this is hard to fix unfortunally. But
>> generally I think adding more CPU's will add some performance
>> improvement. While in doubt, you may better opt for more ram (4 or more
>> GB of ram). For long time future I we will fix this (with what is called
>> cinelerra 3 now) to have no races and utilize multi cpu systems much
>> bettter, but don't hold your breath yet for that.
>>
>>      Christian
> Hi Christian,
> Yes, I continue to notice race conditions here and there.  For example,
> after doing some basic editing on a HDV project with two stereo audio
> tracks and one video track, I wanted to move one audio track down in the
> timeline.  When I did this, I triggered a race condition that hung a CPU
> at 100% for 30 minutes.  Bummer.  
> 
> Hannes gave me some instruction last year on how to track these issues
> down using kdbg:
> http://crazedmuleproductions.blogspot.com/search/label/kdbg
> 
> I will try to capture some debug information the next time it happens.

Imo waste of time, I know some of the code and (see condition.C) it
might be evolved due workaround problems in early linuxthread
implementations but it is horribly ugly and broken by design. In a
experimental branch I started to add my 'NoBug' library with a
resource/deadlock checker to cinelerra which shown a few too. But
finding this races is really the simplest thing. Fixing them is a really
hard design issue, I won't say it is impossible but it is certainly not
simple and very intrusive. I started to write more bullet proof locking
classes for cin2 just to find out that going over the code and
refactoring/adding that was more complicated than I imagined. Actually
the locking problems in cinelerra are one of the main issues I proprosed
cin3 as new rewrite. If you have the patience and want to make some
efforts to fix it, that would be a major contribution to cinelerras
stability and performance, but for myself I dont wan't to touch that
code anymore currently.

        Christian

_______________________________________________
Cinelerra mailing list
Cinelerra@skolelinux.no
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra

Reply via email to