Giter Club home page Giter Club logo

Comments (24)

nigyiii avatar nigyiii commented on July 28, 2024 22

我佛了

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024 5

Hi, thanks for you understanding.
I will update the arxiv to clarify batch=1's FPS and batch=16's FPS on the Table.

from lstr.

voldemortX avatar voldemortX commented on July 28, 2024 3

Just can't help myself to say something after spotting this issue. Not to take anyone's side, I believe it is only proper to add a disclaimer in the arxiv version to support the batching choice, by saying the model is actually too small to show superiority on Teraflops GPUs due to a low utility rate (or possibly I/O constrains). Although we all admit LSTR is ultra fast and probably still the fastest, batching it in the FPS test does not appear to be common practice and should've been stated on the record for future reference.

p.s. I wonder if it is possible for LSTR to achieve real-time on CPU/Jetson. Listing CPU inference speed for fast algorithms is also good choice to show great performance.

from lstr.

Chenfy13 avatar Chenfy13 commented on July 28, 2024 2

Hi, thanks for you understanding.
I will update the arxiv to clarify batch=1's FPS and batch=16's FPS on the Table.

hello, have you updated it ?

from lstr.

lunachy avatar lunachy commented on July 28, 2024 1

emmm……
According to my opinion, FPS has nothing to do with batch. It's calculated by one inference, one image, one time.
The number of images the model can predicts every time just depends on the video memory.
You can read the speed testing code below for reference.
https://github.com/cfzd/Ultra-Fast-Lane-Detection/blob/master/speed_simple.py

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

Please read the README.md carefully.

The MACs and the number of parameters are more important than an FPS evaluated on graphics cards. Speed is just a matter of implementation.

If you test the time consumption of each module you will find that the speed is mainly consumed by the Transformer. However, there are many fast implementation versions of the Transformer, like Faster Transformer, which could speed up LSTR again but is not our concern currently.

Besides, for research and algorithm landing purposes, the computation complexity is more compelling than the speed on the graphics card since no matter how fast you run the algorithm on the graphics card, the computational complexity of the algorithm and the number of parameters are independent of the implementation.

from lstr.

lunachy avatar lunachy commented on July 28, 2024

I agree with the importance of MACs(0.574G) and the number of parameters(0.77M) of your model.
But it can't explain the fast speed(420fps) in the paper. However the speed is the one of core points in your paper.
As you described, you tested TuSimple dataset without bells and whistles.
So I wonder how do you test your model's speed?

image

image

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

🙂 What you are seeking lies in the README ever since.
emm

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

FPS has nothing to do with batch? WOW!

Video memory? So you think a video application MUST process video frames one by one? WOW!

The UltraFast measures one frame speed only because their memory cost is very large.
Processing 1 3x288x800 image uses 1190MiB GPU memory usage, but processing 16 3x360x640 images only use 877MiB by our method.
Also, the number of parameters is 71, 333, 800, but ours is only 765, 787.

More importantly, why do not you test the batch performance of UltraFast?

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

Now on my platform, using the python script you linked, iterations=1000, when batch=1, UltraFast runs 202 fps and uses1189MiB GPU memory usage; when batch=16, UltraFast runs 299 FPS and uses 5653MiB GPU memory usage. You can list the performance of LSTR evaluated by you own and you will get the idea.

from lstr.

lunachy avatar lunachy commented on July 28, 2024

Model serving is another thing. It depends on the real scenario.
It may process one frame one time in real time scenario, or process batch frames one time in non-real time scenario.
According your opinion, FPS has relationship with batch, more batch corresponds to higher FPS theoretically, so how to define FPS.
If the GPU memory is unlimited, FPS is infinitely great?
DL papers about fps has never mentioned corresponding batch parameter.
And I run the python script directly, here's the result below.
image

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

How a GPU memory can be unlimited? What’s your point? I never want the gpu memory to be unlimited.

I list the FPS performance and the memory usage, why you always ignore the cost of gpu memory of different methods when discussing?

You run the code, don’t you see their FPS performance gains a little and is slower than LSTR? Do you ever just think a little why this happens?

What a joke that “DL papers about FPS has NEVER mentioned corresponding batch parameters”.

DL papers care about computation complexity, and FPS is just a matter of implementation. If you do not accept that idea, please do not disturb me and I will keep this issue open.

from lstr.

lunachy avatar lunachy commented on July 28, 2024

I said I agree with the importance of MACs(0.574G) and the number of parameters(0.77M) of your model.
I also care about computation complexity.
And we argue about if FPS has relationship to do with batch. The FPS here is just standard criterion, not the practical model serving result or implementation result.
If it does, how do you get your 420fps? batch=16? It seems unfair to compare with others whose batch=1. Or at least you should mark out batch=16 in your paper.
If it does not, well you seems disagree with this.

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

You said, "The FPS here is just standard criterion, not the practical model serving result or implementation result", but did you know the convolution operation has been accelerated very fast through years of effort by many accelerating methods (you need CUDA to run any PyTorch codes, don't you ever think why?), but the PyTorch implementation of Transformer seems to have no such treatment. I have repeatedly asked you to focus on computation complexity because it is the ONLY criterion that has nothing to do with implementation, not the FPS you think ideally (standard criterion??? how standard??? which criterion??? are you living in your own world???).

How to measure speed has been written on the README since the beginning of this repo.

I don't know who you are but I still respect your passion, so could you please:

  1. think that why other methods do not increase FPS significantly after increasing parallel data throughput by 16 times;
  2. find a method that achieves ~96.18 TuSimple accuracy and runs faster than LSTR in any case on any of your own platform.

Then I will be willing to discuss with you. Otherwise, please do not waste our time and public resources.

By the way, the other issue you raise also makes me confused #20. Normally I would help anyone who raises issues, but I've never been able to get your point. I think you just live in your own world.

from lstr.

lunachy avatar lunachy commented on July 28, 2024

I don't want to discuss with you any more. Maybe it's you who lives in his own world.
Lightweight model doesn't mean fewer cost time.
Lane detection belongs to driverless field! Do you think how to apply this? predict batch after driving a long time or predict one by one in real time? No matter how high fps can get, it's meaningless if the cost time can't be low.
Maybe you just research for research's sake, regardless of the actual application scenario. Real time is its premise!
If using batch prediction, fps can be higher more or less, why other models don't calculate fps in this way? Maybe you should think about it carefully.
With all the power of irony, how horrible and arrogant!
Well, you are right about everything, do not waste our time and public resources, just close it!

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

Our company has applied a faster version Transformer to accelerate LSTR (weak up! you are just a rookie), which achieves an incredible speed FPS number you'd never imagine on a real mobile chip.

If you are very happy to use BIG models to detect lanes on GPU in 300 FPS, WOW, you are so clever and the smartest genius in the world. Yes, you are the best and the most polite questioner. I am horrible and arrogant!!!😈😈😈 So what? You are just an anonymous pathetic clown hiding in the corner of the internet. However, it's good that you're having fun on your own.

from lstr.

lunachy avatar lunachy commented on July 28, 2024

Well, it seems modesty and politeness being laughted and rudeness being advocated, you put the cart before a horse! The moral degeneration of the world is getting worse day by day.
If you think my question is low, you can just ignore it or close it. Mock、sarcasm、persiflage and personal attack, is it necessary? The spirit of keyboard man is in full play on you. Can't even imagine it's a PHD's words.
You are all right about everything, OK? Don't comment any more. When did it get so hard to be polite?

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

Please look at how other guys raise issues and how I answer them. Out of enthusiasm, I discuss issues with every person.

However, when did Ph.D. status become a kind of moral kidnapping?
No matter what my status is, I am only targeting you for mock, sarcasm, persiflage, and personal attack. 😈

from lstr.

lunachy avatar lunachy commented on July 28, 2024

Not moral kidnapping, but the basic morality of being a man. Like don't swear first, don't hit first.
Don't your teacher tell you how to be a man, or just tell you how to do research?
Maybe you are right, education has nothing to do with morality.
As I said, If you think my question is low, you can just ignore it or close it. Sarcasm may not be the appropriate way.
When one person disagrees with you or can't understand you, mock, sarcasm, persiflage, and personal attack are your first action? You are so mean? When did it get so hard to seek common points while reserving difference.
Well, as you said, it's good that you're having fun on your own. Looking at you screaming、laughing, it's like watching a clown jump, please stop your poor histrionics, so ridiculous and lugubrious.

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

I never feel that there is a high or low level of questions, however, from all other issues that you raised #20 and talengu/Wox.Plugin.BookmarkSearcher/issues/9 (other authors do not even want to talk to you), I think you should mind your manners first.

Again, please look at how other guys raise issues and how I answer them.

Just say "less morality, mean, mock, sarcasm, persiflage, personal attack, ridiculous and lugubrious" or any words you used to attack me. I think your self-presentation is very appropriate.

from lstr.

lunachy avatar lunachy commented on July 28, 2024

So polite man should always blindly self-surrender? Can't he fight back?
It's you who reacts in these manners first(mock、sarcasm、persiflage and personal attack), and you admin it in the reply!(No matter what my status is, I am only targeting you for mock, sarcasm, persiflage, and personal attack.)
One question I asked don't be answered, such a small thing deserves talking? Maybe the pictures don't upload successfully.
How mean you are! You are so boring to browse my record? So you can find mudslinging to humiliate me? Do you have psychological shadows?
And as you say, other authors don't answer me, it's OK for me and everything's fine. Can't you learn it?

from lstr.

liuruijin17 avatar liuruijin17 commented on July 28, 2024

I just repeat the words you say to me, if you think that was an admin (admit I guess), sorry I overestimated your emotional and intellectual quotient.

When did GitHub's contribution activity is kind of personal privacy?

So I just click your GitHub profile then you think I have psychological shadows?

Hey, calm down, will you?

from lstr.

lunachy avatar lunachy commented on July 28, 2024

‘I am only targeting you for mock, sarcasm, persiflage, and personal attack‘
How clear it is?And you can't even admit your words! Being a man, can you be of some responsibility?
As I repeated, no matter how low the question or how stupid you look at me, just ignore it, close the issue or even delete the issue. Is there any reason you attack me first?
Maybe you have strong research ability, but the morality, emmm, you don't deserve it!

from lstr.

voldemortX avatar voldemortX commented on July 28, 2024

@liuruijin17 That's great to hear! Recently I've been thinking that maybe instead of changing batch-size, changing the input resolution is a more logical choice to profiling different methods. We might get round to that later here.

from lstr.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.