Los algoritmos paralelos son capaces de realizar diferentes operaciones al mismo tiempo para completar una tarea de manera más eficiente que los algoritmos tradicionales en serie. Funcionan dividiendo las operaciones entre procesadores para trabajar de forma simultánea, aunque no todos los problemas se pueden dividir de esta manera. Los algoritmos distribuidos son un subtipo diseñado para ambientes más complejos que utilizan computación en clúster. La eficiencia de un algoritmo paralelo se mide en términos de aceleración y eficiencia.