View Full Version : Is MT-avisynth always recomended?
Caroliano
11th October 2007, 01:21
A question that I think that should be in the FAQ:
Should I use MT-Avisynth if I'm in an multiprocessor system. That mean: is it stable? Can I load any filter or combination of filters, even if some of them are not multhreadable? Is it as good as the normal avisynth, but only, hopefully, faster?
Someone please answer me. :thanks:
Blue_MiSfit
11th October 2007, 02:19
Good question. I do, and haven't run into any problems yet.
It's true that a lot of filters don't play nice with multi threading, but just having the capability doesn't seem to goof them up.
~MiSfit
Adub
11th October 2007, 03:32
Try to use it whenever you can, or when ever it benefits you. It is pretty much as stable as it is going to get, it just other filters that are the problem. And some filters are inherently multithreaded.
So, use MT when you can, otherwise, single threaded is just fine.
Caroliano
11th October 2007, 04:12
But the custom build that I should download works exactly like the defaut one, and works for all filters if I dont use the MT*() filters in them? Can I multhread the filters that can be run that way and leave the non-multhreadable togheter in the same .avs as well?
foxyshadis
11th October 2007, 06:33
What definitely isn't compatible with MT right off:
* mvtools
* dust
* most conditional scripts (especially momonster's)
But, all is not lost! It's pretty easy to get mvtools working (http://forum.doom9.org/showthread.php?p=1054380#post1054380), and conditionals with a little rewriting, as I just had a flash of "d'oh" that I wish I'd realized years ago.
When you just shouldn't use it:
* resizing, cropping, or anything else more memory bound than compute-bound.
* threaded filters like eedi2, nnedi, fft3dfilter, and so on. Disable threading in the filter or avisynth, you'll get slightly slower results when you use too many threads at once.
Everything else is fair game. Almost all filters seem to have no problem with setmtmode(2) or 1, but higher modes are available as well as mt() if compatibility is paramount over performance. You can mix-n-match to support different levels of filters at their optimum speeds.
As for stability, there were a few deadlock issues in the past, but years of banging away on it seems to have worked most of them out. Haven't had it lock up on me, or seen problem reports, in some time. When you use no MT modes, it's not exactly the same, but it's near enough that no problem should ever crop up.
Caroliano
15th October 2007, 01:57
So if I use the custom build that suport MT I can't use filters like dust at all, even If I don't use the multhread capability? Or I can use it w/o multhread it, as long as I don't use any other suported filter in multhread mode together? Or I can mix non multhreadable filters and multreadable filters thogether? If is the later, why this MT Avisynth isn't the defaut avisynth for everyone?
foxyshadis
15th October 2007, 04:15
You can do it like:
MT("""
filters
more filters
etc
""")
pixiedust()
MT("....")
Or
SetMTMode(2)
some filter
SetMTMode(3)
some filter that doesn't work in mode 2
SetMTMode(5)
pixiedust()
SetMTMode(2)
....
As for why it's not default, well, IanB doesn't want it to be. There were still bugs found in it well after the 2.5.7 release, so I can't blame him, although it looks in pretty good shape for 2.5.8.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.