UTF-8 apparently usually ends up faster as you’re shifting a smaller amount of data from the RAM to the CPU and back out. This makes it more likely that your strings will fit in the CPU’s cache rather than having to hit the main RAM every time, leading to overall speed improvements.
(this from an interest in the subject, rather than any actual implementation work I’ve done)
(this from an interest in the subject, rather than any actual implementation work I’ve done)