Important: at least one of your pages should allow Full Page Caching (FPC). So make sure your global cache settings allow FPC or make sure the individual page(s) allow FPC.
To create the cache files, Cache Warmer basically visits your pages one by one. For that reason, the server is going to be busy if you have hundreds of pages! I'd suggest you to schedule the Job at night time, or limit the number of pages per batch. A batch is created when the Job is executed. A batch consists of a series of pages, randomly selected.
For small websites, you can run the Job by hand via Dashboard / Systems & Settings / Optimization / Automated Jobs. Once you hit the 'Run' button, a popup will appear. While the popup is visible, concrete5 will send various requests to keep the Job going. For each request, Cache Warmer will generate cache files for five pages.
You can automate the Jobs by scheduling them. I recommend using a cronjob for this. If your server doesn't support that, concrete5 will trigger the Job automatically when a visitor comes to your website. However, this will result in very slow loading times for this visitor! Therefore a crob job is the way to go.
If you want to set up a cron job but you don't know how to, either ask your System Administrator or ask Google: https://stackoverflow.com/questions/22358382/execute-php-script-in-cron-job
If you want to read more about Queuable Jobs, please read the concrete5 documentation pages: http://documentation.concrete5.org/developers/jobs/creating-and-scheduling-a-queueable-job
If you go to Automated Jobs and click on the clock icon, you get these instructions: