By James Byrne, James Baker, Sadie Bartholomew, Marion Weinzierl, Reina Camacho Toro, Ryan Smith, Yadira Sanchez, Loïc Lannelongue, Colin Sauze, Camila Rangel Smith, Thibault Lestang and Lincoln Colling.
This blog post is part of our Collaborations Workshop 2023 speed blog series.
Why should we care?
We think people developing research software and involved in computing-intensive research can and should do more to address their environmental impacts. If we do any computing at scale, then it is likely to be the biggest impact we, our teams, and/or our research areas have on the environment. Colossal mining machines, often running on fossil fuels, work to extract finite natural resources from the planet which are then used to manufacture computing devices. As a result, 70 to 90% of the total carbon footprint of a smartphone or laptop is due to manufacturing only. These impacts from hardware production are compounded by the ecological impacts (e.g. pollution, resource depletion, and even noise) of computations and data processing, all of which have significant social and economic impacts that disproportionately affect marginalised and vulnerable communities (and have for some time).
There are also reasons to consider that are particularly attributable to our roles as - or allied with - research infrastructure roles. We should aim to ensure that the resulting research presents a net benefit for society, minimising the environmental and ecological impacts of research oriented activities. This is difficult, given that the existential impacts of computing are hard to see and occluded from us, often actively by power, money, and techno-optimism (the assumption that innovating fast for potential future gain outweighs the short-to-medium term responsibilities we carry in our work). If we try to minimise the environmental and ecological impacts of our daily activities, we might also want to minimise the energy intensity of our research computing - or, better still, work towards organisational and institutional change (because as individuals we shouldn’t bear the brunt of making change happen). If our work is motivated by proposed solutions to the climate crisis, then we should be paying special attention to the environmental impacts of our work. And if our work is motivated by social justice, then it is important to recognise that impacts (not limited to but, particularly, land ownership and pollution) are unevenly distributed across the world and tend to affect low and middle income countries (LMIC), who often do not benefit from data and computing access, and who see these impacts as forms of colonialism whose dynamics demand attention.
All of us who work as research software engineers or in cognate research areas have an opportunity to influence and drive positive change at a structural and institutional level. We can refine our code and processes rather than always reaching for more data and more computing resources. We can redress the lack of awareness among our leaders and accelerate the uptake of responsible research and innovation practices. And we can embed equity and accessibility into any changes that we make.
What is happening now?
Most areas of academic and industry research involve research computing. Machine learning and data science have been under the spotlight recently, but chemists, physicists, biologists, astronomers, psychologists, archaeologists, new media scholars, and even literary historians routinely use - to varying degrees - research computation which results in large carbon footprints. This work relies on data which needs to be stored, managed, and migrated; on HPC teams to manage access to clusters and cloud computing; and on third-party infrastructures. All components draw on water resources for cooling and on local electricity grids (using, in some cases, fossil fuel powered generators as fallback).
At the same time, as individuals are nudged into reducing their personal carbon footprint, grassroots environmental activists are facing the consequences of being at the front of the environmental struggle. In seeking to defend their land and environment they are belittled, coerced, undermined, and killed. Their experiences are not centred on the environmental discourse that we as research professionals tend to encounter.
There is a diverse landscape of green computing activities seeking to create, enable, and support change within institutions (UKRI Net Zero Digital Research Infrastructure Scoping Project, Wellcome’s ReSu) and academic communities (Green Algorithms, Digital Humanities Climate Coalition, Brain mapping working group). Industry actors have advertised commitments to net-zero or even negative emissions, and although encouraging, it remains unclear how beneficial for the environment these will really be. Communities such as the Green Software Foundation have been established to monitor those commitments and challenge their often grandiose claims. Supercomputing centres are competing in energy efficiency in the Green500 ranking, and increasingly seek to become “greener” and reduce their greenhouse gas emissions. There is a growing and interdisciplinary body of research into the environmental impacts of computing, work on the carbon intensity of cloud-based AI, of scientists (bioinformatics, astronomy etc.), the environmental degradations of device proliferation, and climate conscious design, work that describes data centre ecologies, traces the impacts of moving data around, and that rejects techno-optimist narratives. And some - if not enough - of this work foregrounds those environmental activists who are defending their land and their environment, and so doing seeks to decenter privilege and tackle colonial processes and oppressions.
There need to be more such initiatives and more coordination between them. At the same time, there are many barriers to their uptake. As responsibility for computing resources has shifted from individuals and teams to institutions and organisations, today a typical research workflow assumes computational resources are available at little to no financial cost. Both in academia and industry, incentives are usually not focused on environmental sustainability and therefore code development tends to be trial and error, focused on results, and not engineered for software efficiency. There is a lack of training in efficient software engineering workflows. There are funding models that tend to proliferate cutting-edge hardware and technologies without exercising due diligence for their uptake, coupled with a lack of support for their long-term maintenance. And there is insufficient data to understand how what we do at research intensive universities, institutes, and facilities impacts the environment and particularly marginalised communities.
How can we create change?
We can track the impact of our work by measuring the energy usage of our computing resources, designing metrics that we use in our publications, displaying those metrics to users with relatable comparisons, or providing the means for research groups to compare their environmental impact with colleagues, collaborations, and competitors. Where data is available we can set and monitor carbon emissions targets for computing runs or whole research projects, making pledges that are public, accountable, and - if we choose - enforced. And where data is difficult to gather, some indication of impact, participation in relevant schemes, or an acknowledgement that we are thinking about your impacts can be useful, inspiring to others, and create new forms of incentive. Just asking questions and raising concerns can set off a chain of events that enable positive change.
We can write more resilient code by building in checkpoints that reduce loss from failed jobs or simulations, by deliberately constraining ourselves to limited resources and datasets, or by threading the environmental impacts of research computing through our training and outreach work. We can even tell stories. We can, as a hackday team did at Collaborations Workshop 2023, write tools like the Climate Aware Task Scheduler. Tools that prompt us to compute less, to compute at times when surplus energy is available, and to build workflows that recognise and redress the energy intensity of our work. And we can publish adhering to the FAIR (Findable, Accessible, Interoperable and Reusable) principles more of the data we create from computational work, so as to encourage the reuse of existing data rather than the need to create new data. To achieve this we need to train each other, build capacity, and develop intersecting communities of practice that can discuss, evolve guidelines and best practices around climate crisis-oriented research computing, and share what works in advocating for change in organisations and institutions.
We can take localised action by commenting on the environmental impact of research intensive work when reviewing grant applications and papers or when asking questions during conference presentations, and we can provide mentorship that encourages others to effect comparable change. In the spirit of the Software Sustainability Institute, we can do all this across institutions, domains, and practices, by joining together new practices in research computing with other organisations that are campaigning for environmental action, both in and outside those communities most impacted by climate change and environmental degradation. Researchers and engineers can create change - and can mitigate the risk that their well-intentioned actions create unintended harms - by forming alliances with grassroots movements and working-class political organisations, by making an effort to learn from their viewpoints, and by integrating their comments and suggestions into future research and research computing practices.
This blog has attempted to make a case for positive change in research computing practices. We have explored the “lay of the land”, highlighted the dangers, and evidenced the seeds of change that are ready to be nurtured. In doing so, we have attempted to avoid amplifying both climate doomism and techno-optimist solutionism. In the place of such narratives, we have sought to foreground the marginalised and vulnerable communities who are disproportionately affected by the climate change and ecological degradation that research computing contributes to. In turn, we hope that readers feel empowered to change their practices, but more importantly to begin advocating for change in our communities, institutions, and organisations.
The main takeaways to consider are:
- Educate yourself and others about the importance of efficient computing.
- Ensure you tangibly associate your use of research computing with its environmental and social impacts.
- Back those environmental activists who are defending their land and their environment.
- Support responsible initiatives and behaviours, including training and education, within your communities and organisations.
- Look at integrating carbon reporting and data collection into your processes and systems.
- Call for change and highlight potential improvements to existing infrastructure, processes and systems.