Hacker News new | past | comments | ask | show | jobs | submit login

Until hardware can do everything free and instantly, making computations cheaper and faster will be a core problem in CS. Everyone enjoys when the hardware gives free gains though :)



C.S is not concerned with the fastest speed that off the shelf hardware can multiply two matrixes measured in seconds. You must be thinking of Linus Tech Tips.


It is concerned with the lowest complexity method of doing so, which is directly related.


Tangentially, not directly. Algorithms become different beasts when implemented on real-world hardware.


I said they are directly related, not that they are equivalent. The entire reason programmers have the notion of time complexity is to understand how algorithm's execution scales. The reason we drop constants and constant scale factors is because they typically don't make a big difference in real world execution times. That's a little more than tangentially related.

Saying time complexity has nothing to do with hardware is like saying speed limits have nothing to do with cars. Hardware constraints are the entire reason we developed the notion of time complexity.

I'm honestly very confused as to how someone (I assume is) engaged in programming could think the relationship is tangential.


You are arguing a different point, C.S. is not concerned with measuring performance in seconds. Do you agree or disagree?

Now that we are on the same page, of course the asymptotic complexity of a method matters, but some of the lowest complexity methods actually have huge constants and cannot be used until you get to scales that dwarf most usages. This means that the connection is tangential. The current method of matrix multiply used in all your software is NOT the lowest asymptotic complexity method. Look it up.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: