3
Based on the information you gave us, 20 users online at one time will not cause a heavy load. Also, I do not think you will notice a performance devrease only because you have a large volume of users.
I would advise against arbitrarily deleteing user accounts, as this would allienate those that do not log in often, but do still visit your site. I would never go back to a site that deleted my account for no reason other then a technical issue that the webmaster was unsure about.
As mentioned, use phpMyAdmin or some equivelant to optimise your tables. You may have lots of overhead in the tables, depending on what modules you have installed.
More information is required for us to determine what sort of action you should take to make site performance increase a little. Have other users reported a site slow down and if so, on what pages? Are they logged in, or are they doing something specific, such as a search? This may slow things down if you have hundreds of news items and thousandes of posts to sort through.
What modules do you have installed and what is the promary function of your site? Do have an image gallery installed and do your users make use of this on a regular basis? Many users trying to add pictures at the same time, may cause a minor slow down if they are all accessing the image libraries on your shared hosting server.
As you can see there are many variables to consider before concluding that it is just a membership issue of unused accounts. This is very unlikely to slow things down. Another consideration to take in account is what theme you are using. Are there many images to load as your site comes into view? Are there any external scripts, like php-stats, or other javascript on your page that may need to be parsed? Do you have any external links to sites that function as displaying information on your page? A slow down on their servers will slow your load times down as you site tried to retrieve this information and display it.
A small tip to help increase load times is to cache modules that do not have their content change very often. Do not make libaral use of this feature, but caching static information, like sertain blocks that do not change information often will cut down on sql queries and speed things up a small amount. Also make sure that your module/templates updates are turned off. This is ok to leave on if your site is low volume, but should be off in your particular case as each page is checking the template_c directory and refreshing it's copy on every page load. If you are happy with your theme as it is, turn this feature off. When you make a change to your theme, you can delete the individual file via ftp, or turn the mechanism back on, load your home page, and go back to turn it off.
There are many things you can do to optimise your site, but you need to be aware of the impact of every feature you have on your site. Do you have many blocks on your home page, such as recent posts, top users and what settings do you have for each of these blocks. Remember, less is more. The less you can get away with on your site without loosing visual impact, the faster your site will load because of less sql queries for every page load.
I hope this helps you a little in tweaking your site. From the sounds of it, all you have to do is tweak things up because your site is getting a little more popular. Your current hosting envirinment sounds fine for your needs, all you need to do is adjust how things are loaded.
Good Luck