Why Operating Systems Still Matter Shawn Rosemarin Pure Storage
Shawn Rosemarin, vice president of research development for customer engineering at Pure Storage, dives into why operating systems still matter as processor architectures continue to advance.
Transcript
This is Textron tv. Hey guys, thanks Withrow. We're here with Sean Rosemary, who's vice president of research and development for customer engineering for Pure Storage.
And we're talking about how well platforms are gonna involve and as operating systems and software changes, and it's all gonna kind of revolve around flash storage, and we're gonna explore what the downstream implications of that are. Sean, welcome to the show. Thanks very much, Mike.
It's a pleasure to be here. Bring us up to speed about what's been going on at the operating system level because, um, not everybody tracks it and there's been advances on the infrastructure level and, and it feels like a primordial soup of things are coming together, but what's gonna be the outcome? Yeah, you know, Mike, it's interesting, I mean, I don't want to age myself here, but I'd say this is the fourth major innovation that we're witnessing and we're on the cusp of, uh, as we all enter this AI era.
And with that, you know, a whole bunch of data implications and power implications and other things, but I mean, it always helps to take a little bit of a trip down memory lane. And I felt it would make for a good discussion today to talk about, you know, what have we learned from some of these other eras and where have operating systems and platforms almost become the single largest enabler? Uh, so I wanted to touch on some of that today.
Alright, well bring us up to speed. I mean, you know, without necessarily going through 20 years of history, but what exactly are we on the cusp of? Because I think a lot of folks are kind of like, they have a sense of change, but they can't quite put their finger on it.
Yeah, it's, it's an incredibly exciting time. I mean, let me kind of help you understand how we can connect the dots here a little bit. So yes, without going into a whole rehash of history, if we think about what happened early on in my career in the PC era, right, the era of personal computing or microcomputer, if you prefer, um, we tend to give a lot of, you know, credence to things like Microsoft and even Apple's OS back at the time.
And, you know, that graphical user interface was so crucial for us to be able to really all bring computing, uh, it it to our fingertips. What we forget to think about though was ultimately, you know, if we think about what Intel was able to engineer around the CPU and the specific platform and operating system that they developed was the critical enabler to actually allowing this very rich operating system to function on a relatively low power and at the time, relatively low cost device. Um, so I really want to touch on this standardized computing platform, right?
And, and Intel was the first example in the PC era. And then I really want to touch on, you know, then what happened as we got into this cloud era and what did the cloud providers do in terms of platform and operating system to once again drive efficiency. Most recently we've seen Nvidia with GPUs and their Cuda operating system or cuda platform really enabling, you know, us to take advantage of these graphical processing units and then really tie that into the future of flash.
I mean, there's no doubt we're seeing disc more and more often being replaced by flash. It's already happened on the consumer side, it's now happening on the enterprise side. And once again, we have a strong proposition and belief that the operating system and platform that governs that flash will be crucial for efficiency and effectiveness, um, as it's adopted worldwide.
Is this changing the way we build software? Because we have a lot of different operating system platforms, to your point, and they're becoming a little more specialized. So what is that layer of abstraction that gets presented to software engineers to go build something that weaves all this together?
Yeah, so Mike, what it comes down to is it's really the availability or set another way the consumerization of software. So as we've seen over the last few decades, software's gotten easier and easier to develop. Uh, and a lot of the simplicity of that development has been because the underlying hardware, the area that's always been very complex to link into, um, that sort of abstraction layer of how do I talk to and optimize the underlying hardware has been optimized over time, right?
The example I gave you on the Intel side, you could imagine for a moment if Microsoft had been forced to talk to each of the individual components of the pc, if Microsoft had been forced to say, okay, what commands within the operating system are we physically gonna send down to the CPU? And then how are we gonna optimize that central processing unit so that the user experience is as positive as possible? Well, the good news is they didn't have to do that, right?
Intel delivered instruction sets. These instruction sets became the defacto standard for software development. And anyone who wanted to run to an Intel based PC at that time, it was much simpler for them to write to these instruction sets and minimize their complexity of writing to the absolute underlying hardware.
And the same things tie to the cloud and the same things tie to Nvidia with cuda. Um, this has really, really accelerated our ability to drive software, especially when you compare it to, you know, 50 plus years ago where we were talking about software developers having to worry about what memory registers they were physically running to and accessing and how they were gonna move that data across each of those, uh, components. Is that same concept now playing out in the realm of storage to your earlier point around flash?
Or is it becoming, um, more standardized and what does that look like? Yeah, it is. So, uh, obviously the big change in storage is as I discussed, the shift from spinning disc to flash and I would say it's one of the most understated and maybe even underappreciated innovations over the last, uh, decade or two.
But the fact is we've all taken it for granted, right? Our cars now run on flash, our appliances run on flash, our PCs at home, in case most of 'em run on flash, our smartphones and our iPads and whatever else we use all run on flash. But the enterprise data center has been a little slow to adopt that trend, right?
They have stayed on spinning disc for a long period of time, and now with this explosion of data that we're seeing largely fueled by modern analytics and now AI and ML is forcing customers to really rethink, does it still make sense to stay on disc? And with that, as I look to flash, how important is this underlying platform on which I'm addressing that flash and where is it gonna open up opportunities for me to look at energy efficiency, to look at cost efficiency, operational efficiency? And that's really the, the thesis that we're after today Is this kind of part of the ongoing trend where we've always seen capabilities that exist in software, slowly but surely migrate down to the operating system and often they get embedded down into the instruction set of the processors and that kind of drives innovation.
So what we kind of see in that curve today and what kinds of innovations should we expect as a result? Yeah, that's a good question, Mike. So look, I think it was Alan Kay who said that anyone or any company who's serious about developing software, uh, develops their own hardware.
And you know, if I draw some parallels here, if we just look at cloud for a moment, right? We saw the cloud and the public cloud originally emerge as you know, it was just commodity hardware. It was buy as cheap as you could get it, whether it be compute, networking, storage, uh, and the software was built on top of it.
But as you saw, the second phase of cloud kind of emerge where it became less about could, can you do it and can you deliver it? And more about what cost can you deliver it to me at and what kind of efficiency can you drive? You've now seen the hyperscalers more and more be building proprietary hardware designs, in some cases their own hardware.
In other cases they're using, uh, readily available hardware, but the way that they're integrating it, the way that they're standing it up is very tightly coupled with the automation and orchestration that they've built, right? You look at something like on the Google side, what they did with Borg, you look today with, uh, AWS in terms of how, uh, I would say tightly integrated and tightly coupled the infrastructure is to their operating environment. Um, that's what drives ultimate efficiency.
And you know, even as we look forward to AI and ml, uh, you know, everybody loves to talk about NVIDIA and the GPUs, but the real secret sauce on the Nvidia side is Cuda. It is ultimately the compiler that, you know, if I kind of simplified for everyone, you've sent this, this training, uh, instruction out to a computing environment, and you know, ultimately the CPU needs to go then take a bunch of instructions and send it to the GPU. Well, NVIDIA made that really, really simple because what they said was, tell us what you wanna do.
We will then take that instruction and we will, through our own operating system, uh, and and operating environment, we will then go parse out all of that workload, all of those, uh, work packages to the individual GPUs, we'll manage the communication between all those GPUs. And once we get to our result, we'll then bring that back to the CPU. And ultimately that has made AI much more consumable and much more accessible to not just the hyperscalers, but to the much smaller environments, people who might have just a few GPUs.
And you know, when we look at that extending forward, we see this move from disc to flash granting extreme advantages in efficiency, in reliability, in operating, uh, you know, overhead. And we think that this underlying platform, uh, you know, will be very, very important in terms of how do we optimize flash, how do we really get the maximum output from what's becoming bigger and bigger drives? What's becoming bigger and bigger environments, uh, and how do we scale that over time?
We hear a lot about the coming of AI chips. So how will that play out in your mind as part of this curve that we're looking at? Do we need some sort of operating system for those as well and what might that look like?
Yeah, so remember, I mean, ultimately what we've done is we've added, we've gone from a, a, you know, old school architecture of CPU only central processing unit. And the way I would describe that is it's, uh, you know, it's a general purpose processing unit designed originally for general purpose computing. And it does a lot of things well, and what's really happened in AI is we've brought these GPUs or these graphical processing units, originally intended by the way, to allow us to accelerate things like gameplay in, you know, very rich media games and then used, uh, even in the area of Bitcoin mining to help do proof of work.
And then as AI really came on, it became very, very efficient to say, Hey, while a CPU could do these things, A GPU is much more effective. And, you know, the amount of density and the amount of processing that I can get within one of these GPUs is significantly more effective and efficient than that of a standalone CPU. So to your point, yes, the key to NVIDIA's growth here is not just their ability to develop a very fast and capable, uh, GPU, but their ability to develop it alongside an operating environment in Cuda.
And for Cuda to be able to specifically simplify the, um, or disaggregate the workload from CPU, having to worry about what it's gonna tell the GPUs to do, to essentially tell Kuda, this is what I need done. And Kuda going and doing all that work, uh, on the backend, it's made the development time much, much faster. It's also made the simplicity for an average ai, uh, developer, um, the, the kind of cycle time to bring that to market much, much faster, Much faster.
How do I weave all these things together? If I have an operating environment for storage, one for GPUs, one for CPUs, and maybe one for AI chips, who knows? Um, how does that become something that doesn't overwhelm the developer?
Yeah, so I mean, you gotta think about it. Developer is leveraging operating systems and instruction sets to talk to hardware. So I'll just get to what I talked about earlier.
In the old days of software development, the individual developer needed to know how to talk to each individual component, right? It was physically moving memory across individual, uh, registers. Uh, we think about old languages like PL one, PL two, et cetera, uh, or assembler, right?
In these days, essentially the developer is saying, I am going to ask this particular, um, you know, sub component, sub operating system, sub platform to go and complete this task, and it will do it in the way that it's been programmed to do it, and it will bring that result back to me. And yes, to your point, there are several different interface points, but each of these interfaces across the stack become tool sets, become toolkits or even SDKs in a lot of cases, software development kits that developers use as they're developing these applications to access the ultimate functionality of each of those components. How do we avoid getting locked into different platforms, therefore if we're writing to these, um, these combined software hardware stacks?
Yeah, that's a great question. So look, I mean, you know, I think it was said a decade ago by a couple of CEOs in the Fortune 500 that the question is not where you, is not if you lock in, but where you lock in. I mean, ultimately you wanna harness this capability, you wanna harness this, uh, time to market, you wanna harness this, uh, ease of use this simplicity, this cost advantage.
And so the question is, you know, if we talk about things like Intel at the original times, if you were gonna use Intel instruction sets, you were limited or locked into use Intel chips. Um, of course that changed over time, right? We saw the PC revolution change dramatically.
We saw a lot of these instruction sets become more ubiquitous, usable by a wider audience. Uh, today, if you look at the cloud, I mean, ultimately if you're gonna start building scripts and automation and orchestration in a lot of cloud environments and you want the quickest time to market, those are going to be more difficult to, uh, transport, more difficult to move, more difficult to migrate possible, but you're gonna have to break 'em down and rebuild them. If we look at the AI market with Cuda, I mean, there's no doubt there's a huge advantage there, but it is a open question, Mike, if I at some point down the road want to go and use a other party's GPUs, and I'm using Cuda as a way to offload my GPU capabilities, then what is going to be the ability, uh, for another GPU provider to either be compatible with cuda, uh, or translate, uh, from Cuda to whatever my particular, uh, operating environment is?
Uh, those questions have yet to be answered. Um, from a storage perspective, I can tell you it's a little simpler. I mean, ultimately when we're talking to flash and when we're talking to flash storage, uh, you know, there's ultimately at this point, there are two players in this market.
There are traditional SSD or solid state drive manufacturers, uh, who have retrofitted traditional hard drive software to talk to their drives. And they use something called a flash transfer layer to move from disk to flash. And then there are companies who've built their own operating system for flash, their ability to, on an end-to-end basis truly follow the life of an IO from the controller all the way down to the flash.
Um, and you know, from a, from pure standpoint, uh, we believe that represents a tremendous advantage. We have seen system on a chip architectures where different processors are kind of melded together, for lack of a better phrase, do we need additional advances in compilers as we go forward to kind of harness all this stuff? 'cause it feels like the platforms themselves, the underlying hardware is becoming more diverse within the context of an operating system.
Is that fair? Yeah, I mean, you're absolutely right. A compiler's a great way to look at it.
In many ways, kudo would call themselves a compiler. Um, and I think you're right. I mean, if, if these systems on a chip prove themselves to be more efficient and more capable than general purpose hardware, then with it will become the prevalence of their underlying compilers and their underlying instruction sets.
And to a developer that will mean yet another toolbox that you will leverage when you wanna talk to those specific devices. So in the age of ai, do you think it will become simpler to build applications or is it gonna become more challenging because we have more options that we're trying to weave together anyway, and um, you know, it's all about the optimizations of particular chips and architectures and software. That is such an interesting question.
So, you know, it's a tale of two particular scenarios. Um, there is no doubt in my mind that the early movers for AI have the potential to create the next trillion dollar company, whether they be existing businesses or s in someone's imagination going into their, you know, early, uh, P zero P one or early funding rounds. However, those that venture early are dealing with a very complex stack, right?
If you look at what you need to write to today and the wide variety of tools that you are integrating to deliver that, um, it is complex. Coupled with, we've obviously got, obviously got major supply chain challenges in acquiring GPUs at this point. It's kind of a single source environment.
Uh, and you've also got a lot of testing and I would say, um, you know, almost seeding to do across the business to see which of these ideas actually stick, which ones of them are not just cool, but which ones actually represent tangible value that can be measured at the end of the cycle. So you move fast, you get to market first, and you get that wonderful, you know, uh, marquee position as being a leader in that industry. Conversely, for those that are sitting back and waiting, uh, it will get simpler.
The stack will simplify the amount of platforms, the amount of, uh, you know, integrated offerings, the amount of SDKs, the amount of potential learning libraries you can leverage and research that's been, uh, pre-trained amount of that be available. It will make it much less expensive for you to enter those markets. However, what you'll sacrifice is your time to market.
And so those are the decisions our customers are thinking about right now. All right, folks. Well, you heard it here.
There's an old joke about how you can always tell the pioneers by the arrows in their back, but at the same time, if you're so far behind, you won't be able to catch up. 'cause you'll never find where the wagons went in the first place. So there you have it.
Hey Sean, thanks for being on the show. Yeah, thank you for having me. All right.
And back to you guys in the.