I notice it uses high cpu when I load images from my media library. I have about over 1 million images uploaded and they are organized into folders by Post ID. Any tips to reducing CPU?
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.