HolyWu / vs-basicvsrpp

BasicVSR++ function for VapourSynth

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Question regarding some Arguments

Memnarch opened this issue · comments

Hi,
My appologies,
I'm not sure if I forgot to submit my last typed issue or if it was removed. If it was removed, feel free to close this without a comment. I typed it this morning, and honestly, can't remember if I submitted or closed the browser window by accident.

I have a few questions for some of the arguments one can set, as those are a bit different from the mmediting interface, if I have seen that correctly.

Interval: This specifies the number of Images per Batch, is that correct? In addition of reducing the VRam footprint, I assume it influences what the network can see during the upscale process? The smaller the batch, the smaller the window it can include in the temporal calculations?

Tiling: This splits the image into tiles for processing instead of the whole image, is that correct? What is the purpose or best case scenario someone would use this for?

FP16: I run the network with FP16 at the moment, as FP32 usually blows up my 11GB of VRam if I don't reduce the Interval. As I had not enough time to finish all my Tests yesterday, have you noticed any degradation in quality in Images when FP16 is used? If I want to run it with FP32, I need to reduce the Interval but if my assumption is correct, this narrows down the time-window the network can calculate across. So I'm in between Precision vs Intervall-Size for VRam usage. Do you have any experience in this and what a good tradeoff might look like.

Interval: This specifies the number of Images per Batch, is that correct? In addition of reducing the VRam footprint, I assume it influences what the network can see during the upscale process? The smaller the batch, the smaller the window it can include in the temporal calculations?

Yes.

Tiling: This splits the image into tiles for processing instead of the whole image, is that correct? What is the purpose or best case scenario someone would use this for?

Yes. One would use tiling if the VRAM is not large enough to process the entire image at a time.

FP16: have you noticed any degradation in quality in Images when FP16 is used?

Unfortunately I don't have RTX cards (still using 1060) so I can't see real difference from fp16 mode.

Yes. One would use tiling if the VRAM is not large enough to process the entire image at a time.

I assume with the tradeoff of continuationproblems along tile borders?

Unfortunately I don't have RTX cards (still using 1060) so I can't see real difference from fp16 mode.

I have a 1080 TI. The comment talks about cards with tensorcores, but both modes run on my system (with different VRam usage). As long as nothing is visible, I'll stay on FP16 to keep VRam usage low (as a sidenode: this usecase alone makes 3080 a strange product with just 10gb of VRam)

I assume with the tradeoff of continuationproblems along tile borders?

Yes. tile_pad is used to minimize the problem.

Thank you. I think that answers my current questions. I start to get pretty good results on my Videos by applying the models iteratively. I'm happy :)
For reference:
I do a model 5 pass on my video before doing a model 1 upscale pass to improve results. In addition with some Bicubic up/downscaling for the model 5 pass.

Model 5 has been proven to be the most stable for decompressing my quite heavily compressed videos and does not introduce any "jumps" in visuals across batches, unlike model 3 and 4.