4 ms·
101,000ms to 150ms is a phenomenal speedup. Props
by ntry 6y ago
101,000ms to 150ms is a phenomenal speedup. Props
- correct_horse 6y agoTo be fair, the thing he started with was totally unreadable and fits on a business card and the thing he ended up with was readable, but didn't fit. It isn't apples-to-apples.
- sp332 6y agoThe original is 1,287 bytes after removing comments and line endings where possible. After just a bit of search-and-replace to shrink variable names, I got the new one down to 2,373 bytes including the same error checking and output at the end. So 1.8 business cards, which is not too bad. And no I haven't tried to compile it. https://pastebin.com/LDRd6U4e https://pastebin.com/LDRd6U4e
- a1369209993 6y agoHmm, some further improvements: typedef float F;typedef int I; // saves 2 lines (but zero bytes) #define R return // OR #define O(S,A,R) operator S(A){return R;} #define E(F){E_((F||cudaPeekAtLastError)(),__FILE__,__LINE__);} and so on - although you'd probably have to make semantic chages to get onto a single card. (Or use a smaller font, but that's presumably cheating.)
- sp332 6y agoI feel like the self-timing and error-checking is unnecessary, and you can at least fit it on the front + back of a business card with enough room left for your name and an email address.