Podcast transcript: Achieving software sustainability

The IT Pro Podcast logo with the episode title 'Achieving software sustainability'

This automatically-generated transcript is taken from the IT Pro Podcast episode ‘Achieving software sustainability'. We apologise for any errors.

Rory Bathgate

Hi, I’m Rory Bathgate. And you’re listening to the IT Pro Podcast, where this week we’re asking if you can go green, while staying in the green.

The climate crisis is an issue that we must all confront, and businesses in particular face calls to cut back on emissions to meet net zero targets. In recent years, increasing focus has been placed on the climate impact of tech firms, and data centres in particular.

According to Bloomberg, by 2030 big energy systems could account for 20% of worldwide energy drain, which if not produced by renewable energy would represent a stark increase in carbon emissions. Despite this, many firms still weigh the cost of going green against expansion plans, and greater processing power often comes with a hefty energy cost.

To explore these challenges, I spoke with Behrad Babaee, Technology Evangelist at Aerospike, and the author of a white paper that proposes a framework for measuring the CO2 impact of software platforms. We discussed whether increased sustainability can also lead to increased affordability and even processing power.

Please note that as this interview was recorded at Big Data London, the acoustic quality is a little different to normal episodes, but we hope that the conversation itself will prove more than interesting enough nonetheless.

Rory

So something that struck me straight away at your talk was that some firms, they still see sustainability as a choice between sustainability and affordability. What would you say to those firms?

Behrad Babaee

So basically, what I found in this research was that actually the in, in software in terms of computing industry, it's the opposite. If you, if you think about it, and you want to create a software that is more efficient, you have to make the application run on fewer instructions, you want to reduce the number of instructions. So when you reduce the number of instructions, your task will complete faster, yeah, you're gonna have more space available on your CPU as you do more things. So you can do more. Therefore, you're going to reduce the number of reduce the amount of resources that you require. So when you reduce the amount of resources you have, your costs will be lower, your efficiency, your amount of emissions will be lowered as well, because a lot of the emissions are based on the amount of resources that you use and energy those resources are using. So basically, I think software and IT industry is one of the only industries that can actually reduce the cost by making the applications more sustainable. So I think that that's that's that's a unique opportunity for the IT industry to reduce their emissions.

Rory

Kind of an unprecedented win-win scenario, for IT professionals. I think something that struck me in the white paper was, you argue that efficient was always mean, as you're saying speed and cost of higher and more intensive resources are used. So could you expand upon that with with an example?

Behrad

So let's, let's talk about an example. Let's imagine that you have a task that takes I don't know, 10% of the instruction sets 10% of the instruction that your CPU uses in a second. I don't know how many megahertz or gigahertz your CPU has. But imagine that I'm using 10% of those instructions to handle that. If I can reduce that 10% to 5%. All right, I suddenly can do twice more on the same CPU. So that's the example of this that you can increase the speed, you can reduce the amount of resources that you need. And also because we are reducing the amount of resources, we are reducing the cost, and we are reducing the emissions as well. So I guess that's, that's an example.

Rory

Right, so something that companies should be striving for. And it's also something that companies, that you're saying, is eminently achievable by companies. Is this something that you see, is better suited to be built from the ground up? So let's put it another way to sort of start from scratch with systems or is this applicable to existing systems that could quite easily be transformed?

Behrad

I think in general, in IT industry, building something from ground up is less common than you know, fixing something. Yeah. So I think I think you have to be realistic. You have to look at it from both ways. So one side is that okay, I want to build it a new application, right? And then I can look into the different technologies that are available in the markets. And then you can study the amount of emissions that they might produce and make a decision based on that, to, to pick a technology that is better for the environment. But other than that, if you already have an application that is using something, I think that everybody's always trying to improve their application. So you can always look into that to improve that application. And, you know, basically make things work better. So I think that it's not either, you know, either this or that, you can always have both.

Rory

That's true, I suppose you're hard pressed to find any system in it, that isn't in some way, sort of stacked upon 40 years of pre existing systems. And exactly, so this is something that can be continually improved. I know that in the white paper, you you push forward a framework for identifying areas that are causing the most common impact, and then to allow companies to take that data and then apply it into making their system more efficient. Could you just describe that in detail?

Behrad

So the idea came to me from this, that I learned that the IT industry is actually using a lot of energy. At the moment, apparently, we are using something between 5 to 9% of the energy in the world, in 2030 is going to expand to to around 20%.

Rory

That's a shocking statistic.

Behrad

You know that, you know, energy is one of the most polluting businesses in the world. So therefore, IT industry is one of the polluting industries of the world. So I was like, Okay, if you're like that, is there any way to measure the amount of emissions that we are producing? Right, you know, to be able to review something, you first need to be able to measure it. And I looked around, and I couldn't find anything that gives you any indication about how much emissions a software produces. And then I had this idea that I might be able to expand this argument about efficient softwares to, to amount of emissions that they produce as well. And then, to be honest, the paper, you know, explain everything as much detail. But if you just want to look at look at it from you know, 30,000 feet view, it's it's rather simple. I'm saying that for a software, you look at this, that's how much resources you need to handle a specific workflow. And it can be anything, you know, well, Aerospike is a database company. So I did it with size up data. But if you imagine, you want to do that, for a technology that is analytics, you can say that, I don't know, I want to be able to analyse, I don't know 50 million users. That's whatever the workload that you have. So you can define your workload. And then based on that workload, you can say that I need this much resources. And then from there, it's going to be very easy. Yeah, there are some public data sources that are telling you that for this specific type of resource there, there are this much emissions produced while it was manufactured. And when you run it in, let's say, Ireland or that country, it's going to produce that much emissions, because it's using the power and energy that the country generates with that much efficiency in that country. So then you put them together. So you end up with this number. And I was thinking that if you have efficient, efficient softwares, you can improve this number. Basically, this paper shows that, you know, two nominally similar technologies can produce 5x different amounts of CO2, one of them produces 110 tonnes per petabyte, the other one produces 670 tonnes, right? It's a significant number, right?

Rory

So it's not inherent in the system itself. It's to do with the different practices thar the companies are deploying.

Behrad

Exactly. You don't you don't necessarily see that. But when you do the calculation, you see that oh, actually it's significantly more. And then yeah, if you're conscious of that, if you think that, you know, you need to reduce the CO2 emissions, then yeah, that's the way that you can focus on and one more thing is that that I think, in the years to come, more companies are going to look into that. Because right now, all of the three cloud providers, the most important cloud providers, tell you about the amount of emissions that your account produced during last quarter, right? They don't allow you to estimate that But you can see what's happened in the past three months. And I think that it's going to be the precursor for this, that they're going to charge back the companies who are using their infrastructures on the CO2 emissions, because very likely AWS and Microsoft and Google, you know, Net Zero targets as well. And if people start to use their resources, how can they offset that, I think the way that they will offset that is by charging back that number to the user. And then then it's going to be the responsibility of user to reduce that admission. So you

Rory

I think that maybe with a combination of I know in the paper, you suggest that they should be giving users insight into a prediction of how much carbon impact will be —

Behrad

Absolutely.

Rory

— and also, this charge that you're talking about? Users will have to foot the bill for if you like, pushing Amazon Web Services, or Azure, or whoever it is off their net zero target. So with a combination of those two things, do you think we can see an effective shift towards more efficient systems?

Behrad

Absolutely.

Behrad

Fantastic. So off the back of that call for more prediction, or for prediction available from cloud providers, I noticed that you're calling also for a universe of CO2 emissions metric, because my understanding is that currently, different providers provide CO2 emissions in different metrics is very difficult to compare across providers.

Behrad

Yeah, that's correct. So when you measure the amount of co2, you know, there are CO2 zones in Zone 1, Zone 2 and zone three? Is it? Is it directly created by you? Is it indirectly created by you, or it's two levels away from you. So each of these cloud providers are giving you different numbers, and these numbers are not necessarily comparable. So that's one of the problems. But the reason that I was talking about, you know, a metric was that, this analysis that I did was just between two different technologies. There are not only two technologies in the market, and you know, in the database market, there are at least 50 famous databases. I think, very similar to the way that we say that, yeah, this database can do, I don't know, 50,000 transactions per second on a node, or this database can handle that much data, we should have a metric that says that, yeah, this database can do, I don't know that and produce that much emissions. So people can really compare that and it's not really databases only, right. You can do that with analytics engine as well, you can say that more, I don't know that. That's amount of workload, this technology produces that much emissions that technology produces those emissions. And then, based on what are you doing, you can you can look into that and then make decisions. Luckily, I believe that efficient, software's always going to use less resources, and always going to produce fewer emissions. So think that is going to be always the case, so somehow you can guess that from the resources that you have. But I still believe that, you know, if you want to, for example, use as a service system. Right. You don't necessarily know what resources that you you're going to use. Right? So if you have something to tell you that yeah, this service that we're using producing this much emissions based on this thing that you do, I think that that's going to be relevant.

Rory

And ever more relevant as digital transformation is, you know, accelerated by the pandemic. But I guess in essence, what you're saying is that companies are at the moment sort of handing away their, there's a screen behind which they're not really aware of what they say their carbon impact is. So this information should be more transparent, across the board.

Behrad

I agree.

Rory

More specifically to Aerospike. Can you talk a bit about I know this is a broad, we've talked about a broad range of processes or frameworks, decision making, can you talk broadly about how this how these ideas are being applied within the company?

Behrad

So efficiency is core to what Aerospike does, right? So the the database from the day one was created for people who needed really, really fast access to data, so they had to make it really, really efficient. So they got all of the fat from the system and made it really really fast. So we do have clients that are doing thirty million transactions per second, with latency of less than a millisecond, right, these these numbers are just, you know, whenever when I was joining Aerospike I heard these numbers that they're lying. You know, it is like, you know, I worked in the database market for many, many years, and these numbers just didn't make any sense. Yeah. And they were doing that, while they were reducing the number of servers, just like it doesn't, it's not possible. So. So yeah, you know, the database is written to be super, super efficient. And then, as I discussed, you know, efficiency and speed, always bring you, you know, you were, you're going to need fewer resources, and you're going to generate less emissions. So I think that I don't think that when the company has started to build a application, that we're focused on this, this is something that we started to figure out, when more things started to come out, you know, the company in 2010, I don't think that many companies in 2010, 2011 were ticking about reducing their CO2. This is something that we recently understood that we need to we need to care about. Now we are looking at the market. And now we are comparing ourselves against the competitors. And we see, oh, we can we can help people other than, you know, just reducing their latency and help them to store a lot of data, we can help them to reduce their CO2 emissions as well.

Rory

A kind of handy marriage between short-term savings and also the understanding that with the climate crisis, you know, down the line, any changes made now are long term savings in the billions and trillions.

Behrad

Exactly.

Behrad

So I think there's one question that many people asked me, and I think that that would be, that might be interesting to some other people as well. So as we are moving towards more sustainable sources of energy. So is it going to have an impact on this argument that I'm making that you know, moving towards more efficient software is going to reduce emissions? Because some people think that okay, in 2030, we are using 20%. But all of this 20% is coming from sustainable sources? Is it going to be still relevant? My answer to that question would be this that no source of energy is emission free, every single source of energy has some kind of emission, some of them are more, some of them are less, and that you're not reducing the amount of energy that you're using either. So 20% of the energy in seven years, is possibly more than 50% of the energy that we're using today. So using all of the levers that we have to reduce the emissions is just the right thing to do. And then there's also another point and it's that, you know, expecting someone else to reduce their emissions and not doing it yourself is kind of hypocritical. If you if you think we need to do that. Right. And I'm not I'm not in a position to say that you should write I'm a software engineer. I only know about software, right? I'm not saying that you should write. But if you think you should, you should act, right. You can't you cannot say that, "Oh yeah, the sources of energy are going to clean up so I don't need to act." Because what if I did if they didn't?

Rory

Yeah. Right. Yeah. And potentially a perilous situation for any company that designed that it doesn't want to be at the kind of the forefront of this movement, a risk in itself to not act.

Behrad

Yeah. And, I don't know if this bit is going to be interesting at all, but I'll have another talk tomorrow that I'm discussing, and at how Aerospike is five times faster. You know, you know, because you cannot do it with sorcery, right. So somehow you should be able to do that. And then most people know that, you know, the data structures and algorithms that applications use, many were invented in the 70s and 80s. So yeah, how come there's a new technology in the market that is working often faster than the other technologies in the market? And, you know, I had that question when I was joining Aerospike as well. I didn't know that. How on earth is that possible? And that's a very interesting topic as well. The reason for that the reason that I figure now is that the number of transistors that you get, on, although the number of transistors that you get on a chip is not doubling every two years anymore. You know, if you look at, you know, the most advanced CPU that you can get right now it has around 8 billion transistors, and most advanced CPU that you could get 16 years ago, had like 580 million transistors. So the number of transistors is only 14 times more. Which it should have been 256 times more, because it's 16 years,

Rory

Right, and we're rubbing against the laws of physics there.

Behrad

So so so that's true about a single chip. Yeah. But if you look at the computers, yeah, the number of transistors has not only doubled every two years, I guess it's 10 times more every single year. Because now, you know, when you're comparing the computers today, with the computers of let's say, 16 years ago, you have significantly more than 256 times more RAM on a single machine. A top of the market machine in 2006, would only handle 64 gigabytes of RAM. Today, you can have 24 terabytes of RAM on a on a single machine. Right? It's 384 times more RAM, it's more than 256. And with this is even more interesting, because back in 2006, we hardly had any transistors, right, we were using spinning disks. Now, we are using these SSDs that are just transistors, and for a single terabyte of data, we have trillions of transistors. So basically, the number of transistors that you have in your CPUs is in billions, doesn't even matter. Right, because the number of transistors that you have in your disk is in the order of trillions. So significant changes in the hardware in the past 16 years caused a lot of changes in the way that we write programmes. But we still have a lot of programmes that were written for that kind of hardware that was good for 2006. And you can still run them on the modern hardware that we have today. But they do a lot of clever things to combat the scarcity of resources that they were facing in 2006, which you don't need to do today. And if you don't do them today, it lets your application fly and allow it to work five times faster, although you're using almost the same algorithms and almost the same data structures. And it's not unique to Aerospike. There are lots of other modern technologies that are coming into the market that are significantly better than the applications that were created 15 years ago.

Rory

I think this is kind of a worthwhile topic to link in as you're talking about efficiency. I know that you made a reference at the start of the podcast to that increase.

Behrad

Yeah, so the reason that we can do that is basically that. And it's not only limited to Aerospike, there are other technologies that are doing that as well. And I think that decisions make a decision makers have to notice that, you know, if you work with the technology for the past 10 years, and you call it the modern technology, yes, it is modern technology, it is not you're not using a technology that was developed in the 80s. You're using a technology that was developed in the past 15 years. But you have to notice that there has been a massive change in the type of the hardware that we are using today. And 16 years ago, so it was noticing what is going on with the newer technologies that are coming to the market, because there's a chasm between the number of transistors that we had in 2006 and 2022, and it's not stopping. It's still growing. And you're missing a lot, if you're still, you know, using those software that were written for scarcity instead of abundance.

Rory

And enterprises have to get their eye off the supposed bottleneck with the processors, almost an obsession with somehow defeating that hardware challenge? And as you were talking about adapting algorithms, adapting programmes to more efficiently use the hardware that we do have, and actually is an order of magnitude better than what we had.

Behrad

Yeah. Another example of that is the ratio of RAM to disk. A server in in 2006, is 1:200, 1:300. For each megabyte of RAM, you have around 200-300 megabytes of disk. On a server today, you can increase that to 1:10. For each megabyte of RAM, you can have 10 megabytes of disk. So RAM is not, and RAM is relatively cheap. So RAM is not that scarce resource that you had to use very, very carefully. You can use it freely. And you don't need to constantly move things between disk and RAM to do let your application or to let your application use the RAM. You can keep everything in RAM. But but that's a different mentality. Right. And that's a different mentality, which interestingly, we are doing with microservices, because with micro services, you're dedicating resources to one or two threads, which just owns one or two cores of our CPU. And because it's dedicated, we can, we can increase the speed of our applications. So we basically, took concurrency outside of the process. And we made the processes basically parallel instead of putting multi threading inside.

Rory

And needlessly trying to use multi threading is a silver bullet when yeah, there's a whole separate process that actually improves efficiency, and to tie it back into the sort of title, title of discussion it's in these exact areas that businesses should be looking into to, to increase their their reduce the overhead costs and increase their sustainability and efficiencies?

Behrad

Exactly. So what I was saying was that there are lots of new applications, new technologies that are coming into the market that are significantly faster than the older technology. And by older, I mean, 10 years ago technology. I'm not talking about, you know, Oracle 2000, Oracle 1984, right, I'm talking about something that is relatively recent. They are new technologies that are coming in, they are faster because they're faster, they're using fewer resources and because of fewer resources, they are generating less emissions.

Rory

You can find links to all of the topics we've spoken about today in the shownotes, and even more on our website at it pro.co.uk. You can also follow us on social media, as well as subscribe to our daily newsletter. Don't forget to subscribe to the IT Pro podcast wherever you find podcasts. And hey, if you're enjoying the show, leave us a rating and a review. We'll be back next week with more insights from the world of it but until then, goodbye

ITPro

ITPro is a global business technology website providing the latest news, analysis, and business insight for IT decision-makers. Whether it's cyber security, cloud computing, IT infrastructure, or business strategy, we aim to equip leaders with the data they need to make informed IT investments.

For regular updates delivered to your inbox and social feeds, be sure to sign up to our daily newsletter and follow on us LinkedIn and Twitter.