Log in

View Full Version : Bm3d_cpu avx?


Lan4
7th May 2023, 15:42
Is there a version of the BM3D filter for a processor with AVX? (AMD graphics card)

poisondeathray
7th May 2023, 17:33
Is there a version of the BM3D filter for a processor with AVX? (AMD graphics card)

vapoursynth version supports it

https://github.com/WolframRhodium/VapourSynth-BM3DCUDA

bm3dcpu

The cpu version is implemented in AVX and AVX2 intrinsics, serves as a reference implementation on CPU. However, bitwise identical outputs are not guaranteed across CPU and CUDA implementations.



Original Vapoursynth CPU version
https://github.com/HomeOfVapourSynthEvolution/VapourSynth-BM3D

guest
8th May 2023, 00:12
Is there a version of the BM3D filter for a processor with AVX? (AMD graphics card)

You didn't say whether you want it for Vapoursynth or Avisynth...

There's both !!!

Here's the Avisynth variants...several to choose from, test 7 might be a good one to start with...

https://github.com/WolframRhodium/VapourSynth-BM3DCUDA/issues/7#issuecomment-886173346

Lan4
8th May 2023, 03:53
I'm sorry. I didn't say which version I need. I'm interested in the Avisynth version. I already tried test 7 for win64. Error reported:
BM3D_CPU: requires AVX2-capable cpu

poisondeathray
8th May 2023, 04:10
Which version did you use? AVX was removed in some of the avs releases e.g


test8 (72e24c1, remove avx)


Try an earlier version

Lan4
8th May 2023, 04:47
Archive and file name:
\BM3DCUDA_AVS-test7\x64\BM3DCPU_AVS.dll

And I also tried test 5, which also requires AVX2.

Test 4 gives some strange error BM3D_CPU: only 32bit float planar Y/YUV/RGB input supported

poisondeathray
8th May 2023, 04:50
Test 4 gives some strange error BM3D_CPU: only 32bit float planar Y/YUV/RGB input supported


Float is required

e.g. ConvertBits(32)


clip:

The input clip. Must be of 32 bit float format.

guest
8th May 2023, 06:51
I'm sorry. I didn't say which version I need. I'm interested in the Avisynth version. I already tried test 7 for win64. Error reported:
BM3D_CPU: requires AVX2-capable cpu

I was successfully using test #10, until I decided I didn't like BM3D.

Lan4
8th May 2023, 13:39
I was successfully using test #10, until I decided I didn't like BM3D.
Do you have a processor without AVX2?

Lan4
8th May 2023, 13:52
Float is required

e.g. ConvertBits(32)
I don't understand why I should do something. I just upload a video file with the same settings for all filters.

guest
8th May 2023, 13:58
Do you have a processor without AVX2?

Yes I do, but I don't use them that much, anymore...

What do you have ??

poisondeathray
8th May 2023, 14:31
I don't understand why I should do something. I just upload a video file with the same settings for all filters.

Because the filter requires 32bit input if you read the instructions.

Some filters require certain pixel formats or bit depths

Lan4
8th May 2023, 14:48
Because the filter requires 32bit input if you read the instructions.

Some filters require certain pixel formats or bit depths
Is this a feature of BM3D for CPU and Avisynt? BM3D for Vapoursynth works well.

Lan4
8th May 2023, 14:51
Yes I do, but I don't use them that much, anymore...

What do you have ??
I don't understand why I need AVX2 for BM3D_CPU.

my processor is i7-3770.

poisondeathray
8th May 2023, 15:48
Is this a feature of BM3D for CPU and Avisynt? BM3D for Vapoursynth works well.

It's a "feature" of the vapoursynth version. The avs version is ported from the vpy version

Lan4
8th May 2023, 16:33
and so, I don't do anything to make the vapoursynth version work, it just works. but the Avisynth version requires something.

poisondeathray
8th May 2023, 16:43
and so, I don't do anything to make the vapoursynth version work, it just works. but the Avisynth version requires something.

You can report the issue. The avs version is considered experimental

Lan4
9th May 2023, 16:49
Developer response. In the Avisynth version, the AVX processor only works for maintenance in BM3D_CUDA. The BM3D_CPU has never supported AVX processors, and only works on AVX2.