Optimizing a WordPress site

Functions and shortcodes that are never used, eat some processor time at launch, as WP is registering their existence. Deregistering them would take up some additional (and minimal) processor time.

Because they are loaded with functions.php they will reside in memory, either registered or deregistered. Which amounts to the same, as the code is never executed anyway.

Given how much time it would take to make sure they are not used and how little you would gain in performance, I wouldn’t bother with it.