In `libnvidia-nvvm.so` the string `cutlass` appears right after `Memory Dependence Analysis` and `memdep`. Perhaps it acts as an optimization attribute of some sort, where the compiler is allowed to make assumptions about the kernel's behavior that are not valid in general?
yes, that is a very usual way (known practices) of vendors applying specific optimizations for known things. It is also part of the benchmarks game they play against each other.
FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
51–60 of 114 posts
Re: FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
#52In `libnvidia-nvvm.so` the string `cutlass` appears right after `Memory Dependence Analysis` and `memdep`. Perhaps it acts as an optimization attribute of some sort, where the compiler is allowed to make assumptions about the kernel's behavior that are not valid in general?
yes, that is a very usual way (known practices) of vendors applying specific optimizations for known things. It is also part of the benchmarks game they play against each other.
But in 2001 ATI was caught applying optimizations to Quake 3 when someone realized if you renamed the executable from “quake” to “quack” the score dropped a ton. It was a big scandal.
I know that’s common now but that wasn’t a thing that was done at the time.
Re: FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
#53Earlier quoted context omitted.
yes, that is a very usual way (known practices) of vendors applying specific optimizations for known things. It is also part of the benchmarks game they play against each other.
The link is long dead and the Wayback machine doesn’t have a copy. But in 2001 ATI was caught applying optimizations to Quake 3 when someone realized if you renamed the executable from “quake” to “quack” the score dropped a ton. It was a big scandal. I know that’s common now but that wasn’t a thing that was done at the time.
Re: FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
#54Earlier quoted context omitted.
The link is long dead and the Wayback machine doesn’t have a copy. But in 2001 ATI was caught applying optimizations to Quake 3 when someone realized if you renamed the executable from “quake” to “quack” the score dropped a ton. It was a big scandal. I know that’s common now but that wasn’t a thing that was done at the time.
There are bugs that certain games rely on and features that some don’t use. I’m currently trying to optimize a library out of spite. (I want it to work better than the competitor that caused me a lot of problems on a recent project). The amount of conditional logic around what is essentially a function to increment a value is breathtaking.
Re: FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
#55Earlier quoted context omitted.
Now I want a Quake shooter but with ducks.
Not ducks, but chickens, was very popular in Germany back in the day: https://en.wikipedia.org/wiki/Crazy_Chicken
Many people, including me, didn't have an internet connection back in the day. The Sneakernet went into overdrive so get everyone a copy!
Re: FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
#56Earlier quoted context omitted.
There are bugs that certain games rely on and features that some don’t use. I’m currently trying to optimize a library out of spite. (I want it to work better than the competitor that caused me a lot of problems on a recent project). The amount of conditional logic around what is essentially a function to increment a value is breathtaking.
Do you have any kind of example you're able to share? I don't mean to take your IP but I want to see this breathtaking vista.
A frequent example I’ve encountered is web frameworks that have to keep checking for escaped text because they didn’t write it in horizontal layers where you know for sure that all inputs have been scrubbed when they reach this function but not that one. So the same functions get called with data that comes from your team and from customers. Reuse is tricky.
Re: FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
#57Earlier quoted context omitted.
yes, that is a very usual way (known practices) of vendors applying specific optimizations for known things. It is also part of the benchmarks game they play against each other.
It’s really strange for established companies to waste their credibility on games like that…
Quake was also the standard for a game that was willing to fully exploit the hardware of the time.
Re: FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
#58I have small experience with compilers and llvm but youd be shocked how many things rely on names and parsing names If you have hundreds of passes that are complex and rely on various "contracts" like type names or some shit, then really crazy things like this can happen unintentionally and not maliciously
Re: FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
#59Re: FP8 is ~100 tflops faster when the kernel name has "cutlass" in it
#60Earlier quoted context omitted.
yes, that is a very usual way (known practices) of vendors applying specific optimizations for known things. It is also part of the benchmarks game they play against each other.
It’s really strange for established companies to waste their credibility on games like that…