{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/sustaindc-benchmarking-for-sustainable-data","title":"SustainDC: Benchmarking for Sustainable Data Center Control","arxiv_id":"2408.07841","date":"2024-08-14","proceeding":null,"authors":["Avisek Naug","Antonio Guillen","Ricardo Luna","Vineet Gundecha","Desik Rengarajan","Sahand Ghorbanpour","Sajad Mousavi","Ashwin Ramesh Babu","Dejan Markovikj","Lekhapriya D Kashyap","Soumyendu Sarkar"],"abstract":"Machine learning has driven an exponential increase in computational demand, leading to massive data centers that consume significant amounts of energy and contribute to climate change. This makes sustainable data center control a priority. In this paper, we introduce SustainDC, a set of Python environments for benchmarking multi-agent reinforcement learning (MARL) algorithms for data centers (DC). SustainDC supports custom DC configurations and tasks such as workload scheduling, cooling optimization, and auxiliary battery management, with multiple agents managing these operations while accounting for the effects of each other. We evaluate various MARL algorithms on SustainDC, showing their performance across diverse DC designs, locations, weather conditions, grid carbon intensity, and workload requirements. Our results highlight significant opportunities for improvement of data center operations using MARL algorithms. Given the increasing use of DC due to AI, SustainDC provides a crucial platform for the development and benchmarking of advanced algorithms essential for achieving sustainable computing and addressing other heterogeneous real-world challenges.","url_abs":"https://arxiv.org/abs/2408.07841v5","url_pdf":"https://arxiv.org/pdf/2408.07841v5.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"sustaindc-benchmarking-for-sustainable-data","repo_url":"https://github.com/hewlettpackard/dc-rl","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"benchmarking","task_name":"Benchmarking"},{"task_slug":"management","task_name":"Management"},{"task_slug":"multi-agent-reinforcement-learning","task_name":"Multi-agent Reinforcement Learning"},{"task_slug":"multiobjective-optimization","task_name":"Multiobjective Optimization"},{"task_slug":"scheduling","task_name":"Scheduling"}],"methods":[{"method_slug":"set","method_name":"SET"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2408.07841","atlas_url":"https://app.syntology.ai/?focus=2408.07841","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2408.07841"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/hewlettpackard/dc-rl","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":5,"unverified":2},"by_repo_kind":{"official":{"samples":7,"ran":5,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"a09d446fd67312a2","entry":"calculate_HVAC_power","repo":"hewlettpackard/dc-rl","repo_kind":"official","path":"envs/datacenter.py","file_url":"https://github.com/hewlettpackard/dc-rl/blob/HEAD/envs/datacenter.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a09d446fd67312a2"}},{"code_sha256_prefix":"2b4af9ef9223ad51","entry":"calculate_chiller_power","repo":"hewlettpackard/dc-rl","repo_kind":"official","path":"envs/datacenter.py","file_url":"https://github.com/hewlettpackard/dc-rl/blob/HEAD/envs/datacenter.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2b4af9ef9223ad51"}},{"code_sha256_prefix":"bc094256c3b0e29d","entry":"f2c","repo":"hewlettpackard/dc-rl","repo_kind":"official","path":"utils/helper_methods.py","file_url":"https://github.com/hewlettpackard/dc-rl/blob/HEAD/utils/helper_methods.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bc094256c3b0e29d"}},{"code_sha256_prefix":"c99d4a67dd62d6b9","entry":"get_active_func","repo":"hewlettpackard/dc-rl","repo_kind":"official","path":"harl/utils/models_tools.py","file_url":"https://github.com/hewlettpackard/dc-rl/blob/HEAD/harl/utils/models_tools.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c99d4a67dd62d6b9"}},{"code_sha256_prefix":"343918f81a5b2114","entry":"get_init_method","repo":"hewlettpackard/dc-rl","repo_kind":"official","path":"harl/utils/models_tools.py","file_url":"https://github.com/hewlettpackard/dc-rl/blob/HEAD/harl/utils/models_tools.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"343918f81a5b2114"}},{"code_sha256_prefix":"e1c81bdf86c317b7","entry":"chiller_sizing","repo":"hewlettpackard/dc-rl","repo_kind":"official","path":"envs/datacenter.py","file_url":"https://github.com/hewlettpackard/dc-rl/blob/HEAD/envs/datacenter.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e1c81bdf86c317b7"}},{"code_sha256_prefix":"26655a898162be82","entry":"init_device","repo":"hewlettpackard/dc-rl","repo_kind":"official","path":"harl/utils/models_tools.py","file_url":"https://github.com/hewlettpackard/dc-rl/blob/HEAD/harl/utils/models_tools.py","link_basis":"plan_row","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"26655a898162be82"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}