Pointcept / PointTransformerV3

[CVPR'24 Oral] Official repository of Point Transformer V3 (PTv3)
MIT License
745 stars 44 forks source link

Why did I test the program's inference speed on the computer and achieve 50s instead of the 40ms mentioned in the article? #92

Open amazingpanpanda opened 1 month ago

amazingpanpanda commented 1 month ago

1725962698758

Gofinge commented 1 month ago

Your local machine is 4090?

amazingpanpanda commented 1 month ago

Your local machine is 4090?

A100

Gofinge commented 1 month ago

Your local machine is 4090?

A100

Wow. I tested the inference latency testing with our training script and comment code for backward.

Gofinge commented 1 month ago

1725962698758

Oh I know your meaning. Inference latency means the time for one forward. The test script was forwarded multiple times to get the best performance.

amazingpanpanda commented 1 month ago

Your local machine is 4090?

A100

Wow. I tested the inference latency testing with our training script and comment code for backward.

So may I ask if the "44ms" mentioned in the third part of Figure 1 of the paper by Faster Speed refers to the time required for backbone inference, rather than the time required for the model to infer a frame of data?

Gofinge commented 1 month ago

Actually, inference one frame one is sufficient for the application. (Simple interpolating the prediction to the original resolution also performs well). The complex testing process is just for getting a higher number.

amazingpanpanda commented 1 month ago

Actually, inference one frame one is sufficient for the application. (Simple interpolating the prediction to the original resolution also performs well). The complex testing process is just for getting a higher number.

May I ask how long it takes for you to infer a frame of data during testing?

Gofinge commented 1 month ago

Do you mean the current default test script?

amazingpanpanda commented 1 month ago

Do you mean the current default test script?

yes

Gofinge commented 1 month ago

Do you mean the current default test script?

yes

I think I should be the same as you. As I usually do testing automatically after training (with 8 GPUs), I didn't measure the time and just wait the training end.

amazingpanpanda commented 1 month ago

Do you mean the current default test script?

yes

I think I should be the same as you. As I usually do testing automatically after training (with 8 GPUs), I didn't measure the time and just wait the training end.

OK, thank you for your answer.

Gofinge commented 1 month ago

Do you mean the current default test script?

yes

I think I should be the same as you. As I usually do testing automatically after training (with 8 GPUs), I didn't measure the time and just wait the training end.

OK, thank you for your answer.

If you want to save more time, you can reduce the number of augmentation for testing.

amazingpanpanda commented 1 month ago

Do you mean the current default test script?

yes

I think I should be the same as you. As I usually do testing automatically after training (with 8 GPUs), I didn't measure the time and just wait the training end.

OK, thank you for your answer.

If you want to save more time, you can reduce the number of augmentation for testing.

Yes, I found through testing that even with only one enhancement, its inference time can reach 200ms to 400ms.

Gofinge commented 1 month ago

Usually, it is good enough. But you know, for benchmarking, we are usually willing to spend more testing time for even 0.1% enhancement.

amazingpanpanda commented 1 month ago

Usually, it is good enough. But you know, for benchmarking, we are usually willing to spend more testing time for even 0.1% enhancement.

OK