Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 4th July 2021, 18:10   #1  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 356
BM3D (VapourSynth) versus MVTools

CUDA based BM3D (V-BM3D) is fast enough on decent GPU and probably faster than mvtools2 with small temporal radius. You might want to consider using it as faster denoising backend.
Some numbers if you interested:
1080p, radius=3, fast=True - ~21.85 fps
1080p, radius=3, fast=False - ~14.17 fps
1080p, radius=2, fast=True - ~38.93 fps
1080p, radius=2, fast=False - ~19.69 fps
1080p, radius=1, fast=True - ~63.21 fps
1080p, radius=1, fast=False - ~31.49 fps
1080p, radius=0, fast=True - ~159.75 fps (that's a spatial mode)
1080p, radius=0, fast=False - ~79.24 fps (that's also a spatial mode)
"fast" option squeezes more fps with the same quality at expense of flooding PCIe lanes, probably my card can preform better, but due to SSD attached to CPU lanes it works at x8 mode (still enough for me).
__________________
Me on GitHub
PC Specs: Ryzen 5950X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 4th July 2021, 19:21   #2  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 1,514
ahh finally some numbers for bm3dcuda. Could you also post some numbers for the bm3dCPU version? I wonder how big the speed gap is.
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth
VapourSynth Portable FATPACK || VapourSynth Database || https://github.com/avisynth-repository

Last edited by ChaosKing; 4th July 2021 at 19:23.
ChaosKing is offline   Reply With Quote
Old 4th July 2021, 19:41   #3  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 356
radius=0 - ~114.46 fps
radius=1 - ~65.87 fps
radius=2 - ~46.11 fps
radius=3 - ~36.03 fps
radius=4 - ~29.26 fps
I'm measuring with 12 cores CPU and overclocked RAM (yet no turbo boost enabled).
__________________
Me on GitHub
PC Specs: Ryzen 5950X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 4th July 2021, 20:54   #4  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 1,514
Didn't expect that. It's even faster than your 2070. I guess a ~8 cores cpu could be about the same speed as the 2070 then.
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth
VapourSynth Portable FATPACK || VapourSynth Database || https://github.com/avisynth-repository
ChaosKing is offline   Reply With Quote
Old 5th July 2021, 07:16   #5  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,938
Quote:
Originally Posted by DJATOM View Post
CUDA based BM3D (V-BM3D) is fast enough on decent GPU and probably faster than mvtools2 with small temporal radius. You might want to consider using it as faster denoising backend.
Thanks for your suggestion, I did not know that BM3D had a CUDA version. Where can I find a Windows build, better with HBD support?

However, there are a few CUDA denoiser around already. What we need is a MVTool on CUDA or OpenCL.
__________________
@turment on Telegram

Last edited by tormento; 5th July 2021 at 07:26.
tormento is offline   Reply With Quote
Old 5th July 2021, 07:48   #6  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 1,514
Quote:
Originally Posted by tormento View Post
Thanks for your suggestion, I did not know that BM3D had a CUDA version. Where can I find a Windows build, better with HBD support?

However, there are a few CUDA denoiser around already. What we need is a MVTool on CUDA or OpenCL.
https://github.com/WolframRhodium/VapourSynth-BM3DCUDA

Scroll to version 2.1 for cuda version.
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth
VapourSynth Portable FATPACK || VapourSynth Database || https://github.com/avisynth-repository
ChaosKing is offline   Reply With Quote
Old 5th July 2021, 07:50   #7  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 1,938
Quote:
Originally Posted by ChaosKing View Post
Scroll to version 2.1 for cuda version.
Thanks but it is for VS not AVS+.
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 5th July 2021, 08:34   #8  |  Link
kedautinh12
Registered User
 
Join Date: Jan 2018
Posts: 864
In the present, BM3D only in VS
kedautinh12 is offline   Reply With Quote
Old 5th July 2021, 09:22   #9  |  Link
WolframRhodium
Registered User
 
Join Date: Jan 2016
Posts: 143
The numbers from DJATOM looks interesting.

The GPU performance aligns well with the estimation that
Code:
fps * (2 * radius + 1) ≈ constant
, since the calculation is dominated by block matching.

The CPU performance is unexpected to me. Maybe the cache plays a nontrivial role.

Anyway, I have no experience in writing an AVS+ plugin. Will take a look if people are interested.
WolframRhodium is offline   Reply With Quote
Old 5th July 2021, 09:31   #10  |  Link
kedautinh12
Registered User
 
Join Date: Jan 2018
Posts: 864
Yeah, i'm waiting many years for avs+ ver
kedautinh12 is offline   Reply With Quote
Old 5th July 2021, 10:51   #11  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,359
Quote:
Originally Posted by WolframRhodium View Post
Anyway, I have no experience in writing an AVS+ plugin. Will take a look if people are interested.
you can make the plugin work in both https://github.com/HomeOfAviSynthPlu...on/neo_DFTTest (this is backport of vs DFTTest and now it's work on both)
__________________
See My Avisynth Stuff
real.finder is offline   Reply With Quote
Old 5th July 2021, 12:22   #12  |  Link
WolframRhodium
Registered User
 
Join Date: Jan 2016
Posts: 143
Quote:
Originally Posted by real.finder View Post
you can make the plugin work in both https://github.com/HomeOfAviSynthPlu...on/neo_DFTTest (this is backport of vs DFTTest and now it's work on both)
Thanks, I am aware of the DualSynth implementation. I need to read more about the parallelism mechanism of AVS+, thought.
WolframRhodium is offline   Reply With Quote
Old 8th July 2021, 00:55   #13  |  Link
Reel.Deel
Registered User
 
Join Date: Mar 2012
Location: Texas
Posts: 1,304
Quote:
Originally Posted by WolframRhodium View Post
Anyway, I have no experience in writing an AVS+ plugin. Will take a look if people are interested.
+1 ... definitely some interest here.
Reel.Deel is offline   Reply With Quote
Old 8th July 2021, 09:27   #14  |  Link
Dogway
Registered User
 
Join Date: Nov 2009
Posts: 1,552
Obviously super interested in this. I think it can easily double current scripts speed that make use of mvtools. Probably for implementation reference you can check source of AVS+ 3.7.1 CUDA.
__________________
[i7-4790K@Stock::GTX 1070] AviSynth+ filters and mods on GitHub
Dogway is offline   Reply With Quote
Old 22nd July 2021, 05:42   #15  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,359
WolframRhodium, any news about avs+ port?

@Moderators, can you move BM3D posts to new thread?
__________________
See My Avisynth Stuff

Last edited by real.finder; 22nd July 2021 at 05:44.
real.finder is offline   Reply With Quote
Old 22nd July 2021, 07:18   #16  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 6,297
Quote:
Originally Posted by real.finder View Post
@Moderators, can you move BM3D posts to new thread?
Moved. It is ok now?
__________________
BeHappy, AviSynth audio transcoder.
tebasuna51 is offline   Reply With Quote
Old 22nd July 2021, 10:45   #17  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,359
Quote:
Originally Posted by tebasuna51 View Post
Moved. It is ok now?
Yes. It's fine. Thanks
__________________
See My Avisynth Stuff
real.finder is offline   Reply With Quote
Old 22nd July 2021, 13:43   #18  |  Link
WolframRhodium
Registered User
 
Join Date: Jan 2016
Posts: 143
I'm sorry about being lazy on avs+ port... Will consider it this weekend.
WolframRhodium is offline   Reply With Quote
Old 22nd July 2021, 17:14   #19  |  Link
Dogway
Registered User
 
Join Date: Nov 2009
Posts: 1,552
I think OP was replying to my post:
Quote:
Originally Posted by Dogway View Post
Currently mvtools is the bottleneck of most scripts, I calculated that for a 2h feature we need a performance of at least 5fps to finish an encode in 10h, good value for an overnight encode. I think this is still a bit far when using refinemotion (a must in my book) -1080p @ 16-bit-.
Thank you WolframRhodium, it would actually be an achievement and a revolution for AVS since mvtools is the major bottleneck in most scripts.
__________________
[i7-4790K@Stock::GTX 1070] AviSynth+ filters and mods on GitHub
Dogway is offline   Reply With Quote
Old 22nd July 2021, 20:42   #20  |  Link
lansing
Registered User
 
Join Date: Sep 2006
Posts: 1,512
I'm confused, so the 3900x is faster than the RTX 2070??
lansing is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 12:41.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, vBulletin Solutions Inc.