# Use different solvers¶

The Pulp library is a Python interface to underlying solution engines. By default it comes packaged with CBC

It is however possible to use a number of other solvers (see the Pulp documentation for details) and these can be passed to the scheduler. For example here is how we would use the GLPK solver for a given set of events and slots:

>>> scheduler.schedule(events=events, slots=slots, solver=pulp.GLPK())


Different solvers can have major impact on the performance of the scheduler. This can be an important consideration when scheduling large or highly constrained problems.