Log in

View Full Version : Fastest operating system for Avisynth?


MadRat
16th May 2010, 20:00
I'm not sure this message is on topic for Avisnyth Usage but there isn't a forum that really fits so here goes (I'll gladly move to a different forum if needed).

It's time to get a new motherboard and processor. The obvious choice for highest speed is the Intel i7, 64-bit, multicore processor. Now the hard part, which 64-bit operating system will give the best performance with encoding using Avisynth: Windows XP Pro, Vista or Windows 7?

XP Pro
Advantages

Fast
No need to buy a new OS
Lots of codecs
Mature OS, plenty of experienced users to help with problems

Disadvantages

Multi-treading not built into the OS, must be set manually with MT plugin
OS no longer supported, may not be drivers for new hardware


Vista
Advantages

Automatic multi-threading
Lots of codecs
Drivers for all hardware should be available
Mature OS, plenty of experienced users to help with problems

Disadvantages

Slower than XP Pro or Windows 7
Spending money on an outdated OS


Windows 7
Advantages

Fast
Automatic multi-threading
Drivers for all hardware should be available
Well supported by Microsoft

Disadvantages

OS has yet to mature, may be unforeseen problems with no solutions
May have problems finding codecs
Expensive


Is the encoding performance under Vista and/or Windows 7 worth the expense and trouble of reinstalling and reconfiguring every program I own? Will I need to get the $300 version of Windows? What deal breakers will there be? For example, does the codec problem with Windows 7 mean I won't be able to use Huffman (HUFFYUV) or Lagarith (LAGS) encoded AVIs? Will the lack of drivers under XP Pro mean I'll have to give up using the Internet because there's no network card driver?

Keiyakusha
16th May 2010, 20:12
If you saying Lots of codecs is an advantage for Vista, then you should add this as disadvantage for Win7. Not sure how much codecs in Vista but Win7 surely have more. But there is also new restrictions from microsoft. If won't allow to use 3rd party decoders in avisynth or other directshow-based programs unless they have their own graph-building system. However "May have problems finding codecs" - there is no such thing on Win7.
EDIT: if you talking not about built-in codecs, this statement makes no sense.
Saying that Vista is an mature OS but Win7 is not is not good. If Vista is mature, then Win7 - even more mature.

As for encoding. To me avisynth makes no difference on encoding speed on XP and Win7. And don't see why it should.

MadRat
16th May 2010, 20:40
Let me try to explain what I mean. Here are some example questions about Windows 7 and codecs: Can Avisynth under Windows 7 use ffvideoshow? Will DirectShowSource work in Avisnyth under Windows 7 and will it be frame accurate (I've always been told DirectShowSource is not frame accurate)? Is there a way to use all containers (avi, mkv, mp4) with Avisynth under Windows 7 the way there is under XP and presumably Vista?

Here's what I mean about maturity:

XP Pro - about seven years old
Vista - about three and a half years old
Windows 7 - not quite ten months old

Window 7 may have the latest technology but it hasn't been available for as long as XP Pro or Vista. The most experienced Windows 7 user has not quite 10 months experience with Windows 7.

Gser
16th May 2010, 20:49
I haven't had any problems with 7. Huff and Lag work fine.

Blue_MiSfit
16th May 2010, 21:16
Automatic multithreading? What are you talking about :devil:

You still have to use AviSynth MT in any case.

Your questions about "ffvideoshow" (you mean FFVideoSource, right?), and DirectShowSource are easy - avisynth plugins are NOT windows version dependent. While it's true that Windows 7 addresses DirectShow a bit differently, this can be overridden very easily. The same goes for containers. Demuxing these is all up to the splitters you have installed. No operating system differences here.

BTW, DirectShowSource is not frame accurate. DSS2 is, and usually works fine. Still, I occasionally have issues with it hanging encodes at the end. Whether DSS2 or AviSynth are the cause of these crashes is up for debate, but I usually suggest using FFMS2 whenever possible... Or DGNV :p

Also, the most experienced Windows 7 user has been using it since early betas, which is quite a bit more than 10 months. I've been using it for about 15 months and have ran into zero compatibility problems that Vista didn't have. In fact, many compatibility issues I'd had with Vista are now gone.

The "maturity" issue is a pretty silly argument, especially when you're talking about software in the usual open-source video compression workflows. Since this software is all cutting edge under heavy development, it all works fine with 7.

If you're running proprietary, infrequently updated software (I can name several), then you may have to stick with XP.

While it's true that the same hardware running XP, Vista or 7 will always perform a bit differently, the difference is not very much, especially when doing CPU intensive tasks, like video encoding.

I think you're misguided in trying to base your operating system decision on maturity and Avisynth performance. Can you name one real "maturity" related issue that you've ran into? Unavailable / buggy drivers don't count.

~MiSfit

LoRd_MuldeR
16th May 2010, 22:07
The processing speed of Avisynth is limited by your CPU, not by the OS. In rare cases it may be limited by your hard-drive.

So for the processing speed it doesn't mater whether you use XP, Vista or Win7. Avisynth works just fine on all of them. There isn't a difference in speed ;)

However you may ask whether it is worth going with 64-Bit Windows and using 64-Bit Avisynth. And in case you are using memory-intensive scripts, the answer is: Yes!

BTW: Listing "Automatic multi-threading" as an OS feature is nonsense. Multi-threading works perfectly fine on XP - if the application makes use of it :sly:

(And of course even Windows 7 can not "magically" make single-threaded applications use multiple threads ^^)

MadRat
17th May 2010, 02:49
Automatic multithreading? What are you talking about :devil:


Listing "Automatic multi-threading" as an OS feature is nonsense. Multi-threading works perfectly fine on XP - if the application makes use of it :sly:


I apologize, I don't know the correct terminology. All the online articles I've studied say two things: either Vista and 7 "works better" with multi-core processors than XP Pro does (with no explanation of what that means) or XP Pro puts all processes on core 1 unless there's a specifically, multi-threaded application that uses the other cores, Vista and 7 distribute the load evenly. So judging by your comments I assume they're referring only to the operating system itself?

The "maturity" issue is a pretty silly argument...

There's a fine line between cutting edge and bleeding edge. Which category does Windows 7 fall into? The articles I read say early adopters are more likely to suffer and to wait at least until the first service pack comes out before spending a (few?) hundred dollars on Windows 7. Will I have regrets if I buy Windows 7 now and it can't/won't do what I need it to for several months to a year, if at all?

However you may ask whether it is worth going with 64-Bit Windows and using 64-Bit Avisynth. And in case you are using memory-intensive scripts, the answer is: Yes!


I've been looking forward to it for years! I was excited to read in the nnedi2 thread:

@tritical: Since JoshyD seems to be serious about developing AVS64...

http://forum.doom9.org/showthread.php?p=1378517#post1378517
Although I can't find a stable, beta or even alpha release of 64 bit Avisynth.

Blue_MiSfit
17th May 2010, 06:18
AviSynth x64:
http://forum.doom9.org/showthread.php?t=152800


The articles I read say early adopters are more likely to suffer and to wait at least until the first service pack comes out before spending a (few?) hundred dollars on Windows 7


The articles you read are stupid, and are just people fearmongering over memories of the Vista days. Windows 7 is very stable, and 100% primetime. Nothing is missing, it works great.

I'm almost totally sure XP allows all processes access to all cores, regardless of whether or not they use them. I'm sure there are scheduler improvements in Vista / 7, but that's just another vote for 7 in my book ;)

~MiSfit

7ekno
17th May 2010, 09:12
x86 versions of Avisynth on OSes rank (from my MCTemporalDenoise() benchmarks):
WinXP64 > WinXP x86 > Win7 x86 > Win7 x64 > Vista x86 > Vista x64

The x64 version of Avisynth (x64 only, obviously):
WinXP64 > Win7 x64 > Vista x64

With heavily cut down OS versions (RTLite, nLite, removal of Media Player and IE necessary) and x86 Avisynth:
Win7 x86 > WinXP64 > Win7 x64 > Win XP x86 > Vista x86 > Vista x64

7

pbristow
17th May 2010, 11:02
I think I see your confusion, MadRat.

For any piece of code to run "better" in a multi-processor environment, it has to be written (or re-written) to use multiple threads.

Windows 7 is better than, say, WinXP at using multi-threading *for its own system processes*. That's because several parts of the Windows code have been re-written since 2003 to be multi-threaded.

But when you're doing a heavy AVIsynth job, those Windows processes are only a drop in the processing ocean, as it were, compared to the workload generated by AVIsynth itself. To make *AVIsynth* share its work over several processors, you must use MT. The changes in Windows have no direct benefit there.

I don't know the details of what they've improved, multi-threading wise, in Windows Vist and 7. I *hope* it uncludes critical parts of the disk subsystem: I'm so sick of one process that wants to access the disk for a fraction of a second locking up until some other process has finished transferring a 20GB video file from A to B... :rolleyes:

burfadel
17th May 2010, 18:26
Pbristow, you're absolutely correct about the programme loading and copying thing. I think the logic of the disk access should prioritise file copying etc lower so as to not affect system performance, or at least highly prioritise the loading of the first file! Also if doing multiple copies from one drive to another drive, not at the same time, they should have a filecopy queue!

With Windows 7, there isn't really any need for removing stuff from the OS, it just means you'll be unable to install service packs etc. Just use the add/remove windows features and disable the right services and you'll be ok. DON'T remove windows search in Windows feature, disable the service. This will still allow the start menu search area and the search area in Windows Explorer to work (albeit slightly slower) for example. Also DO NOT EVER disable the superfetch service as it also controls prefetching. Disable application superfetch by setting it to 2 in the registry.

I am surprised the results of the tests put x86 of both vista and 7 as faster than the x64 versions. The only CPU this should hold true for is the latter Pentium 4's that had x64 capability. Pentium 4's suck bad enough as it is, and their x64 implementation was absolutely woeful and ran slower than x86.

Both Core 2/i7 systems and all AMD64 systems run faster under x64 than x86, for both 32 and 64 bit. If there is an anomaly, it will be extremely small. Any large anomalies can be attributed to software faults or people not setting the operating system correctly.

CpT
17th May 2010, 19:47
Windows 7 is better than, say, WinXP at using multi-threading *for its own system processes*.
:
This is true but as someone stated this has nada to do with encoding apps or scripts.

Regarding file transfers in winblows use a free app called teracopy
http://www.codesector.com/teracopy.php Its a life saver...

Regarding Os's:
Vista is a pos. Just don't use it. nuff said...

Xp 32bit is rock stable, if you don't need dx10/11 use it.
Out of 11 workstations 4 are running xp 32 and none of them have been rebooted in over a month - running 24/7.
The encoding speed is exactly the same on the xp rig's compared to the rest of the rigs running Win7 32bit. The ones running Win7 64bit are slightly faster using x64 x264. Same chips/ram/mobo's/drives.

I ran Win7 64 bit on my main rig at home till a drive died in the raid array.
Since then I switched back to a Win7 32bit install. Frankly the 32bit is feels faster and more stable "especially driver wise" in day to day usage.
I was pretty pissed to discover this after buying 3 x 3 packs of win7 64bit...

However I do plan on switching my main rig back to Win7 64bit when my flippin drives come back in stock. If only to run the 64 bit x264.
I do get a few more fps using it and can deal with some Os based hiccups.

Uber stability = Winxp32
Stability + sexy gui + dx11 = Win7 32bit
Semi stable "hardware/driver and other software depending" = Win7 64bit <- The only real 64bit option other than linux.
Flaming pos that should never have been release = Vista

burfadel
17th May 2010, 19:57
Its only older hardware where Windows 7 may be slightly less affective that x64. I haven't had any issues with x64, but I know of people having problems with 32 bit Windows 7. On new hardware really the only choice is Windows 7 x64, it would be silly to run Win XP 64 on a Core i7 IMHO, but at the end of the day its really your choice!

CpT
17th May 2010, 20:15
Xp64 was crap when it was released and never got any better. Plus xp boots using like 400mb of ram.

Regarding hardware, I'm on a 980x cpu 6gb of ddr2000, windows is sitting on a cheetah 15K.7 300gb that's plugged into a Lsi mega raid 9260 8i.
The non raided 32bit feels snappier and it pisses me off... :mad:

I would still recomend win7 64bit + good cpu/ram and fast drives.
Just spend a little time on google searching for your drivers and any related issues.

Blue_MiSfit
17th May 2010, 23:23
CpT you may indeed have driver optimization issues with a hardware SAS RAID card, but let's face it - 99% of people doing encoding here don't have RAID at all :)

Let's also remember that we're not talking about system feel, we're talking about AviSynth performance.

XP64 was a little oddity when it was released, but it certainly did get better. It has all the same service packs etc, and drivers are much better now. I know several people who use it day to day, and are quite happy with it.

That being said, Microsoft finally forced manufacturers to write 32 and 64 bit drivers for WHQL certification, so we're seeing much better driver availability / compatibility / stability / performance in the 64 bit arena since those days.

~MiSfit

CpT
17th May 2010, 23:54
Like I said I plan on hopping back on win7 64 when I can get the drives. The only driver issues I was having were video/ati, a marvel sata 3 controller driver and a m-audio driver. The raid card and drivers are fantastic and the other devices work perfect on win7 32bit.

Encoding Os, - Imo stability should come first.
Xp and win7 32 or 64 will run avisynth pretty much the same. But if you rig crashes half way through a 15 hour encode whats the point.

If the OP is looking for performance ->get the best hardware you can, then choose the OS based off your personal preference. ;)
From what I've seen 99.2% of AviSynth performance is based around hardware not the os.

7ekno
18th May 2010, 09:53
XP64 is fast and rock solid here, it uses the same kernel as Server 2003 x64 and with SP2 is blazing fast (no excessive services, DRM services, etc etc) ...

Although I now only have my main encoding machine on XP64, rest have switched to Win7 x64 for Avisynth x64 and x264 x64 ...

7

burfadel
18th May 2010, 10:10
What ATI card are you running? Never had a problem with ATI drivers myself. Nvidia fanbois may say their drivers suck, but in reality Nvidia drivers are often less stable. Isn't it a coincidence the fanbois started dissing ATI drivers around the time of the Nvidia related BSODS under XP? something that was around for a very long time! Not starting a flame war, just highlighting reality!

CpT, is there a specific problem you had with the ATI drivers under Win 7?

CpT
18th May 2010, 13:49
XP64 is fast and rock solid here, it uses the same kernel as Server 2003 x64 and with SP2 is blazing fast (no excessive services, DRM services, etc etc) ...
7

I was unaware they updated it that much. Admittedly I haven't tried it again in prolly 2 years now. I ran it on a second disk for about a year but it was before or around the time of Sp2 and I don't remember upgrading it.

What ATI card are you running? Never had a problem with ATI drivers myself. Nvidia fanbois may say their drivers suck, but in reality Nvidia drivers are often less stable. Isn't it a coincidence the fanbois started dissing ATI drivers around the time of the Nvidia related BSODS under XP? something that was around for a very long time! Not starting a flame war, just highlighting reality!

CpT, is there a specific problem you had with the ATI drivers under Win 7?

I'm running a saphire 5870 vapor-x and on another rig 2 Gtx280's in sli. And yes the ati looks better in almost every game I run @ 1920x1200 res - maxed everything.
And no I'm not a fanboy lol, I be picking up a fermi before long.

In general I've had very very few issues using ati drivers over the years. 90% of their driver issues ended 5+ years ago. But for some reason misinformed folks keep pissing about them.

The ati driver issue I was having is a gray line video crash/Gsod. Thousands of others are having the same issue. Most of them are on win7 64bit.
I heard flashing the vid card bios would help but frankly considering its 100% stable on Win7 32 bit I don't see the point.
Apparently they fixed it in the 10.4 cat release but I'm waiting on additional drives for the 64bit install.

I never tested the gtx280's in a 64bit os. Imo 64bit gaming is a joke unless you need an absurd amount of ram for the game.
I get better fps in every game I play running win7 32bit compared to win7 64bit. Same exact hardware/drives ect.
Plus my Win7 32bit install boots up and idles using between 550-650mb of ram, compared to my 64bit install booting at 1gb+.
So if all you're doing is gaming there's little need for a 64bit os. I'm sure peeps will flame me for that statement but honestly how many 64bit games do you play?

Currently I dualboot - 1 workstation setup @ win7 64bit + 1 gaming setup @ win7 32bit. err or I will when I can reinstall 64 again.


To get back OT, for workstations, encoding ect win7 64bit rocks. Other than that random ati driver release I've had 0 major issues with it and encoding is a bit faster for sure... :cool:

burfadel
18th May 2010, 15:10
About ATI:
The ATI's have better processing of the images, although there is a lot you can do to change things on an ATI. Edge detect anti-aliasing works well, and enabling Anistropy/antialiasing optimisations, truform, and the dozens of hidden settings can make all the difference. Try SKDtraytool. You can access a lot of features, almost all of which are fine. Some may cause issues, one mine its the following:

Under 'More D3D settings'
- LVB PCI gate
- Internal LVB
- Z bias guard band
- User scissor enable

and under 'Extra Settings', Additional AA AF Mods, enabling ASBT caused the fog to go funny in the old game 'Mafia'.

This may sound like a quite a few settings, but there are over 60 hidden settings I've enabled with no problems, and a nice performance boost (no decrease in quality noticed).

Give it a try at least! Its available here: http://www.ngohq.com/skds-corner/

If you are only doing avisynth encoding, XP Pro x64 is probably all you need (fully updated of course). Thats only because you already have it. If you are using it for other things, then Windows 7 x64 is probably the better choice. Leaving the changeover to Windows 7 x64 too late will mean Windows 8 (which will be x64 only apparently) will be around the corner, and then you get in to the 'upgrade syndrome' ;)

'Upgrade syndrome' - the waiting for better hardware, by which time something new is announced resulting in further wait.

Recently hardware has changed together, such as Core i7 becoming mainstream, DDR3, new graphics cards, Windows 7. Upgrade syndrome at the moment would be whether to buy now or buy the Socket 1155 (yes, socket change) Core i7 <= 8xx replacement at the end of the year, or buy the Socket 1360 core i7 now or the Socket 1359? Core i7 9xx replacement early next year. At that point, Ati's 6xxx GPU's will be about ready, and being a completely new architecture will warrant a bit of a wait. Then the AMD Bulldozer will be around the corner, so further wait to see how that goes!

My point is, how long will you keep the Core i7 before you will consider an upgrade? You will need to upgrade the motherboard and CPU when the new Core i7's come out at the end of the year, which means you can't reuse an OEM Windows 7 x64 key.