Jeremy Duncan
17th January 2007, 00:15
Previous test thread (http://forum.doom9.org/showthread.php?t=120371)
The previous thread had different tests and the results were all over the place.
In honor of that thread, then.
I decided to post the same test I ran, and the links to the necessary software.
If we all use the same plugins and run the same test, the data gathered will be useful.
I hope I'm not offending you Pookie, or anybody else.
Anyway. Here's the test. I hope I'm being helpful. :helpful:
________________________________________________________
Avisynth (http://downloads.sourceforge.net/avisynth2/Avisynth_257.exe)
Winrar. To unzip removegrain (http://www.rarlab.com/download.htm)
RemoveGrain 1.0 (http://home.arcor.de/kassandro/RemoveGrain/RemoveGrain.rar)
masktools_alpha (2.0a30) (http://manao4.free.fr/masktools-v2.0a30.zip)
Fluxsmooth (http://www.kvcd.net/sansgrip/avisynth/FluxSmooth-1.1a.zip)
medianblur (http://www.avisynth.org/tsp/medianblur084.zip)
mvtools (http://avisynth.org.ru/mvtools/mvtools-v1.6.2.zip)
TTempSmooth (http://www.missouri.edu/~kes25c/TTempSmoothv094.zip)
wget.exe, test.avs, runme.bat (http://www.bestsharing.com/files/vd7YK204826/Pookies%20Test.zip.html)
Here's a benchmarking script which might provide some info.
1) Download Wget.exe from Here (http://users.ugent.be/~bpuype/cgi-bin/fetch.pl?dl=wget/wget.exe)
2) Copy this batch file, save as Runme.bat
::v1.00
if not exist 7za.exe wget http://markosf.ath.cx/mSoftware/7za.exe
if not exist cpu-z-138.zip wget http://www.cpuid.com/download/cpu-z-138.zip
set path=%path%;c:\windows\system32
if not exist pthreadGC2.dll wget http://sourceware.mirrors.tds.net/pub/sourceware.org/pthreads-win32/dll-latest/lib/pthreadGC2.dll
if not exist ffmpeg.rev7375.7z wget http://tirnanog.fate.jp/mirror/ffmpeg/ffmpeg.rev7375.7z
if not exist Motion1.exe wget http://www.streamcrest.com/Motion1.exe
if not exist yuv2avi.exe wget http://www.streamcrest.com/yuv2avi.exe
if not exist cat.exe wget http://www.ufridman.com/cat-src.zip
7za e -y cpu-z-138.zip
7za e -y ffmpeg.rev7375.7z
7za e -y cat-src.zip
motion1 test.yuv
yuv2avi test.yuv test.avi 525c RGB235
del test.yuv
cpuz.exe -txt=cpuinfo
type cpuinfo.txt | findstr "Specification" >result.txt
type cpuinfo.txt | findstr "L1" >>result.txt
type cpuinfo.txt | findstr "L2" >>result.txt
type cpuinfo.txt | findstr "Memory" | findstr "Size">>memory.txt
for /f "Tokens=3" %%a in (memory.txt) do echo set tmem=%%a >tmem.bat
call tmem.bat
set /a qmem=%tmem%/4
set /a hmem=%tmem%/2
set /a fmem=%tmem%-64
echo setmemorymax(%qmem%) >%qmem%.txt && cat %qmem%.txt test.avs >%qmem%test.avs
echo setmemorymax(%hmem%) >%hmem%.txt && cat %hmem%.txt test.avs >%hmem%test.avs
echo setmemorymax(%fmem%) >%fmem%.txt && cat %fmem%.txt test.avs >%fmem%test.avs
echo. >>result.txt
echo Total Memory Installed=%tmem%MB >>result.txt
echo. >>result.txt
echo %qmem%MB memory >>result.txt
ffmpeg -benchmark -i %qmem%test.avs -an -vcodec rawvideo -y out.avi >>result.txt
echo. >>result.txt
echo %hmem%MB memory >>result.txt
ffmpeg -benchmark -i %hmem%test.avs -an -vcodec rawvideo -y out.avi >>result.txt
echo. >>result.txt
echo %fmem%MB memory >>result.txt
ffmpeg -benchmark -i %fmem%test.avs -an -vcodec rawvideo -y out.avi >>result.txt
notepad result.txt
rem del test.avi
del out.avi
3) Save the following as TEST.AVS (thanks, Didée)
BTW - You'll need to have the plugins below installed. Modify script if your plugins are located elsewhere.
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\fluxsmooth.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MedianBlur.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mt_masktools.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MVTools.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\RemoveGrain.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\Repair.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\TTempSmooth.dll")
aviSource("test.avi").converttoyv12()
trim(100,114)
Bob(0,0.5)
bobbed = last
base = last.minblur(2).FluxSmoothT(9)
bw4_vec = base.MVAnalyse(isb=true, truemotion=false,delta=4,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
bw3_vec = base.MVAnalyse(isb=true, truemotion=false,delta=3,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
bw2_vec = base.MVAnalyse(isb=true, truemotion=false,delta=2,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
bw1_vec = base.MVAnalyse(isb=true, truemotion=false,delta=1,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
fw1_vec = base.MVAnalyse(isb=false, truemotion=false,delta=1,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
fw2_vec = base.MVAnalyse(isb=false, truemotion=false,delta=2,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
fw3_vec = base.MVAnalyse(isb=false, truemotion=false,delta=3,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
fw4_vec = base.MVAnalyse(isb=false, truemotion=false,delta=4,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
bw4_comp = bobbed.MVCompensate(bw4_vec,idx=2)
bw3_comp = bobbed.MVCompensate(bw3_vec,idx=2)
bw2_comp = bobbed.MVCompensate(bw2_vec,idx=2)
bw1_comp = bobbed.MVCompensate(bw1_vec,idx=2)
fw1_comp = bobbed.MVCompensate(fw1_vec,idx=2)
fw2_comp = bobbed.MVCompensate(fw2_vec,idx=2)
fw3_comp = bobbed.MVCompensate(fw3_vec,idx=2)
fw4_comp = bobbed.MVCompensate(fw4_vec,idx=2)
Interleave(bw4_comp,bw3_comp,bw2_comp,bw1_comp,bobbed,fw1_comp,fw2_comp,fw3_comp,fw4_comp)
MedianBlurT(0,0,0,4)
SelectEvery(9,4)
base2 = last
bobbed2 = last
bw4_vec2 = base2.MVAnalyse(isb=true, truemotion=false,delta=4,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
bw3_vec2 = base2.MVAnalyse(isb=true, truemotion=false,delta=3,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
bw2_vec2 = base2.MVAnalyse(isb=true, truemotion=false,delta=2,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
bw1_vec2 = base2.MVAnalyse(isb=true, truemotion=false,delta=1,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
fw1_vec2 = base2.MVAnalyse(isb=false, truemotion=false,delta=1,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
fw2_vec2 = base2.MVAnalyse(isb=false, truemotion=false,delta=2,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
fw3_vec2 = base2.MVAnalyse(isb=false, truemotion=false,delta=3,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
fw4_vec2 = base2.MVAnalyse(isb=false, truemotion=false,delta=4,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
bw4_comp2 = bobbed2.MVCompensate(bw4_vec2,idx=3)
bw3_comp2 = bobbed2.MVCompensate(bw3_vec2,idx=3)
bw2_comp2 = bobbed2.MVCompensate(bw2_vec2,idx=3)
bw1_comp2 = bobbed2.MVCompensate(bw1_vec2,idx=3)
fw1_comp2 = bobbed2.MVCompensate(fw1_vec2,idx=3)
fw2_comp2 = bobbed2.MVCompensate(fw2_vec2,idx=3)
fw3_comp2 = bobbed2.MVCompensate(fw3_vec2,idx=3)
fw4_comp2 = bobbed2.MVCompensate(fw4_vec2,idx=3)
Interleave(bw4_comp2,bw3_comp2,bw2_comp2,bw1_comp2,bobbed2,fw1_comp2,fw2_comp2,fw3_comp2,fw4_comp2)
ttempsmooth(4,8,8,2,2,strength=5,pfclip=last.RemoveGrain(11))
SelectEvery(9,4)
maxx = bobbed.mt_logic(bw1_comp,"max")
\ .mt_logic(fw1_comp,"max")
minn = bobbed.mt_logic(bw1_comp,"min")
\ .mt_logic(fw1_comp,"min")
#.mt_logic(bw2_comp,"max").mt_logic(bw3_comp,"max")
#.mt_logic(fw2_comp,"max").mt_logic(fw3_comp,"max")
#.mt_logic(bw2_comp,"min").mt_logic(bw3_comp,"min")
#.mt_logic(fw2_comp,"min").mt_logic(fw3_comp,"min")
ssharp = mt_lutxy(last,last.RemoveGrain(11), \
"x x y - abs 12 / 1 4 / ^ 12 * x y - 2 ^ x y - 2 ^ 2.3 + / * x y - x y - abs 0.0001 + / * 1 x y - abs 16 / 1 4 / ^ + / +",U=2,V=2)
ssharp.mt_Clamp(maxx,minn,0,0,U=2,V=2)
SeparateFields().SelectEvery(4,0,3).Weave() # before or after,
interleave( selectevery(5,0).FluxSmoothT(7),selectevery(5,1).FluxSmoothT(7),
\ selectevery(5,2).FluxSmoothT(7),selectevery(5,3).FluxSmoothT(7),
\ selectevery(5,4).FluxSmoothT(7) )
# SeparateFields().SelectEvery(4,0,3).Weave() # that's a question
return(last)
#=================================
# Nifty Gauss/Median combination
function MinBlur(clip clp, int r, int "uv")
{
uv = default(uv,3)
uv2 = (uv==2) ? 1 : uv
rg4 = (uv==3) ? 4 : -1
rg11 = (uv==3) ? 11 : -1
rg20 = (uv==3) ? 20 : -1
medf = (uv==3) ? 1 : -200
RG11D = (r==1) ? mt_MakeDiff(clp,clp.RemoveGrain(11,rg11),U=uv2,V=uv2)
\ : (r==2) ? mt_MakeDiff(clp,clp.RemoveGrain(11,rg11).RemoveGrain(11,rg11),U=uv2,V=uv2)
\ : mt_MakeDiff(clp,clp.RemoveGrain(11,rg11).RemoveGrain(20,rg20).RemoveGrain(20,rg20),U=uv2,V=uv2)
RG4D = (r==1) ? mt_MakeDiff(clp,clp.RemoveGrain(4,rg4),U=uv2,V=uv2)
\ : (r==2) ? mt_MakeDiff(clp,clp.medianblur(2,2*medf,2*medf),U=uv2,V=uv2)
\ : mt_MakeDiff(clp,clp.medianblur(3,3*medf,3*medf),U=uv2,V=uv2)
DD = mt_lutxy(RG11D,RG4D,"x 128 - y 128 - * 0 < 128 x 128 - abs y 128 - abs < x y ? ?",U=uv2,V=uv2)
(r==0) ? clp : clp.mt_MakeDiff(DD,U=uv,V=uv)
return(last)
}
#end
4) Create a folder to place these three files. It should look like this:
Runme.bat
Test.avs
wget.exe
5) Double Click on Runme.bat. It will download the necessary files to run the benchmark.
When it is done, notepad will pop up with your CPU info and processing time.
Multiply the results by 2 and post the info in this thread.
It'll look like this
Specification Intel(R) Pentium(R) M processor 1.60GHz
L1 Data cache 32 KBytes, 8-way set associative, 64-byte line size
L1 Instruction cache 32 KBytes, 8-way set associative, 64-byte line size
L2 cache 2048 KBytes, 8-way set associative, 64-byte line size
Total Memory Installed=504 MB
126MB memory
bench: utime=295.484s multiplied by 2 = 590.968
252MB memory
bench: utime=140.094s multiplied by 2 = 280.188
440MB memory
bench: utime=204.781s multiplied by 2 = 409.562
The previous thread had different tests and the results were all over the place.
In honor of that thread, then.
I decided to post the same test I ran, and the links to the necessary software.
If we all use the same plugins and run the same test, the data gathered will be useful.
I hope I'm not offending you Pookie, or anybody else.
Anyway. Here's the test. I hope I'm being helpful. :helpful:
________________________________________________________
Avisynth (http://downloads.sourceforge.net/avisynth2/Avisynth_257.exe)
Winrar. To unzip removegrain (http://www.rarlab.com/download.htm)
RemoveGrain 1.0 (http://home.arcor.de/kassandro/RemoveGrain/RemoveGrain.rar)
masktools_alpha (2.0a30) (http://manao4.free.fr/masktools-v2.0a30.zip)
Fluxsmooth (http://www.kvcd.net/sansgrip/avisynth/FluxSmooth-1.1a.zip)
medianblur (http://www.avisynth.org/tsp/medianblur084.zip)
mvtools (http://avisynth.org.ru/mvtools/mvtools-v1.6.2.zip)
TTempSmooth (http://www.missouri.edu/~kes25c/TTempSmoothv094.zip)
wget.exe, test.avs, runme.bat (http://www.bestsharing.com/files/vd7YK204826/Pookies%20Test.zip.html)
Here's a benchmarking script which might provide some info.
1) Download Wget.exe from Here (http://users.ugent.be/~bpuype/cgi-bin/fetch.pl?dl=wget/wget.exe)
2) Copy this batch file, save as Runme.bat
::v1.00
if not exist 7za.exe wget http://markosf.ath.cx/mSoftware/7za.exe
if not exist cpu-z-138.zip wget http://www.cpuid.com/download/cpu-z-138.zip
set path=%path%;c:\windows\system32
if not exist pthreadGC2.dll wget http://sourceware.mirrors.tds.net/pub/sourceware.org/pthreads-win32/dll-latest/lib/pthreadGC2.dll
if not exist ffmpeg.rev7375.7z wget http://tirnanog.fate.jp/mirror/ffmpeg/ffmpeg.rev7375.7z
if not exist Motion1.exe wget http://www.streamcrest.com/Motion1.exe
if not exist yuv2avi.exe wget http://www.streamcrest.com/yuv2avi.exe
if not exist cat.exe wget http://www.ufridman.com/cat-src.zip
7za e -y cpu-z-138.zip
7za e -y ffmpeg.rev7375.7z
7za e -y cat-src.zip
motion1 test.yuv
yuv2avi test.yuv test.avi 525c RGB235
del test.yuv
cpuz.exe -txt=cpuinfo
type cpuinfo.txt | findstr "Specification" >result.txt
type cpuinfo.txt | findstr "L1" >>result.txt
type cpuinfo.txt | findstr "L2" >>result.txt
type cpuinfo.txt | findstr "Memory" | findstr "Size">>memory.txt
for /f "Tokens=3" %%a in (memory.txt) do echo set tmem=%%a >tmem.bat
call tmem.bat
set /a qmem=%tmem%/4
set /a hmem=%tmem%/2
set /a fmem=%tmem%-64
echo setmemorymax(%qmem%) >%qmem%.txt && cat %qmem%.txt test.avs >%qmem%test.avs
echo setmemorymax(%hmem%) >%hmem%.txt && cat %hmem%.txt test.avs >%hmem%test.avs
echo setmemorymax(%fmem%) >%fmem%.txt && cat %fmem%.txt test.avs >%fmem%test.avs
echo. >>result.txt
echo Total Memory Installed=%tmem%MB >>result.txt
echo. >>result.txt
echo %qmem%MB memory >>result.txt
ffmpeg -benchmark -i %qmem%test.avs -an -vcodec rawvideo -y out.avi >>result.txt
echo. >>result.txt
echo %hmem%MB memory >>result.txt
ffmpeg -benchmark -i %hmem%test.avs -an -vcodec rawvideo -y out.avi >>result.txt
echo. >>result.txt
echo %fmem%MB memory >>result.txt
ffmpeg -benchmark -i %fmem%test.avs -an -vcodec rawvideo -y out.avi >>result.txt
notepad result.txt
rem del test.avi
del out.avi
3) Save the following as TEST.AVS (thanks, Didée)
BTW - You'll need to have the plugins below installed. Modify script if your plugins are located elsewhere.
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\fluxsmooth.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MedianBlur.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\mt_masktools.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\MVTools.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\RemoveGrain.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\Repair.dll")
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\TTempSmooth.dll")
aviSource("test.avi").converttoyv12()
trim(100,114)
Bob(0,0.5)
bobbed = last
base = last.minblur(2).FluxSmoothT(9)
bw4_vec = base.MVAnalyse(isb=true, truemotion=false,delta=4,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
bw3_vec = base.MVAnalyse(isb=true, truemotion=false,delta=3,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
bw2_vec = base.MVAnalyse(isb=true, truemotion=false,delta=2,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
bw1_vec = base.MVAnalyse(isb=true, truemotion=false,delta=1,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
fw1_vec = base.MVAnalyse(isb=false, truemotion=false,delta=1,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
fw2_vec = base.MVAnalyse(isb=false, truemotion=false,delta=2,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
fw3_vec = base.MVAnalyse(isb=false, truemotion=false,delta=3,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
fw4_vec = base.MVAnalyse(isb=false, truemotion=false,delta=4,lambda=512,pel=2,sharp=2,blksize=16,overlap=16/2,pnew=32,idx=1)
bw4_comp = bobbed.MVCompensate(bw4_vec,idx=2)
bw3_comp = bobbed.MVCompensate(bw3_vec,idx=2)
bw2_comp = bobbed.MVCompensate(bw2_vec,idx=2)
bw1_comp = bobbed.MVCompensate(bw1_vec,idx=2)
fw1_comp = bobbed.MVCompensate(fw1_vec,idx=2)
fw2_comp = bobbed.MVCompensate(fw2_vec,idx=2)
fw3_comp = bobbed.MVCompensate(fw3_vec,idx=2)
fw4_comp = bobbed.MVCompensate(fw4_vec,idx=2)
Interleave(bw4_comp,bw3_comp,bw2_comp,bw1_comp,bobbed,fw1_comp,fw2_comp,fw3_comp,fw4_comp)
MedianBlurT(0,0,0,4)
SelectEvery(9,4)
base2 = last
bobbed2 = last
bw4_vec2 = base2.MVAnalyse(isb=true, truemotion=false,delta=4,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
bw3_vec2 = base2.MVAnalyse(isb=true, truemotion=false,delta=3,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
bw2_vec2 = base2.MVAnalyse(isb=true, truemotion=false,delta=2,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
bw1_vec2 = base2.MVAnalyse(isb=true, truemotion=false,delta=1,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
fw1_vec2 = base2.MVAnalyse(isb=false, truemotion=false,delta=1,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
fw2_vec2 = base2.MVAnalyse(isb=false, truemotion=false,delta=2,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
fw3_vec2 = base2.MVAnalyse(isb=false, truemotion=false,delta=3,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
fw4_vec2 = base2.MVAnalyse(isb=false, truemotion=false,delta=4,lambda=256,pel=2,sharp=2,blksize=8,overlap=8/2,pnew=32,idx=3)
bw4_comp2 = bobbed2.MVCompensate(bw4_vec2,idx=3)
bw3_comp2 = bobbed2.MVCompensate(bw3_vec2,idx=3)
bw2_comp2 = bobbed2.MVCompensate(bw2_vec2,idx=3)
bw1_comp2 = bobbed2.MVCompensate(bw1_vec2,idx=3)
fw1_comp2 = bobbed2.MVCompensate(fw1_vec2,idx=3)
fw2_comp2 = bobbed2.MVCompensate(fw2_vec2,idx=3)
fw3_comp2 = bobbed2.MVCompensate(fw3_vec2,idx=3)
fw4_comp2 = bobbed2.MVCompensate(fw4_vec2,idx=3)
Interleave(bw4_comp2,bw3_comp2,bw2_comp2,bw1_comp2,bobbed2,fw1_comp2,fw2_comp2,fw3_comp2,fw4_comp2)
ttempsmooth(4,8,8,2,2,strength=5,pfclip=last.RemoveGrain(11))
SelectEvery(9,4)
maxx = bobbed.mt_logic(bw1_comp,"max")
\ .mt_logic(fw1_comp,"max")
minn = bobbed.mt_logic(bw1_comp,"min")
\ .mt_logic(fw1_comp,"min")
#.mt_logic(bw2_comp,"max").mt_logic(bw3_comp,"max")
#.mt_logic(fw2_comp,"max").mt_logic(fw3_comp,"max")
#.mt_logic(bw2_comp,"min").mt_logic(bw3_comp,"min")
#.mt_logic(fw2_comp,"min").mt_logic(fw3_comp,"min")
ssharp = mt_lutxy(last,last.RemoveGrain(11), \
"x x y - abs 12 / 1 4 / ^ 12 * x y - 2 ^ x y - 2 ^ 2.3 + / * x y - x y - abs 0.0001 + / * 1 x y - abs 16 / 1 4 / ^ + / +",U=2,V=2)
ssharp.mt_Clamp(maxx,minn,0,0,U=2,V=2)
SeparateFields().SelectEvery(4,0,3).Weave() # before or after,
interleave( selectevery(5,0).FluxSmoothT(7),selectevery(5,1).FluxSmoothT(7),
\ selectevery(5,2).FluxSmoothT(7),selectevery(5,3).FluxSmoothT(7),
\ selectevery(5,4).FluxSmoothT(7) )
# SeparateFields().SelectEvery(4,0,3).Weave() # that's a question
return(last)
#=================================
# Nifty Gauss/Median combination
function MinBlur(clip clp, int r, int "uv")
{
uv = default(uv,3)
uv2 = (uv==2) ? 1 : uv
rg4 = (uv==3) ? 4 : -1
rg11 = (uv==3) ? 11 : -1
rg20 = (uv==3) ? 20 : -1
medf = (uv==3) ? 1 : -200
RG11D = (r==1) ? mt_MakeDiff(clp,clp.RemoveGrain(11,rg11),U=uv2,V=uv2)
\ : (r==2) ? mt_MakeDiff(clp,clp.RemoveGrain(11,rg11).RemoveGrain(11,rg11),U=uv2,V=uv2)
\ : mt_MakeDiff(clp,clp.RemoveGrain(11,rg11).RemoveGrain(20,rg20).RemoveGrain(20,rg20),U=uv2,V=uv2)
RG4D = (r==1) ? mt_MakeDiff(clp,clp.RemoveGrain(4,rg4),U=uv2,V=uv2)
\ : (r==2) ? mt_MakeDiff(clp,clp.medianblur(2,2*medf,2*medf),U=uv2,V=uv2)
\ : mt_MakeDiff(clp,clp.medianblur(3,3*medf,3*medf),U=uv2,V=uv2)
DD = mt_lutxy(RG11D,RG4D,"x 128 - y 128 - * 0 < 128 x 128 - abs y 128 - abs < x y ? ?",U=uv2,V=uv2)
(r==0) ? clp : clp.mt_MakeDiff(DD,U=uv,V=uv)
return(last)
}
#end
4) Create a folder to place these three files. It should look like this:
Runme.bat
Test.avs
wget.exe
5) Double Click on Runme.bat. It will download the necessary files to run the benchmark.
When it is done, notepad will pop up with your CPU info and processing time.
Multiply the results by 2 and post the info in this thread.
It'll look like this
Specification Intel(R) Pentium(R) M processor 1.60GHz
L1 Data cache 32 KBytes, 8-way set associative, 64-byte line size
L1 Instruction cache 32 KBytes, 8-way set associative, 64-byte line size
L2 cache 2048 KBytes, 8-way set associative, 64-byte line size
Total Memory Installed=504 MB
126MB memory
bench: utime=295.484s multiplied by 2 = 590.968
252MB memory
bench: utime=140.094s multiplied by 2 = 280.188
440MB memory
bench: utime=204.781s multiplied by 2 = 409.562