High CPU load when loading images in media library

When you upload an image, WordPress generates multiple images for each image size, e.g. medium, thumbnail, large etc

If you have a lot of custom image sizes you could cut down, but uploading 1 million images is going to take a lot of cpu, even without the resizing.

On top of that, each upload generates an attachment post, meaning your site effectively has at least 1 million posts to handle. This slows down listings considerably. Your CPU will be busy handling the queries for those posts in mysql, and grabbing each.

Given the sheer quantity, the only real tip I can give you that will have any noticeable impact, is to start deleting images.