Cluster computing is often used to perform time consuming calculations which can be divided into portions of work
and assigned to multiple computers. The computers send
messages and data to each other frequently to update status
information or provide other computers with data and information needed for other parts of the calculation. While a
clustered design allows for many computers to be fully utilized to decrease computation time, clustered systems experience overheads when the computers need to communi