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.
The preferred way to run Cache Warmer is via the command line interface. Run it via './concrete/bin/concrete5 c5:job cache_warmer'.
You can automate the Jobs by scheduling them. I recommend using a cron job for this. If your server doesn't support that, concrete5 can trigger the Job automatically when a someone visits your website.
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