On Mon, Mar 10, 2014 at 7:45 PM, Chris Angelico <[email protected]> wrote: > On Tue, Mar 11, 2014 at 12:26 PM, Steven D'Aprano > <[email protected]> wrote: >> In my experience, the average developer has an amazing talent for >> pessimising code when they think they are optimising it. > > I remember a number of incidents from personal experience when I was a > *very* average developer. One time, writing C++ code, I looked at the > disassembly and decided the compiler was doing a terrible job. No no, > I could make this so much better by using the 80x86 "REP MOVSW" > command (or commands, depending on your point of view). That would be > so much better than all those separate operations the silly compiler > was doing! Roughly an hour of fiddling later, making sure it all still > worked correctly, I discover that... hmm, it's not actually any > faster. Turns out the 80x86 string opcodes are really inefficient; > they're short (a one-byte command that says "read a > byte/word/doubleword from DS:SI, write it to ES:DI, and increment or > decrement SI and DI"), but not fast. In my defense, I at least did > measure before-and-after, and learned that I should back out that > change :)
Better to have tried and failed though than to have simply accepted what the compiler was doing with no verification at all. -- https://mail.python.org/mailman/listinfo/python-list
