Science Fair Projects

Internet-Based Distributed Computing


The objective: Distributed computing is the process of using several computers (clients) to solve a complex task. The clients communicate with a central server, which coordinates all computations. In a distributed computing network, clients are rarely all the same speed. It isn't efficient to simply divide the task equally among the clients, as some clients will be significantly faster than others. A system called load balancing allows the faster clients to work more than the slower ones. The purpose of my project was to explore the relationship between overall performance and the number of clients in an internet-based distributed computing network, as well as investigate the need for proper load balancing. I hypothesized that the more computers participating, the greater overall performance will be. In addition, the effect of load balancing would be most prominent if the computers used vary greatly in speed.


TMy experiment used six of my home computers. One acted as a server, while five others were clients. I designed and created my own distributed computing client and server software. I made two algorithms--one which divides the task equally, and one which incorporates advanced load balancing. For each algorithm, I had the network complete the task with only one client, and then added more clients, one by one. Each client recorded its time to complete its sub-task, and the server recorded the time it took to complete the entire task.


Without load balancing, the network slowed down considerably when a slow client was added. With load balancing, however, adding a slower client would still benefit overall performance.


I found that adding more clients to an efficiently designed distributed computing network increases performance. Efficient networks need to incorporate load balancing. Without it, performance is bounded by the slowest client, i.e. slow clients will bog down the entire network. When load balancing is added, all clients work for about the same amount of time, with the faster clients doing more than the slower ones. The net effect is that overall performance will always increase. My results show that distributed computing, when implemented correctly, is an effective system that can utilize massive reserves of computing power to approach complex problems. This confirms my initial hypothesis.

This Mathematical project was to investigate how to efficiently design an internet-based distributed computing network, in which adding more clients will result in a performance increase..

Science Fair Project done By David C. Liu


Related Projects : Parallax, Adaptive Interference Rejection in Wireless Networking, Statistical Comparison of Radial and Transect Sampling, Centripetally Accelerating Pi, Software and Hardware Implementation of Rubik's Cube Solving Algorithms, Mathematical Model for the Optimal Arrangement of Cell Phone Towers, Complete Mathematical and Physical Relativistic Soliton Universe, Effect of Quantum Computing on Hash Functions, Radical Obsession, Finding Hidden Sequences In Nature, Do Odds-Makers Make Accurate Predictions, Goldbach's Conjecture: True or False?, Debruijn Sequence Taken to Higher Powers, Symmetries and Transformations of n-Cubes and the Nimber-Simplex Graph, Shape to the Max


<<Back To Topics Page........................................................................................>> Next Topic



Copyright © 2013 through 2015