Η βελτιστοποίηση του κώδικα μετασχηματίζει τον κώδικα σε μια μορφή που
παράγει τα ίδια αποτελέσματα με τον αρχικά αλλά βελτιωμένα κάποια
κριτήρια απόδοσης.
Τέτοια κριτήρια μπορεί να είναι:
η ταχύτητα εκτέλεσης του προγράμματος (συχνότερα)
η μνήμη που καταλαμβάνει το πρόγραμμα (π.χ. όταν το πρόγραμμα
πρέπει να εκτελεστεί σε ενσωματωμένες (embeded)
συσκευές με περιορισμένη μνήμη),
η ενέργεια που καταναλώνει το πρόγραμμα (π.χ. όταν το
πρόγραμμα θα εκτελεστεί σε φορητές συσκευές με μπαταρίες),
η δυνατότητα εκμετάλλευσης της αρχιτεκτονικής του τελικού
επεξεργαστή (π.χ. καταχωρητών, πολλαπλών υπολογιστικών στοιχείων).