Log in

View Full Version : fft3dGPU 0.8.2


Pages : 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19

JnZ
5th November 2006, 12:05
If looking for a new AGP video card from the low end (like sub-$80US) to replace my dying ATI 9700 Pro...
You are an ATI fan? If You aren't, You may try something like GF 7600 GS. It have good oveclock potencial and low price (something around like X1300). I own Gainward 7600 GS with GDR3, and tweak it to the 7600GT. I don't know, how important is memory speed for FFT3DGPU, but I can make some real tests (normal and overclocked MEM on GK), if You want.;)
J.

EDIT: I have PCX card, but AGP 7600 GS are still in shops.

InsulinJunkie
6th November 2006, 01:52
I own Gainward 7600 GS with GDR3, and tweak it to the 7600GT. I don't know, how important is memory speed for FFT3DGPU, but I can make some real tests (normal and overclocked MEM on GK), if You want.;)

Thank you for the offer.

However, the AGP version of the 7600 is more expensive than the x1300 (at least here), and more than I'm looking to spend on a video card (since I don't game).

I do appreciate the offer, though.

Egh
6th November 2006, 14:24
You are an ATI fan? If You aren't, You may try something like GF 7600 GS. It have good oveclock potencial and low price (something around like X1300). I own Gainward 7600 GS with GDR3, and tweak it to the 7600GT. I don't know, how important is memory speed for FFT3DGPU, but I can make some real tests (normal and overclocked MEM on GK), if You want.;)
J.


In fact I've upgraded my system recently and looking for a proper GFX card as well.

For instance, for this plugin, is the number of pixel shaders and pixel pipelines important? If we take two similar cards with same core frequency, how faster will be the one with let's say 12 pixel pipelines over the one with only 8 pipelines?

And concerning memory datarate, if we take 7600GS and 7600GT, will be the latter roughly twice as fast for fft3d gpu? (GS has DDR2 at 800-900Mhz, GT has GDDR3)

tsp
6th November 2006, 22:25
well the memory and core clock must be somewhat balanced so it is difficult to say if memory speed is more important than core clock. And again if you only have few pixelshaders fast memory doesn't matter as much as they can't work on as much data. I will try making some measurements with different core and memory clock and number of pixelshaders to see what matters the most. I reduced the number of pixelshaders to 4 from 20(80% reduction) on my geforce 7800GT this reduced the performance from ~40 fps to ~12(70% reduction) fps for fft3dgpu(precision=2,bt=4) while retaining the core/memory speed of 450/1400 MHz.

Egh: (G)DDR2 and GDDR3 running at the same clock frequency should be running at the same speed while GDDR3 uses less power.

JnZ
6th November 2006, 23:20
I make small test, use fft3dgpu on test clip with 2000 frames, then saved to avi with Huffyuv 2.1.1 (coz of very high biterate for uncompressed video, so try to exclude HDD performance influence). You can now imagine, which factor is important (fast core, memory or both on GK).

Here is my test:
Graphics card: Gainward Gf7600GS with GDR3
Test clip: 720x288
Frames: 2000
Settings: fft3dgpu(sigma=2)

Default frequencies GPU/MEM: 400/400 (800)?

Results:
[GPU/MEM] [time] [fps]
==================
400/400 71s 28fps
---------------------
500/720 48s 42fps
400/720 55s 36fps
300/720 65s 31fps
200/720 87s 23fps
128/720 127s 16fps
---------------------
500/600 52s 39fps
500/500 57s 35fps
500/400 68s 29fps
500/300 76s 26fps
================

This is my test results with latest FFT3DGPU and X2 3800+.

Egh
7th November 2006, 15:13
Results:
[GPU/MEM] [time] [fps]
==================
400/400 71s 28fps
---------------------
300/720 65s 31fps
---------------------
500/300 76s 26fps
================


Hmm, that gives some hint that video memory speed
is moar important.

Although of course in order to have considerable effect
you need to alter the frequency to by a rather high amount.

InsulinJunkie
11th November 2006, 13:26
You may try something like GF 7600 GS. It have good oveclock potencial and low price (something around like X1300). I own Gainward 7600 GS with GDR3, and tweak it to the 7600GT.

Revisiting this.... after checking out the horrible price/performance ratio on AGP cards (and realizing I wouldn't be able to re-use a new AGP card in my next system), I ordered a cheap open-box socket754 board with a PCI-E slot.

By moving to PCI-E, the 7600GS is definitely now in my price range. On the other hand, 7600GT prices seem to be in the process of falling fast to the $100US mark (some of them are almost there already after rebates).
UPDATE: Yikes...and now the 7900GS is already hitting $150US *AT RETAIL* with no rebates (Best Buy ad). That didn't take long.

The ATI x1650XT is supposed to be out next week in the US, too. If pixelshading power is a major part of ff3dGPU, it's got the 7600GT beat handily in that area, spec-wise (13800 ops/per sec vs. 6720 (http://www.gpureview.com/show_cards.php?card1=385&card2=472)). Core/memory specs are roughly the same on the two models' stock configs. Don't know what the real-world price will be on the x1650 yet, though.

Hmm...

DDogg
11th November 2006, 15:53
fyi - I have the ATI 1600XT and fft3dGPU works flawlessly.

huang_ch
15th November 2006, 09:49
I found this filter today and trying it with an old anime, the result is pretty good: (cpu: Conroe E6600, gpu: 7900GS at 475/1400)
w/o fft3dGPU:
~20fps, 735Kbps, PSNR (avg/global): 45.046/43.844
w/ fft3dGPU: (sigma=3,bt=3,plane=4,precision=2)
14.67fps, 542Kbps, PSNR: 46.431/44.920

It improves bitrate & PSNR hugely, that's great, also the noise is reduced a lot.

But the performance is not quite good, I found the bottleneck is the GPU, when I use VirtualDub to open that AVS and run the video analysis to check the maximum fps of only apply the fft3dGPU, I found the result is about 16~17fps, but if I test it with only sigma=2, it runs about 65fps, and it seems that sigma=3 will cause it reduce to about 50fps, while plane=4 or precision=2 is the most each will cause about 40%~50% loss. So this keeps my CPU always running around 30%~70%...
Hope these data will be useful to all of you, and hope the performance will be improved continuously. Anyway, thanks for bringing us such a wonderful filter~~~

huang_ch
15th November 2006, 10:28
And another question is, I found the video processed by fft3dgpu is a bit blur/smoothed, so what kind of sharpen filters do you usually use with fft3dgpu? I've tried SeeSaw, but the result is terrible:
1. I didn't see any obvious sharpen happened, maybe my fault not tuning the parameters...
2. It brings the PSNR & bitrate back a lot which win by fft3dgpu...

tsp
15th November 2006, 17:23
huang_ch: thanks for the input, to enable the build-in sharpener, use the shapen parameter. Try for example
fft3dgpu(sigma=3,bt=3,plane=4,precision=2,sharpen=10)
usually it is not a good idea to set the sharpen value this high.
The problem with sharpener is that they enhance the noise fft3dgu (and other denoisers) reduce(and by reducing the noise it usually produce a more blurry picture) so it is kind of expected that the PSNR decrease when using a sharpener. You can try to reduce the denoising of the high frequency by setting sigma lower than sigma2,sigma3 and sigma4 like:
fft3dgpu(sigma=2,sigma2=2.5,sigma3=3,sigma4=3,bt=3,plane=4,precision=2)
About the speed buying a geforce 8800 GTX would help. seriously this filter does a lot of complex math so it will never be as fast as temporalsoften. You can try compair it to fft3dfilter(used with my filter mt, it should be "fast" on a core2 processor not sure if it is faster than fft3dgpu though)

huang_ch
16th November 2006, 02:32
tsp: Thanks for your quick reply, I'll try your suggestions today.
About sharpening, I've tried buildin sharpener of fft3dgpu last night with param 0.3 or even 1.0, but don't have obvious visual effect to my eyes, while applying a LimitedSharpenFaster with strength=50/80, I could tell the difference easily, so I want to ask what kind of sharpen algorithm used in fft3dgpu? Is it similar to LimitedSharpenFaster?

And about the significant increase of bitrate, as you explained, I realized that this is as expected because sharpener also enhance the noise which decrease by denoisers, so a question is that is it possible to do another round of denoiser after sharpener by some settings only reduce the noise bring by sharpener? (high frequency or low frequency? I'm not familiar with them...)

Also, I'm not quite understand the goal of your suggestion about "You can try to reduce the denoising of the high frequency by setting sigma lower than sigma2,sigma3 and sigma4 like:....", what is this for?

About the performance, I've tried fft3dfilter once and fft3dgpu is really much faster than fft3dfilter(I don't remember the exact number, but at least 2x I think), but I'm just talking about optimization, and also some posts are claiming that GPU is xx times faster than CPU, so I'm dreaming for a xx times faster fft3dgpu than fft3dfilter.:D And I don't know how much extra performance could be gained if a fft3dgpu could be optimized special for a specific model (e.g. 7900gs), because different models have different number of registers, pixel/vertex shaders, etc.

And talking about the precision, do anyone get any difference with precision=0/1/2? I didn't get the visual difference myself, but the difference in performance is really big, so if no major difference, I think I'll go with precision=0.

tsp
16th November 2006, 22:25
the "high" frequency in the images represent sudden change in pixel intensity like edges and such while "low" frequency represent soft pixel intensity changes so lowering(=denoising) the high frequency blurs the image while increasing(=sharpen) the high frequency makes the edges look sharper. So lowering the denoising of the high frequency(sigma and sigma2) should make the image look less blurry.

the pixelshaders are compiled at runtime by directx so they are optimized depending on which pixelshader level that are supported. I develop fft3dgpu using a geforce 7800GT so it is "optimized" for the G70

huang_ch
17th November 2006, 02:35
tsp, got the meaning of high/low frequency, thanks.

huang_ch
18th November 2006, 09:04
tsp, I'm reporting another strange issue on my machine.
when I run with below script with VirtualDub's run analysis to test the performance, it always report a 30-32fps:
video=fft3dgpu(video,sigma=1,sigma2=1.5,sigma3=2,sigma4=2,plane=4,precision=0)
And if I run below script, it always report a 60-64fps:
video=fft3dgpu(video,sigma=1,sigma2=1.5,sigma3=2,sigma4=2,plane=0,precision=0)

What I mean "always" is that whatever core/mem frequency of my 7900GS I overclock or underclock, the highest is always 32/64fps. For example:
default is 475/1400, and I got 32/64fps max.
And for below settings they're always 32/64fps:
400/1400, 550/1400, 550/1560, 400/1560
And with below ultra low frequency, fps does reduced to about 28/58 fps: 360/1400, 400/1200
So it is strange that the maximum fps seems to be locked at ~60fps when plane=0, while ~30fps when plane=4.
Does anyone meet this kind of issue?
And I've tested at least with 91.47 or 93.71 nvidia drivers.

G_M_C
18th November 2006, 12:09
tsp, I'm reporting another strange issue on my machine.
when I run with below script with VirtualDub's run analysis to test the performance, it always report a 30-32fps:
video=fft3dgpu(video,sigma=1,sigma2=1.5,sigma3=2,sigma4=2,plane=4,precision=0)
And if I run below script, it always report a 60-64fps:
video=fft3dgpu(video,sigma=1,sigma2=1.5,sigma3=2,sigma4=2,plane=0,precision=0)

What I mean "always" is that whatever core/mem frequency of my 7900GS I overclock or underclock, the highest is always 32/64fps. For example:
default is 475/1400, and I got 32/64fps max.
And for below settings they're always 32/64fps:
400/1400, 550/1400, 550/1560, 400/1560
And with below ultra low frequency, fps does reduced to about 28/58 fps: 360/1400, 400/1200
So it is strange that the maximum fps seems to be locked at ~60fps when plane=0, while ~30fps when plane=4.
Does anyone meet this kind of issue?
And I've tested at least with 91.47 or 93.71 nvidia drivers.


Wait for tsp for a definitieve anwer; But I think you mistaken, and don't have a complete view of the whole idea. The 60 fps / 30 fps you report are not only limited by your graphics board.

See it as this (extremely simple version based on my assumptions); AviSynth sends a frame to the filter, the filter compiles the data to shaderops and raw data. It then sends it on to the GPU, wich does its work. The GPU sends the completed frame back tothe filter, wich "gives it back" to AviSynth. And AviSynth gives it to the application thats running the script.

As you can see the GPU only does a part of the whole prosess. Actuallly the biggest part relies on your system; The shader-compiling and the sending of all data from memory to the gpu, back to memory, further processing of the app. thats running the script, AviSynth itself; All that relies solely on you CPU and main system-memory. And dont forget much of the data has to thru a system-buss (AGP of PCI-E) wich generates CPU and Operating-System overhead (more for AGP then for PCI-E, but still).

But that's only my idead of whats happening. I'll leave it to tsp to give yoy the definitive answer (wich is probably even more complex than i can understand anyway ;) )

huang_ch
18th November 2006, 13:13
to G_M_C, but the cpu usage at that time is definitely below 50% (or even 30%) at that time, and my hardware is a E6600 with 1G*2 DDR2 800 memory, so I'm afraid that I can't be convinced by your explanation. :p Anyway, thanks for a quick reply. :)

huang_ch
29th November 2006, 02:07
Is there anyone could explain what I've met?

tsp
29th November 2006, 03:48
sorry no obvious explanation. Does lowering the resolution of the input video(by placing a reduceby2 before fft3dgpu()) helps and what resolution is the video?

huang_ch
29th November 2006, 04:12
The resolution is 720x480, I'll try lowering the resolution to see the FPS when I got back to home.

huang_ch
30th November 2006, 13:26
Just tried adding reduceby2 before fft3dgpu, the fps increased from 30/60 to about 80/150, but still doesn't see any obvious impact by changing the core/mem frequency... pretty strange

huang_ch
1st December 2006, 10:59
And another question is that, is there anything like pre-render in fft3dgpu? Which means when current frame is sent out through AVIsynth to the encoder, will the GPU continue render the next frame instead of waiting for the encoder asked for the next frame? If it has, what's the maximum frames will be pre-rendered?

Because I've found that, just like what I mentioned previously, when using VirtualDub to test the pure fft3dgpu process, it may have a 30fps result, but when using X264 to encode the video, it will usually drop to 14~16fps even with multi-threaded X264 on my Conroe, and the CPU usage usually between 60~80%, not always full, but if I didn't use fft3dgpu or replace it with fft3dfilter, CPU usage is mostly above 90%, so I think there may still be some cpu time wasted on waiting for the GPU to finish the filtering, but since I can get a maximum 30fps without encoding, I think the CPU waiting time could be reduced by something like pre-rendering.

John_He
2nd December 2006, 14:21
I have a problem while using fft3dGPU on a high-resolusion clip(1280 x 720), that is it sometimes doesn't provide the correct picture. I ran such script
AVISource("an_avi_file.avi")
fft3dGPU(sharpen=-0.5)
and get some wrong frames look like (pic1) - a mix of the previous(pic2) and the next frame(pic3). I also tryed fft3dFilter, which doesn't have such problem(pic4).

Is this a bug or just my mistake in using fft3dGPU?

foxyshadis
2nd December 2006, 15:16
Do you OC your video card at all? Do you have the latest drivers? It might be a problem with the filter, but video cards are notoriously less stable, often boosting speed by sacrificing accuracy and stability. Since they normally run specialized stuff, they can get away with that.

tsp
2nd December 2006, 17:31
I must admit that I didn't test fft3dgpu with sharpen values less than zero as they blur the image(that could be archived by increasing the sigma value). If the error occuring at the same place every time you open the script could you upload a 5 frame sample with include the bad frame as the third frame. Also please use something like www.imageshack.us to post the images so that we don't have to wait on approval.
Also what card and driver do you use?

huang_ch:
fft3dgpu uploads the next frame to the GPU while it process the current frame(sort of prerendering) but while the filters after fft3dgpu is running the GPU is idle. So if you increase the complexity of the filters before fft3dgpu or increase the complexity of the encoder you should see higher cpu utilization while retaining the same framerate.

John_He
3rd December 2006, 06:21
I must admit that I didn't test fft3dgpu with sharpen values less than zero as they blur the image(that could be archived by increasing the sigma value). If the error occuring at the same place every time you open the script could you upload a 5 frame sample with include the bad frame as the third frame. Also please use something like www.imageshack.us to post the images so that we don't have to wait on approval.
Also what card and driver do you use?

Thanks tsp and foxyshadis for replying.

The problem seems to appear in the same place when I run the script from the begining to the end of the clip. Then I open the script with VirtualDub and skip the first some frames then step forward, most of the bad frames remain bad, but a few bad frames fixed and a few good frames become bad.

I restore the parameters to default value but errors still occur.

My system: WinXP sp2
CPU: PD 820 no OC
memory: 1GB
video card: GF 7600GS 128M GDDR3 (driver: 93.71 WHQL)
DirectX: 9.0c Oct.2006

Here is a 5 frames sample, in this position error always occurs.
http://img141.imageshack.us/img141/9341/1co6.th.jpg (http://img141.imageshack.us/my.php?image=1co6.jpg)1

http://img141.imageshack.us/img141/3960/2ek2.th.jpg (http://img141.imageshack.us/my.php?image=2ek2.jpg)2

http://img152.imageshack.us/img152/2526/3sl5.th.jpg (http://img152.imageshack.us/my.php?image=3sl5.jpg)3(bad)

http://img247.imageshack.us/img247/4731/4gj2.th.jpg (http://img247.imageshack.us/my.php?image=4gj2.jpg)4

http://img167.imageshack.us/img167/1503/5ts3.th.jpg (http://img167.imageshack.us/my.php?image=5ts3.jpg)5

http://img152.imageshack.us/img152/171/3originaq4.th.jpg (http://img152.imageshack.us/my.php?image=3originaq4.jpg)3(origin)

huang_ch
3rd December 2006, 14:10
tsp, what you mean uploads the next frame is only uploading or uploading+do the filtering?

tsp
3rd December 2006, 22:15
huang_ch: I only upload the next frame(meaning the filters before fft3dgpu are used to get this frame). It might be possible to render the next frame while the rest of the script is running but the penalty of rendering the wrong frame will be higher than now.

John_He:
I can't reproduce the bad frame when running this script(1.jpg to 5.jpg is the 5 frames you provided).

ImageReader("F:\fft3dgpu_test\1.jpg",end=0)+ImageReader("F:\fft3dgpu_test\2.jpg",end=0)+ImageReader("F:\fft3dgpu_test\3.jpg",end=0)+ImageReader("F:\fft3dgpu_test\4.jpg",end=0)+ImageReader("F:\fft3dgpu_test\5.jpg",end=0)
converttoyv12().fft3dgpu(sharpen=-0.5)

do you overclock the video card and does it also happens with fft3dgpu()?

huang_ch
4th December 2006, 02:25
tsp, Let me test my understanding, the common process is like below:
some filters: process current frame
fft3dgpu: process current frame
fft3dgpu: upload next frame
some filters: process current frame
Is this the correct process?
But if there's really some filters before fft3dgpu which will change the frame, the "next" frame you uploaded when processing current frame is invalid after those filters filtering the next frame, so you'll need to upload it again, right? So this is what you mean, if you upload+process the next frame, the whole upload+process will be invalid and this will be totally a waste of time, right?
If my previous guess is right, then I think this situation will mostly happen when there's some filters which will change the frame before fft3dgpu, if there's no filters doing this kind of work, the upload+pre-render should work correctly, right? If so, will it possible to add a parameter to turn on a pre-render option? Just like pre-render=1 means it will upload and pre-render one frame ahead, if pre-render=5, it will upload and pre-render 5 frames ahead. Since the GPU are becoming more powerful, I think this could be useful to make full use of CPU+GPU. :)

John_He
4th December 2006, 07:20
I can't reproduce the bad frame when running this script(1.jpg to 5.jpg is the 5 frames you provided).
do you overclock the video card and does it also happens with fft3dgpu()?

I don't overclock my video card manually but I don't know if it is overclocked by default.

The error generally don't occurs at the begining but at, for example, after 100 frames(the sample I provided are frame 139-143). The script run at about 10fps at first, than after dozens of frames it slow down to 2fps, than turn back to 10fps, than 2fps...... Errors start to occur after the first 10->2fps changing and most posibly on I frames. The different start positions also cause different positions of the bad frames, for example, if I skip the first 130 frames using Trim(130,0), then frame 138 become a bad frame. Not all clips produce error, I use the filter on another clip in the same resolution, no errors occur, but also have 10fps->2fps->10fps.

I tested the script on my friend's PC and the same things happened. (his card: GF 7300GT 256M, driver: 84.66, using VirtualDubMod 1.5.10.2)

PS: the size of the JPGs I provided is reduced by 2, they are originally 1280x720.

tsp
4th December 2006, 21:36
John_He:
hmm could you create a small sample where the problem appears on your computer and upload it to ftp://richardb_tempclips:QfJY(86m@avisynth.org/
so I can try to reproduce it.

huang_ch:
it works like this currently:
virtualdub: request frame from avisynth (GPU idle)
filters after fft3dgpu: request frame from fft3dgpu (GPU idle)
fft3dgpu: start processing current frame
fft3dgpu: fetch the next frame from the filter before fft3dgpu
filter before fft3dgpu: process the next frame and return it to fft3dgpu
fft3dgpu: upload next frame to the GPU
fft3dgpu: wait for the gpu to finish processing the current frame while doing this the cpu is free to do other stuff like encoding (some cpu time is used in the gpu driver though).
fft3dgpu: download frame and return it to filters after fft3dgpu
filters after fft3dgpu: process frame and return it to virtualdub (GPU idle)

It might be possible to do it like this:
fft3dgpu: check if requested frame is currently being processed if not process it.
fft3dgpu: start processing next frame
fft3dgpu: wait for the requested frame is done and return it

It wouldn't make sense to prerender more than 1 frame as the GPU would still need the filters before fft3dgpu to return the source frame and they are limited by the cpu.

huang_ch
5th December 2006, 03:02
tsp, Thanks for a detail explanation, after thinking I agree that it doesn't make sense to prerender more than 1 frame.

John_He
5th December 2006, 08:58
John_He:
hmm could you create a small sample where the problem appears on your computer and upload it to ftp://richardb_tempclips:QfJY(86m@avisynth.org/
so I can try to reproduce it.


Well, I think I've found the critical point. That clip is a 120fps hybrid AVI.

* When I load the avi and change its framerate to delete the duplicated frames
AVISource("sample_120fps.avi")
ChangeFPS(24)
fft3dGPU()
errors occur.

* When I load the avi without changing its framerate
AVISource("sample_120fps.avi")
fft3dGPU()
errors occur.

* Then I recompress it to a 24fps avi, load it an apply fft3dGPU
AVISource("sample_24fps.avi")
fft3dGPU()
NO errors occur!

I've upload the beginning of the original 120fps avi, named "fft3dgpu_sample_120fps.avi"

tsp
5th December 2006, 22:28
John_He:
Thanks for uploading the clip. I also get corruption with it (and a couple of access errors) replacing avisource with directshowsource also seems to solve the problem (might be quicker than converting it to constant frame rate).

DarkNite
7th December 2006, 21:11
I just built my 8800 GTX based gaming system and all I have to say is... WOW! I might be playing less games, and doing more encoding on this box now. ;)

For now I have to RMA the matched pair I purchased for this board, but as soon as I get functional replacements I'll put up some benchmarks if anyone is interested in seeing how well an 8800 GTX handles fft3dGPU. Just let me know what conditions and parameters you'd prefer for the tests.

Are there any plans for dehalo in fft3dGPU? That would be really useful for me.

tsp
7th December 2006, 23:22
DarkNite: Could you try benchmarking this script:

ColorBars (width=1284,height=1024,pixel_type="YV12")
fft3dgpu(bt=4,sigma=2,sharpen=1,bw=128,bh=128,plane=4,precision=2,degrid=1,sigma3=5,oh=64,ow=64)

it runs about 4.3 fps on my geforce 7800GT 450/1400MHz
the fft3dfilter version below runs about 2 fps(1.2 fps without mt) on an opteron 165 2400 MHz

ColorBars (width=1284,height=1024,pixel_type="YV12")
mt("fft3dfilter(bt=4,sigma=2,sharpen=1,bw=128,bh=128,plane=4,degrid=1,sigma3=5,oh=64,ow=64)")

And yes the dehalo will be implementet at some time but when I can't tell.

DarkNite
8th December 2006, 01:52
Athlon 64 X2 5200+ ( 2.6 GHz )
GeForce 8800 GTX ( 575 / 1800MHz )

Min FPS: 12.002
Max FPS: 12.801

Notes:

Script loaded in VirtualDub, set to Direct Stream Copy, saved to AVI.

Memory usage was all over the board. No errors were caused, but may have been if the test was more than 10,000 frames. Haven't looked into where the leak/problem is yet.

huang_ch
8th December 2006, 05:59
Interesting, 8800 performs about 3x than 7800, is there anyone using ATI cards to perform the benchmark? It is said that ATI has a better generic computation performance over NVIDIA.

tsp, I've just seen a GPU FFT library posted in another thread, don't know you've seen it or not, maybe you could compare yours with this to see if it worth to try.
http://gamma.cs.unc.edu/GPUFFTW/results.html

G_M_C
8th December 2006, 09:46
Interesting, 8800 performs about 3x than 7800, is there anyone using ATI cards to perform the benchmark? It is said that ATI has a better generic computation performance over NVIDIA.

tsp, I've just seen a GPU FFT library posted in another thread, don't know you've seen it or not, maybe you could compare yours with this to see if it worth to try.
http://gamma.cs.unc.edu/GPUFFTW/results.html

@huang_ch:
Actually, i hope tsp leaves development the way it is now. Because we do not use this filter as a benchmark, to show off our GPU. And i sencerely hope FFT3DGPU doesnt get transformed into this kind of benchmark-stuff.

Actually, we use this filter to .... filter. And it does that very well, and we're fortunate it does it quite quickly. And also; If tsp manages to make it even better, but slower, I wouldn't mind at all.

IMHO (mind you, my opinion) i dont give a sh*t about fps, like meny other people here. We're all about video-quality. Even if sometimes scripts run at 1 fps because of all the filters; I still don't give a sh*t. Video in high quality is slow buisyness.

So (still my opinion), if you want to benchmark with it; Fine by me, but pleas do not do that in this thread. Because this one is for troubleshooting, information and notices from tsp about new versions (the last one is some time ago, are you working on something atm. tsp ?). At least that is how I understood it, and not wanting to sound like a moderator.

huang_ch
8th December 2006, 10:13
G_M_C, I didn't mean to turn this into a benchmark thread/filter, I just mean 2 things:
1. About the ATI VS NV: if anyone could provide some results here (though it is really like benchmarking), it will help others who interested in using FFT3DGPU in the future to choose which video card they should choose to buy. (I've already got a 7900GS and no plan to buy a new one in one or two years) If ATI really performs much better than NV with FFT3DGPU, why not suggesting the others to buy a ATI card if they want more speed?
2. About the GPUFFTW: I just saw this library, and it claims to be really fast, so I just suggest tsp may take a look at it, in case it is really fast than the current implementation in FFT3DGPU and if tsp is willing to switch to this library. I think doing FFT is just one transforming functionality of FFT3DGPU, it has nothing to do with how to remove the noises, so replace its implementation shouldn't hurt the quality(if that FFT is done correctly), why not have a try?
I think everyone switch from FFT3DFilter to FFT3DGPU has a bit consideration on performance, so all I mean is just optimization, no others. :)

DarkNite
8th December 2006, 11:40
@huang_ch

There wouldn't be any comparison to this card from the ATI camp yet. The only comparable ATI card as far general computing prowess goes would be their next generation flagship, which is very similar to the 8800 GTX in both transistor count and several areas of architecture.

It will be months before that question is answered, and even longer if you consider driver based issues and the fact that both of these cards are going to spend the first few months of their existence without proper, or even WHQL certified drivers.

Ask any folding team 4-6 months from now and I'm sure you'll get a clear answer.

@G_M_C

I don't care about speed. I care about end results. On the flip side: If a filter has the functionality I need, and produces results acceptable for use, then why not be happy it's going 3x faster? That's just one more positive for my purchase evaluation, and a little less buyer's remorse. Honestly, I'm not trying to turn this into a "benchmarking thread". Just sharing the answer to a question I had asked myself.

tsp
9th December 2006, 23:50
huang_ch: about gpufftw see previous answer here (http://forum.doom9.org/showthread.php?p=834288#post834288)

DarkNite:
using "run video analysis pass" in virtualdub with the testscript uses about 900 mb of memory that remains constant so no memory leaking here. Rather amazing that the geforce 8800 GTX are so much faster than my geforce 7800GT.

It could be nice with some result from ati card to make a better recommendation on what card to buy for fft3dgpu. I could add the result to the first post if people PM the result to me to reduce post cluttering.

I have been rather busy in real life(tm) so it might explain the lack of update.

Thunderbolt8
26th December 2006, 04:47
is the server currently down, I cant get any file from it :S

Thunderbolt8
29th December 2006, 19:40
recently I always get an error when trying to use fft3dgpu or fft3dfilter, megui complains somehow about the sigma value.

script is:

LoadPlugin("C:\Programme\VIDEOBEARBEITUNG\AviSynth 2.5\plugins\FFT3dGPU.dll")
# Set DAR in encoder to 37 : 20. The following line is for automatic signalling
global MeGUI_darx = 37
global MeGUI_dary = 20
DGDecode_mpeg2source("D:\DVD\Projects\OLD_BOY_VTS_01_PGC1\OLD_BOY.d2v",info=3)
ColorMatrix(hints=true)
fft3dgpu(sigma=2,plane=4,sharpen=0,5)
trim(17000,17600)
#deinterlace
#crop
#resize
#denoise


error message:

the file ...avs cannot be openend. error message for your reference: script error: the named argument "sigma" was passed more than once to fft3dfiltergpu (D:\....avs, line 7)

tsp
29th December 2006, 21:45
try this script :) (using . instead of , as decimal seperator)

LoadPlugin("C:\Programme\VIDEOBEARBEITUNG\AviSynth 2.5\plugins\FFT3dGPU.dll")
# Set DAR in encoder to 37 : 20. The following line is for automatic signalling
global MeGUI_darx = 37
global MeGUI_dary = 20
DGDecode_mpeg2source("D:\DVD\Projects\OLD_BOY_VTS_01_PGC1\OLD_BOY.d2v",info=3)
ColorMatrix(hints=true)
fft3dgpu(sigma=2,plane=4,sharpen=0.5)
trim(17000,17600)
#deinterlace
#crop
#resize
#denoise

Thunderbolt8
29th December 2006, 22:07
omg, now it works -.-

thanks

G_M_C
29th December 2006, 23:13
try this script :) (using . instead of , as decimal seperator)

[...]


LOL, i'm using AviSynth (and onther progs.) for a while now, and still frequently make that mistake :P

Warpman
30th December 2006, 19:56
btw tsp i have still the problem that the luma is 1frame ahead of the croma...
im stil using your "workaround" ... just to remind you :P

i have a Geforcefx 5900xt...

barbapapa5800
11th January 2007, 14:48
what i usally do is converting a avi to mpeg with diko.
i use the following script to do so.
can i replace a filter with this one for better results in time and/or quality?

converttoyv12()
Blockbuster(method="noise",detail_min=1,detail_max=3,variance=0.1,seed=1)
Deen("c2d",2,4,6,4,6,0.5,9,"")
asharp(1,4)
UnDot()
DivXResize(WIDTH, HEIGHT, 0, "BicubicResize",WIDESCREEN)
Blockbuster(method="noise",detail_min=1,detail_max=10,variance=0.3,seed=2)
DivXBorders(HEIGHT,OVERSCAN)
AddAudio()

G_M_C
11th January 2007, 15:07
what i usally do is converting a avi to mpeg with diko.
i use the following script to do so.
can i replace a filter with this one for better results in time and/or quality?

What's the point of this question ? If you wanna try FFT3DGPU, then do so, but just putting a script here and asking us to improve it .... hmmm

I'm also just a noob in AviSynth; I think ive just learned to understand the tip of the iceberg, but i do try stuff myself and try to refrain from questions like this ...