InnoDB har transaktionsstöd, du använder inte explicita transaktioner så innoDB måste göra en commit efter varje uttalande ("utför en loggspolning till disk för varje insättning" ).
Kör detta kommando före din loop:
START TRANSACTION
och detta efter att du loopar
COMMIT