Skip to Main Content
Distributed computing systems provide a highly dynamic behavior which originates from heterogeneous computing and storage resources, heterogeneous users and the variety of submitted applications and finally from the heterogeneous communication that takes part among the systems entities. As such applying global optima oriented allocation algorithms usually produces poor results and heuristics are used instead. We concentrated our experiments around the Sufferage heuristic and its adaptive cluster-aware version XSufferage. Both Sufferage and XSufferage use a centralized design and produce good results for low levels of dynamism and deterministic environments. In real life distributed environments, both heuristics produce poor results. We expose the Sufferage heuristic through a distributed architecture based on a cooperative set of entities, which form a Multi-Agent System, such that the results could be improved. We implemented a new algorithm, based on this architecture, called Distributed XSufferage. In order to test the new algorithm, a series of experiments were developed by simulating two real life Grid environments. A complex set of performance metrics were collected -- flow time, make span, throughput -- both resource and cluster level, utilization -- both resource and cluster level and resources and clusters mean loads. Algorithms produce their allocation solution based on estimates and modeling of system's resources and as such are sensitive to estimation errors. Throughout our experiments DX Sufferage was more robust to such errors compared to the original Sufferage and, respectively, XSufferage heuristics.