Dear list subscribers. I've searched the gcc-help mailing list archive for anything related to Intel Atom and surprisingly little showed up. I've also googled extensively for the past few weeks and found many opinions on what compiler options to use for Intel Atom but nothing coherent. I'm extremely sorry if I've missed something obvious but the only way for me to learn is to ask. I really want to learn _why_ I should use certain options and just not apply them blindly. So here are my questions: 1) I understand that Intel Atom is an in-order processor and that the last such processor Intel made was the original Pentium. How big is the performance penalty if the code is not optimized for in-order execution? 2) If the answer to question 1 is that it does give a noticeable penalty how does one control the output of gcc to produce in-order code? Should I choose -march=pentium or is there a single option that is enabled by the -march option that controls this behaviour? I've even searched for "in-order" in gcc's source code but the few occurrences that turns up doesn't solve this puzzle for me. 3) When it comes to cache sizes and available registers I think I understand that the -mtune option controls this optimization (which is automatically set to the same value as -march when using that). Since there is no -march option for Intel Atom yet, is there anyway to control these optimizations manually in gcc and what should they be in that case? 4) Please correct me on any misunderstandings in my questions above. New insight into this is greatly appreciated as well as examples on what people on this list use as options for Intel Atom and _why_ they use them. Kind regards Morgan Wesström