Depends on exactly what your writing and how you write it. Easy to read assembler can be much worse than compiled code (Compiler can juggle registers and ensure the output value of one register isn't used in the next instruction for example to help the pipeline).
The advice given is therefore to write in a high level language such as C, profile your application, and then analyse the slow parts and see if you can spot a way of optimising the code (either in the same high level language, or in a lower level).