Yes, discussion of this can be found in the manual here:
You want to look at all the session.gc_ settings, as those are the variables that effect how likely it is that garbage collection is running.
With that said, something is clearly wrong, as it seems like your session files are not being deleted.
You do need to factor in the session.gc_maxlifetime setting in your php.ini file, as no file will be deleted until that number of seconds since file creation has passed. If your gc_maxlifetime is too long, files will accumulate.
This script is a recommended cron - oriented command line php script that can be installed and run daily or weekly to run the garbage collector. I would start with that and see what happens.
There could be permissions issues that are actually preventing the garbage collector from deleting the sessions, so starting with a manual run of this program and seeing what happens to the number of session files would be a good start. If you have php7.1 this is the recommended code from the manual.
<?php
session_start();
session_gc();
session_destroy();
?>
A program for older versions of php that should work in a similar fashion would be:
<?php
ini_set('session.gc_probability', '1');
ini_set('session.gc_divisor', '1');
session_start();
session_destroy();
?>
The idea here is that you are guaranteeing that the garbage collector will run by making the probability 100% for this script.