The problem you'll run into is that sendmail, like most MTAs (mail transfer agents) tends to be set to default to send the email as though granny were personally signing each one and licking the stamp. I.e. it waits for errors, and processes one at a time.
What you wanna do is either run sendmail by hand with ` marks, or edit your php.ini to do it for you. There's a few switches in sendmail, do a 'man sendmail' on a unix/linux box for the list that tell it to queue up mail, batch it up every x seconds, throttle output and things like that. You'll need to figure out which ones work best, but queueing your email will let you send a lot more since you won't be waiting for sendmail to return after each and every message sent. I could send about 100,000 emails an hour on a K62-350 a few years back on an opt-in company newsletter thing a while back.
Before setting up sendmail properly the performance was something like 40,000 in 8 hours.