Existe um excelente documento em PDF aqui , que explica em detalhes as diferenças. Ele também faz vários testes que mostram em gráficos como ambos se comportam sob certas condições.
Aqui está um pequeno documento do criador do BFS: link sobre por que ele criou este agendador.
Mas as principais diferenças são:
BFS é melhor para tarefas interativas que bloqueiam entrada de E / S ou de usuário
BFS é geralmente um pouco mais rápido, mas um pouco mais inconsistente
BFS em aplicativos de baixa latência mostrará uma grande melhoria em relação ao CFS (como os aplicativos de vídeo)
O BFS tem muito menos "picos" no uso da CPU
O CFS é geralmente mais consistente para um desempenho consistente
CFS é melhor para processamento em lote com limite de CPU
CFS em tarefas intensivas em multi cpu + várias tarefas terão melhor desempenho que o BFS
O CFS tem mais picos do que o BFS, mas funciona para ser mais justo entre as tarefas
Para o usuário normal, o BFS pode oferecer um desempenho "melhor", mas dará menos desempenho se você realizar muitos processos em lote.