CIQ

How Leading Experts Leverage HPC to Solve Complex Problems

April 13, 2023

Join us for an engaging panel discussion on the power of high performance computing (HPC) and the software used by leading experts in the field. Our panelists will share their experiences and insights on how they utilize HPC to solve complex problems in various industries. They will discuss the benefits and challenges of using HPC, as well as the different software tools they use to optimize their computing workflows. Whether you are a seasoned HPC user or just getting started, this webinar will provide valuable insights on how to harness the power of HPC to accelerate your research and innovation.

Webinar Synopsis:

Speakers:

  • Zane Hamilton, Vice President - Sales Engineering, CIQ

  • Rose Stein: Solutions Engineer, CIQ

  • Gary Jung: HPC General Manager, UC Berkeley

  • Brain Phan, Solutions Architect, CIQ

  • Brock Taylor, VP of HPC, CIQ

  • Forrest Burt, High Performance Computing Systems Engineer, CIQ


Note: This transcript was created using speech recognition software. While it has been reviewed by human transcribers, it may contain errors.

Full Webinar Transcript:

Zane Hamilton:

Good morning, good afternoon, and good evening wherever you are. Thank you for joining CIQ. We're focused on powering the next generation of software infrastructure, leveraging the capabilities of Cloud, Hyperscale, and HPC. From research to the enterprise, our customers rely on us for the ultimate Rocky Linux, Warewulf, and Apptainer support escalation. We provide deep development capabilities and solutions, all delivered in the collaborative spirit of open source.

Hello everyone, and welcome to another CIQ webinar. Hello, Rose.

Rose Stein:

Hello.

Zane Hamilton:

Welcome. How are you?

Rose Stein:

Great, thank you.

Zane Hamilton:

What are we talking about this week?

Rose Stein:

Ooh, so this is actually a really interesting topic and conversation. We're going to be talking about HPC, but in a broader context, like how are experts in the field actually utilizing HPC resources to solve the complex problems that we're facing?

Zane Hamilton:

Very nice. Who do we have this week? Let's bring in our panel. Gary, Brian, Brock, Forrest. Forrest, I forced you to come. I expected you to be here. How's it going, everyone?

Gary Jung:

Good.

Zane Hamilton:

Good to see everybody. We'll go around, and do introductions real quick. As you know, Rose and myself, we'll start with Gary.

Gary Jung:

Hi, my name is Gary Jung. I manage the institutional HPC for Lawrence Berkeley National Laboratory, and I also manage the HPC program down at UC Berkeley.

Zane Hamilton:

Thank you, Gary. Brian?

Brain Phan:

Everyone. Brian Phan here. I'm a Solutions Architect here at CIQ. My background in HPC administration architecture, and I've experienced supporting HPC users across various domains of science. I'm excited to be back and discussing this topic today.

Zane Hamilton:

Thank you very much, Brian. Brock, I hope you're having nice weather. It's getting to be that time of year, right?

Brock Taylor:

It is. It's definitely very nice. Has not hit that boiling hot phase yet, you can go outside and enjoy the weather. I'm Brock, a long time HPCer with a deep background, a couple of decades' worth in HPC, primarily in clustering.

Zane Hamilton:

Thank you, Brock. And Forrest.

Forrest Burt:

Hi, can everyone hear me all right?

Zane Hamilton:

We got you.

Forrest Burt:

Good morning everyone. My name is Forrest Burt. I'm an HPC Systems Engineer here at CIQ. My background is in the academic and national lab HPC space. I was previously a student system administrator at a university here in the States, but have since started working at CIQ, on the systems engineering side of things. Very excited to be on and excited to discuss HPC.

Importance of HPC [7:51]

Zane Hamilton:

Thank you, Forrest. Rose, I'm going to let Brock kind of set the stage here and let him tell us a brief overview of the importance of HPC if you don't mind.

Brock Taylor:

Absolutely. It's actually underpinning so many things that we interact with on a daily basis. I think sometimes it's overlooked because when you say HPC, a lot of people will think of the largest systems on the planet. But the technology's actually used across many different industries. And again, in the cars we drive, definitely if you get on an airplane, but just think about as you are driving and seeing road construction crews, the machines they're using, farmers, the tractors that they're driving. Even things that are in our local hardware stores that are helping build the decks for our houses or the houses themselves. High Performance Computing has been used to help create a lot of those products. Over the past 20, or 30 years, the advances in HPC have actually enabled many different improvements.

One example that I would bring up is weather forecasting. If you go back 25 years, the capabilities to project out one week or two weeks, and be semi-accurate was more consulting almanac and trends and things that you could actually try and predict with. But now, because computing has become powerful, simulations are able to actually predict much more accurately where/how things are going to occur and weather patterns. Again, it's still very, very difficult. There's a lot of research going on in weather forecasting, but if you think about how accurate we can get in predicting where a hurricane is going to hit, and what that means to be able to warn people, to evacuate people, to prepare, and actually save lives in the process.

A lot of that is because of improvements in high performance computing and its usage, across different industries. The fun things in life, the new Avatar movie, would not be possible without high performance computing. The first Avatar movie would not be possible, but the technologies that have gone into making that film, and who is involved, they've won awards for the technological improvements. You can see what they're able to do. And even simulating and actually rendering water is a highly difficult thing to do. But making it so realistic, again, is high performance computing. It's very broad. It's hours and hours in any one subject. But there are so many different things that you can use high performance computing to do. And I think what we'll see is even more industries, more everyday products that are going to be able to tap into very powerful technologies.

What is HPC Computing? [11:23]

Rose Stein:

I'm sorry, Brock, I'm just going to have to ask you if you could please backtrack a little bit. What is high performance computing? And if you're not high performance computing, what are you?

Brock Taylor:

That's a great and loaded question, and I'll start, and probably, the others will want to chime in as well. It's an argument to describe or concretely define high performance computing, what it is. To some, it is only the very high-end, the most powerful supercomputers on the planet. That's what high performance computing is. Don't talk to me about anything else. If you think of high performance and computing, you can argue that our phones are, in fact, high performance computing machines, and in some ways, they definitely are. They have the power of supercomputers from 20 years ago. To try and generalize it is taking a problem in science that you can describe by functions and formulas, and converting it from an analog world to a digital world, which is tough.

And trying to solve a very complex problem that involves a lot of, I'll call it, moving parts. Basically, a lot of science says that, if you do it by hand, it takes you a very long time. If you do it by a single computer, it will take you a lot less time, but you're still very much limited to high performance computing, and clustering, in particular, helps spread out computation to make it go faster, but at the cost of complexity and difficulty. That's where CIQ and the communities that we are engaged with come in, helping pull all these technologies together so that more people can actually use them easily. Again, a scientist that is researching bone growth does not have to learn how to build a cluster or learn how different pieces fit together. They're focusing on improving their science.

Types of Software Used on HPC Systems [14:01]

Zane Hamilton:

You mentioned earlier that you talked about rendering water, and I heard that they had to go create software to do that. I think when we look at HPC, we think about clusters, and we think about big machines. But I think a big part of this that you touched on is the software itself. I'll go to Gary next. What are the different types of software? I know that everything about it is very specific for what you're trying to accomplish or what you're trying to do, but tell me about the different types of software that people run on an HPC system.

Gary Jung:

Well, you mean like in terms of applications, maybe? Is that what you're going for?

Zane Hamilton:

Absolutely. Whenever a scientist is actually doing research, I mean, it depends on obviously the discipline of what you're trying to do. Or if you are an engineer and you're trying to render something, there are a lot of different pieces of software that people are using out there to do all kinds of different things.

Gary Jung:

Maybe I'm not the best person to answer this question, but people run a lot of different software. A lot of it is written by scientists. I'm talking in a researcher context, but a lot of times, people are trying to model something which only they know about. They'll write the software for that. Then maybe it becomes open source, and other people doing that type of research will use that software. There's software like the VASP, which a lot of material science people use for electronic structure calculations at the atomic level of materials, that can calculate things like the phases and band gaps, stuff like that.

There's software for doing imaging. A lot of people use clusters for imaging and imaging reconstruction. There's a lot of software written for that. There's software for every different type of domain of science. Really, the thing that distinguishes the software is that it can run on a large system, and it can either run multiple instances of it, or it can split up a problem. It can run on a lot of systems. That's the way I would characterize it.

HPC Today For Customers [16:39]

Zane Hamilton:

Thank you, Gary. Brian, and Forrest, I know we throw a lot at you guys from a software perspective, and talking to customers and going to prove that software works in an HPC environment, or at least show kind of what that looks like. What are you guys running across from a software perspective at HPC today, from a customer perspective? Start with Brian. Oh, Forrest came off mute first, but Brian's off now. Go ahead, Brian.

Brain Phan:

From the CFD perspective, at the end of the day, when you're running simulations, you set up a simulation problem, and you're basically setting up a system of differential equations. You're basically trying to find the solution to that. With CFD software, they're basically writing solvers to solve these differential equations. Different software vendors basically add their secret sauce to these solvers to make it go faster. Depending on your needs, you might go with one vendor versus another. That's from my experience in automotive and aerospace.

Zane Hamilton:

Thank you, Brian. Forrest?

Forrest Burt:

At the moment, the stuff I've seen most is the academic and AI side of HPC. From the academic side of things, a lot of what people are doing and using is the same type of stuff they've been using for a while. Molecular dynamics work within GROWMACS, and LAMMPS, that type of stuff is alive and well. The usual licensed use cases are Mathematica, and Matlab. I haven't heard of Mathematica for a bit, but Matlab, that type of thing, is still of interest to people. More and more, there's interest in dedicated data science platforms that give a whole all in one interface for doing a lot of different data analytics, machine learning, and those types of tasks. I mean, different things, QMCPACK, Quantum ESPRESSO, a lot of that stuff is pretty standard out of that.

On the AI side of things, we're really seeing a lot of interesting stuff going on. A lot of the work in that field is centered around a few major programming languages and a few major frameworks for those programming languages. We're kind of seeing, sort of like what Brian alluded to with the CFD industry, and we're seeing in AI these large scale frameworks, these large scale pre-trained models, that type of thing that is out there at the moment. Being leveraged widely by people and being fine-tuned by researchers and companies and places like that. There's a very strong culture at the moment of using what's out there. Because so much work has gone into developing these AI frameworks like JAX, TensorFlow, PyTorch, that type of thing.

There's so much that they're already capable of. Additionally, for example, with the GPT space, there's so much pre-trained material out there that saves so much time and effort for people that want to tinker with it that we're seeing a lot of use of these pre-trained models and people taking those. I think Brian's words are adding their own secret sauce to it. Then being able to go and have something more customized for their own purposes. All different use cases are coming out of my side of things. It's pretty interesting.

Zane Hamilton:

Thank you, Forrest.

Is Everything High Performance Computing? [20:02]

Rose Stein:

Brock, I'm going to, it's possible that you did not answer this part on purpose, but I would love to know if it's not high performance computing; what is it? Is there a name for it, or is it all computing? I mean, you mentioned the phone. Which, I mean, 40 years ago, this would've been like, oh my God, it's the high performance, you couldn't even imagine. I couldn't even imagine it. Is everything high performance computing, or is there something else that is happening?

Brock Taylor:

There are things that I would not call high performance computing. Not to disparage that, but take a web server, for instance, that's just feeding us the pages we're looking at. That's not really high performance computing. It's not computationally intensive work. But it doesn't mean that it's not connected to some elements of high performance computing. It's a tough question, and people live in different camps, but if you think of computation, mathematical computation, number crunching, if you will. Almost anything that is doing that can be classified as high performance computing workloads or applications. Again, in today's world, with the capabilities that we have, it's not just a single domain or application. It's many different high performance computing applications working together to solve a very complex problem that you wouldn't have been able to solve 10, 20, or 30 years ago.

Now problems that were being solved with high performance computing, but as an example, if you take a bulldozer, there are actually a lot of different systems that go into making a bulldozer. There's the actual structure, how much earth or material it can move, and how much force it has. There's the hydraulics that lift the bucket and things of that nature. All of those elements are simulated before they ever build that first bulldozer. Same thing with the car. If you're as old as I am, you remember crash test dummies were in all kinds of commercials 30 years ago. They still exist, crash test dummies still exist, but they're not used nearly as much, and physical car crashes are done pretty much to prove a design operates the way it should.

High performance computing is the reason simulation is the reason that you don't need to crash cars as much, or they're really proving that the design of the card does actually do what it's supposed to. I am kind of dancing around concretely answering it because it can cause an allergic reaction to some people. Again, have the debate, is AI high performance computing? I am in the camp that it absolutely is because it's computationally intensive. It is different from traditional computational models that are doing; sorry to get a little technical floating point operations, but it's more integer work. It exercises silicon in a different way. The algorithms are different, but they are computationally intensive. That's kind of my bedrock definition of HPC or high performance computing, is if something is computationally intensive, it's doing, as Brian said, solving differential equations for some physical science, that is HPC.

Rose Stein:

Thank you for that. I could tell you were going around it, and that was something that people ask, what do you mean by HPC? And it's like, Ooh. And everyone's got a little bit of a different perspective in the way that they understand it. That was very delicate and well said.

Gary Jung:

I was just going to say the way that we usually do because we have a lot of scientists and they have a lot of laboratories. They can't do it on their own with their laptop, the most powerful workstation it can put together in their lab, and whatever either the amount of data they're gathering or the computation, they can't do it on their own as high performance computing. They have to go somewhere else to get it done.

Forrest Burt:

That's similar, just to chime in, as to how I've always kind of defined HPC. It's essentially the use of some dedicated resources beyond what you already have been running on to do some work. If you're finding that your laptop isn't working, it's not running fast enough on that, and you even go get one cloud instance that gives you more capability, and you're running on that, that's HPC. If you're trying to improve the performance of Edge devices beyond these little CPU-based things, and you've maybe got one of the old GPU boards or something like that. You are looking for resources that, as I said, are beyond what you already have available. You kind of have to look at it relative to what already existed there. It could be that when you need to move something off your laptop, you have one of these world-class massive systems available, and that's definitely HPC. But it could also be that you're in a small lab, and you're just moving to a cloud instance that has an A100 on it or something like that. That's still HPC because you are going in search of something that is better than what you have and that can improve the efficiency of your computation.

High-Throughput Computing [26:03]

Zane Hamilton:

How does high-throughput computing play into this? Get a reaction from Brock?

Brock Taylor:

This may not be the answer you necessarily want to hear. Again, you'd have to define high-throughput computing. It can be HPC again, when we talk about parallelizing an application, it's splitting that workload across multiple resources. That can be within a single processor. It can be across multiple processors, it can be across multiple machines. How you parallelize what the algorithm is doing can actually sometimes break up a problem where each individual resource doesn't need to know anything about what any other resource is doing. That's essentially called embarrassingly parallel, meaning nobody has to talk to each other. Everybody can just go off, do their part of the problem, and at the end, the results get gathered. That in itself could be thought of as high-throughput. Each individual resource is then how much it can do.

You can spread that out in many different ways. You can spread that across different types of resources. and it's all about how fast you can get results out of that resource. Something that is tightly coupled, meaning the computation of an individual resource has to actually talk to other resources to do the computation, becomes a different problem. And throughput in that respect is the overall problem. What all resources combined can actually do in a given time period. How much throughput you can have? You can also have throughput defined as the outputs of individual parts of a workflow. You can think of throughput, as I have a week to come up with the design. I'm going to simulate as many different design parameters as I can. That's the throughput of design parameters, and design parameter exploration. Now step back, high throughput could be, again, how many web pages can I serve? That wouldn't necessarily be high performance computing. Again, it's kind of a loaded answer, but that's what I would say.

Models Being Used Throughout Different Disciplines of Science [28:57]

Zane Hamilton:

That's great. Whenever we talk about embarrassing parallels or the other types, what are some examples of the different disciplines within science that are using those different types of models or different types of software? I know Gary alluded to earlier, the scientists are having to write them themselves, so they have to have some sort of understanding of what they're trying to accomplish. What type of methodology they're going to use, and which algorithms they're going to use? Is there something like chemistry typically uses this, and engineering, and CAD things use this?

Brock Taylor:

Absolutely. Gary, go ahead. I don't want to step on it.

Forrest Burt:

I was just going to give two real quick ones. In bioscience, a really common task here that's embarrassingly parallel is gene sequencing. If you have a whole bunch of samples that you've taken from some type of sampling machine, like tissue samples, something like that in bioscience. And you're trying to determine exactly what genes are in that sample, taking those hundred thousand samples you might have and aligning them against a genome to figure out what genes each one of those samples is pretty much, as I understand it, an embarrassingly parallel task. Another good example I heard of in my past HPC experience was space telescopes that take large amounts of images. If you've got 20,000 images coming down from Hubble, you need to be able to do some type of specific processing across all those images.

That's going to be something embarrassingly parallel because you're going to do the same processing to all 20,000 of those images. The execution of that processing on any one of those images doesn't depend upon any other finishing. You tend to find that embarrassingly parallel architecture maps really broadly to a wide variety of different workloads. Even outside of HPC, there's a lot of things that essentially go do the same bit of processing to all of these files. I won't get too ahead of myself, but the MPI side of things is where you tend to get much more complex and much more like dedicated HPC-type applications because of the much, much higher barrier to entry that there is to write MPI code, that's doing like core to core communication on a machine. Versus writing some Python scripts that can easily be run over 20,000 files, through like a swarm job or something similar. It's really quite a broad architecture, but you see it really widely in HPC.

Rose Stein:

Brian, what are some things that you've noticed? Not noticed necessarily, but where have you seen the coolest simulations?

Brain Phan:

On the CFD side, I've seen, typically, the simulations are rotten, like through MPI. For example, if you're running a simulation on a car, the car model is basically broken up across all of the different servers. Each server works on solving the differential equations for a particular time step. Then once you're done computing that part of the model, all the servers coordinate back with each other to combine all the results back, and then you move on to the next time step. If you do enough of these time steps, maybe you could simulate, for example, a crash test.

Visualization of Simulation [32:38]

Zane Hamilton:

Brian, what does it look like from an end user perspective as this thing is going through, and some of these clusters get very, very large? Can you watch these things taking place in real-time? You could almost watch a simulation taking place. Is there visualization behind this?

Brain Phan:

Typically, while the simulation is running, you could take visualization software and attach it to or watch the directory that the simulation is running in. And if the correct files are being generated, you should be able to render the visualization within the software. As your simulation is running, you can kind of watch it to see like your results are what you actually expect, and if there's something that's kind of off, you can just stop it, checkpoint your simulation, modify your model, and then just restart it.

Zane Hamilton:

Is that something you see typically more on the engineering side? People doing crash tests, people trying to simulate wind tunnels, people working on wind generators, those types of things, but they're watching something in real-time. Is it staying there? Or if you go back into genomics, or are you watching a model being built? Is that something that they care about as much?

Brain Phan:

I think with genomics, you don't care as much. This is just from my experience, I don't think you would care as much while the computation is actually running, but you're more interested in what type of results are generated. I think the result that people usually look for are VCF files, which are basically a genetic diff to a source, genomic sequence, for example.

Social Use of HPC [34:16]

Rose Stein:

You guys, I just was totally tripping out. So you can do things like weather, car crashes and I imagine bombs and things like that. You can probably simulate any physical thing in the world, and people just have either curiosity or need or whatever will do these sorts of things either at universities or companies or wherever. What about social constructs? Like social, like life, could you take all the data and all of the information from all the cameras all across the world and be like, okay, well, if we were to do this behavior or have this thing or build this building or destroy this city or whatever, could you simulate out then what would happen? Has anyone done that? They probably wouldn't share it with us anyway.

Gary Jung:

Are you asking about social, like how we could use this in a social context, HPC? Is that what you're asking?

Rose Stein:

Yes, absolutely. I mean, if you can do it to predict the weather based on past patterns. You can use high performance computing for that. Couldn't you do it socially? Like, hey, is this the right move for our society, for our country, for our world? Could you, is that maybe what they did with the, what do you call it, climate change? That's a similar type of thing, but like for people.

Brock Taylor:

They're definitely doing it now. Climate simulation is becoming very important, obviously. The example that actually comes to mind when you say social, it's a little bit of the AI space. But again, to me, that's HPC. There's a researcher and efforts that are going on at the University of Illinois, where she actually used data mining to go back through digitized articles and recreate the history of African American women in the US. It's an element of if you try to do that without computing, you have to go read articles physically, you have to dig and find the articles, and you, you essentially have to get lucky. You have to pull up the right element, the right book with the power of computing. Now the algorithms are going out and searching.

Finding things, and then there is vetting whether or not it's a good match. And continually improve whether or not it's a good match to an actual event that's significant. What this researcher was able to do is actually go out and find and piece together all this information that can collectively recreate the history that you wouldn't otherwise be able to do. Because either you have to employ too many people to go out and read and dig through libraries manually, and again, get lucky to stumble across something and know that there are three other people that have connected pieces. Computation can put it all together, and present it and allow the researcher to actually start to look at that, vet it, and bring it forward as a collective piece. That's a huge power in society.

The legal system is obviously using this quite a bit as well. If you think about law and how cases are presented, precedence is a huge element of the law. Being able to go back through all law cases and pull together things that may be related, and you can do it in a way that's time sensitive. You don't have infinite amounts of time, but you can go out and find these pieces. That's where as well, you have the ramifications of the accuracy of what is being done, and AI is still in the early phases. If it's non-consequential and it's wrong, it's okay. But if it's mission-critical, like an autonomous driving system, and AI makes a mistake because it doesn't have the data, it can actually be very damaging. Again, it's how the technology will be used. How do you ensure that it's correct? How do you go from, Hey, I'm confident this is the right answer to The answer is credible. That's a big issue that many high performance computing domains face.

Zane Hamilton:

That's interesting, Brock. I would've never thought about recreating history or actually trying to get an accurate history from that aspect. That's very interesting. I was thinking of Rosa's question more from a perspective of, I feel like advertisers are doing this with Facebook, Twitter, TikTok, and all the data that's coming from there. I mean, somebody's using that for something, and the only thing I can ever go back to is probably doing it for an advertising purpose. To Rose's point, are they using the data for other stuff, for other social predictions? Gary, I think you were going to.

Gary Jung:

They actually have like two examples for climate change and one with social science. We are down at UC Berkeley, one of the PIs that runs in our system is Saul Shung, and he's with the Goldman School of Public Policy. His work is in using high performance computing to model how public policy affects climate change or how different policies would affect climate change, for example. From the science perspective on climate change, we have somebody else here, his name is David Roms, and he's a PI here, and he works on the cloud resolution models. In a lot of the climate change models that are used to model climate the side of the cell is like a hundred kilometers, and which is actually really, really large. But one of the things that they're not able to model with that is the formation of clouds, which happens on a one-kilometer scale. His work is in doing cloud-resolving models so that this way, you can run that in conjunction with the climate change model and get a better picture of what's going on at a smaller level.

Then one other one that I'll toss in here because what made me think of this is Rose thinking about this data that we get from cameras and stuff. One of our astrophysicists, here at Berkeley Laboratory, his work is in looking at telescopes and looking at the sky. He had come up with this idea like, well, gee, let's what happens if we return this around and we can look at the ground? So he's using high resolution cameras to look for fire detection. With that, he's built this training model, which essentially can do like early smoke detection and can notify Cal fire. He's done this a few years ago, so this isn't that new, but it was just interesting that he was using these cameras to do early detection of forest fires and using our HPC systems to do the training of the model to do that. They just run that all the time on our systems.

Where Does the Data Come From? [42:30]

Zane Hamilton:

The question I was going to ask Gary, is I noticed earlier David DeBonis had made a comment about data, and it seems like data is the key in this whole thing. You've got to have data to actually build the models and look at them. In your example, for the fire and everything, where are they getting that data from? Are they taking satellite images?

Gary Jung:

They were using some satellite images, and then at one point, there was some sensitivity about getting, like super high, access to government images that are super high resolution. Then all of a sudden, the data became sensitive. It used a lot, a lot of data.

Zane Hamilton:

Interesting. It's always interesting stuff like that where things come from. If they're getting thermal imaging, if they're getting airplanes flying over, taking pictures that are just grabbing pictures they go by, it's always interesting to see where the data comes from.

Gary Jung:

We've had other projects where people are doing, we did one project with Homeland Security, and their thing was like trying to detect radioactive sources. They have a flying platform, lidar and high speed cameras, and gamma ray detection. Essentially what they're doing is the flying platform is just flying and building the slight, you think, like a super rich version of Google Maps where it has all this extra information. Then hopefully, what'll happen is that or what they were doing was they were using it to spot radioactive sources or like bombs and stuff like that. That was really interesting because then the algorithms essentially, if you're flying at a hundred miles an hour, you have to be able to triangulate and figure out like where you spotted that stuff. It becomes a complex mathematical problem.

Zane Hamilton:

Very interesting. Forrest, did you have somebody you wanted to add?

Forrest Burt:

I just had one random thought about the social side of HPC. One use case that I've heard that's really big and emerging in the space, the more people are messing with it, is graph analytics. I've heard at a couple of conferences I was at last year I didn't hear a ton about it, but there were definitely a few questions asked about how graph analytics played into a few things. These are things like being able to take the web of connections between friends on Facebook. The canonical example is taking a sample of people from Facebook, looking at all of their connections and how they're all friends with each other and stuff. Then doing whatever analytics. I'm sure Facebook is very into doing that type of thing for advertising, as we've noted, and stuff like that. But it's becoming a bigger and bigger generalized HBC use case. Being able to look at these massive connection graphs and do meaningful analytics on them from social media sites or what have you.

Brock Taylor:

I would throw city planning as another area. If you just think, planning where cell phone towers go or where those access points are so that there's adequate signal and coverage, you've got acoustics of how sound can be amplified inside a city or dampened inside of a city. I mean, there are just all kinds of ways it can be used and is used, and it's probably underused in a lot of areas that are impacted to our daily lives.

Zane Hamilton:

5G and microcells have made that a whole other thing, putting a microcell in every bus stop because they run fiber right next to it. Remember looking at those maps for a while myself.

Rose Stein:

Speaking of social and Facebook and high performance computing, my son showed me this. I think it was my cousin. She had posted this picture of herself right next to her boyfriend, and then it said, I'll love you forever, or something like that. Then it went, do do do do, do, do, and it aged him like 50 years. There's like her standing next to him, and you know what I mean? I was like, that is so weird. I was just thinking that might be a good motivation for people where it's like, hey, if you were to quit smoking, I mean, say there's a smoker or whatever, like do but some kind of habit. Right now, this is how you would age if you continued smoking, this is how you would age.

There are so many little different things, and what I was thinking about is these last few years have been rough and not to get into any, like, controversy about people's feelings and perceptions about that. There were some consequences to the actions that we took regardless. There's like a lot of human beings who just don't do very well when they are isolated from each other and afraid of each other. Even if it was for a good reason or whatever, what if we could simulate that stuff? The pros and cons and this action may be worth the potential consequences. Can we project that out? There are a lot of different questions right here.

Brock Taylor:

I'll chime in first. I definitely think we can. I get back to the question of how do you trust the answer that comes out. That's the human element of high performance computing. We have to have the researchers that are aware that they have to vet the answers. If you look at academia and that model my opinion, I'll say it is an opinion; we get into trouble when people take an answer and just throw it out as fact, without having it vetted. That's where academia has the peer review system. You can put your ideas out there, but other people have to be able to recreate and agree with the answer and come to a consensus. You're never going to get a hundred percent, but you try to get those answers to make sure that you're credible in having a model.

Again, we are talking about a digitized element of an analog world where you don't have an exact answer. What comes out of a simulation is a simulation. It is not exact. You can always find a flaw somewhere. An example is I recently saw a researcher who is working as a material scientist designing and simulating the material, then actually manufacturing it. What is manufactured has flaws because of the manufacturing process. It's different from what was simulated. Now, you have to look at the simulation as a pure model, and the real world object is not, so the two are different. You are actually now dealing with two different things. You have to figure out what's an acceptable element, and what's an acceptable error bar. Those are the things we could have simulated what a policy might have meant and done, but you also have to make sure that you don't put data out there that may not be that accurate. It came up, I'm not going to say what it was, but an agency, basically he said, we now believe this data point to be true with a low confidence level. What does that mean? It means, yes, they simulated it, and it could be true, but we're not very confident in the answer. It's feasible. It may not be true. They do not have a confidence level in how they got to that answer. But they chose to put it out there. It's a dilemma. It's what we face. There's no right or wrong answer necessarily, but it's tough.

Rose Stein:

It really sounds like it's going in the direction of, sorry.

Zane Hamilton:

No, go ahead. Go ahead.

Rose Stein:

Of the high performance computing, and it's exciting, and it's still new, and there are lots of potentials. This idea is that the software that is giving whatever scientists or people or someone with an idea access to the compute resources that ability to then share the data and share the information and have it be reproducible. I mean, that sounds like it's really going in the direction of what we are doing at CIQ is making that accessible to the people who want to use it.

Zane Hamilton:

Brock, I was going to ask on the one where they created the material, did they go back and retrain the model and input what they had learned so it would be more accurate the next time? Or does that seem like it'd be a good idea to do?

Brock Taylor:

This is not a retrain, this is you have to build that model for the simulation, and it's actually a huge problem. Because how does this researcher create that model that has all these individual imperfections at the microscopic level by hand? You would essentially have to be able to take that material, and have something that can scan it like cryo-EM does to create that computational model that can then be simulated. These are the problems that these researchers are, in fact, working on trying to help solve. I can't say exactly what it is because it's a private conference. But this research is working on bone growth. Literally,in a sense, that could help people across the planet heal after major trauma. Either from surgery or from accidents. You have broken bones, and instead of having titanium implants screwed into the bone, there could be materials injected that actually grow the boat faster.

Differences Between Enterprises and HPC [53:45]

Zane Hamilton:

Very interesting. That's cool stuff. Forrest, I know you wanted to talk about the differences between enterprise and HPC, and I think we're starting to see them come together, but I know you have thoughts on this topic.

Forrest Burt:

I just wanted to touch on this a little bit. We talked a little bit about websites, that type of stuff as something that's done in computing. I tend to class websites, large databases, software-as-a-service deployments, and that type of thing in the categorization of enterprise computing. These are large scale workloads that are serving some resource out to a large number of people at once. But for the most part, the resources that are being used are fairly generic. Something that we have to consider here is the hyperscale versus HPC because a lot of the time, these enterprise computing deployments will take social media sites, as we've discussed as an example. A lot of times, the enterprise computing that they're doing requires such an incredible scale that it can be hard to differentiate it from high performance computing.

One thing that I look at there is with the hyper scale. You are essentially trying to serve one resource out to thousands of users at once. With HPC, you're trying to use all those resources to create something for a much smaller group of people. Hypothetically, aren't thousands of people waiting on the simulation? It's probably one small group's work that's being done there. In general, that's a hyperscale back to enterprise computing a little bit. In general, one of the biggest emergencies between enterprise computing and HPC is in the tooling and stuff like the automation and platforms and things that are available to them. We see an enterprise that has been really common for a long time now. There's Ansible, containerization, and CICD platforms, there are all these different tools that are used ubiquitously to manage these massive deployments.

They are everywhere. There's Kubernetes, container orchestration, and that type of stuff. All these major sites. Most enterprise computing relies on these technologies, but for the most part, these technologies are unheard of in HPC. On the converse, the scale of some of the enterprise computing, like around, I don't want to call enterprise computing AI here, but the AI computing that they are doing in the enterprise is reaching a scale that they're starting to need HPC class systems to be able to work with that. The end result of this is that we have an enterprise wanting HPC class resources. We have HPC wanting enterprise-class tooling, and there's a bit of a divide between these two things. At CIQ, our answer to this is our platform working on Fuzzball, which aims to bring enterprise and high performance computing together in a way that allows HPC to use container orchestration and CIC platforms, container or cluster deployments that rely on things like Ansible, et cetera.

 It's a very, very interesting space at the moment. Like I said, we touched on social media sites' websites, so I wanted to mention that for a moment. There's a very interesting divide that has been growing between enterprise and HPC that they're both doing the thing that the other one wants. It'll be very interesting to see how they come back together. As I said, one of the biggest things that we work on at CIQ is bringing that divergence, to a meaningful resolution for everybody involved. Very interesting space.

Future of HPC [57:18]

Rose Stein:

Shameless plug for us. I love it. That's what we're talking about because it's exciting, and there is a need to bring the two together. That was where I was going with Brock like, Hey, if it's a non-HPC, then what is it? Well, we are kind of blending, so it's less and less distinctive. Thank you for bringing that up, Forrest, and it really kind of ties into the next question that I've been thinking about here. Where are we going, right? We talked a lot about what it is like and where we are now. What is the future of HPC as you see it? We'll start with Brock.

Brock Taylor:

I'm going to reference what Gary brought up earlier. 20 years ago, it definitely was the researchers themselves writing codes to solve these highly complex problems. You see that less and less, and that's a good thing because these researchers are usually not computer scientists. They do not know the details of hardware architectures, or cash architectures. They wouldn't know what InfiniBand is. They may not even know what a Linux platform is. That's that element of, as we move forward and make this more accessible, the domain specialists stay in their domain. That's really important because these researchers are specialists looking at these highly complex systems to come up with solutions. And the more that they have to learn something else to do that research, the more they are delayed from coming up with their answers. I see the future as that distraction and more elements of software layers, allowing them to do more in their specialty areas.

Rose Stein:

Thank you. Brian, what's your, what's your vision? Where do you see HPC going?

Brain Phan:

Adding on to what Brock was talking about, in the future, I see just better tools and better hardware coming out. With these two things, users will be able to get results a lot faster, and that's what they care about. If you're able to get results faster, it means you can make design decisions faster. If you could do that, you could probably get to market a lot faster before everyone else. As a result of that, we'll just see cooler new products coming out that will hopefully improve our lives.

Rose Stein:

I like it. Bigger, better, faster, more. Awesome. The slogan of this year's super computing conference is "I am HPC." Claiming the affirmation. I love it. Thanks, David. Gary, do you have a vision of where you see HPC going?

Gary Jung:

I think we're just getting started. I really think we're just getting started and maybe Rose the what you're saying about like how it could be used. I think what would be nice is that we could be used in a way that people don't have to think about it. For example, that app where somebody could just click on this thing and see how they age, I could see HPC just behind the scenes is just becoming part of the infrastructure where people just utilize it, and they're able to help them make better decisions, hopefully, make better decisions by using it. I think there's a lot of work to get there. I agree with Brock in that the domain specialists, I can see now, a lot of them don't want to do the coding and develop their own codes. But there's a little bit of a dilemma there because the people who have done that have been critical to like, making HPC successful.

I'm not sure what the model is going to be in order to continue to achieve what we have. That's going to be tough. As far as just HPC and enterprise, not that long ago with just APC was just the computation, and then the next big thing was data. Data's kind of where people are talking about it as a first class citizen, but I don't know that that's actually true yet, and a lot of HPC centers. But just merging all of that with AI I think there are still a lot of interesting things to be invented and put into practice.

Rose Stein:

Thanks guys. That's all the questions I have. I don't know if there's anything else that you want to bring up Zane or Forrest. You got what you wanted to see?

Forrest Burt:

I was just going to sum up essentially what I had said there at the moment. HPC is going nowhere but up. HPC is everything, as we've discussed here, from really high level simulations to the weather modeling that tells public utilities how much power they're going to have available from renewables and stuff like that. As we've noted, HPC touches so many aspects of life, and the use cases that are supporting all of this technology and civilization stuff are only getting more complex. At the moment, HPC is going nowhere but up. There's a complete Renaissance in hardware and software at the moment with new chips, new devices, new appliances, in software, and new paradigms. Like I touched on, the combining of enterprise and HPC together, that ultimately allow users to do more work faster and focus more so on their domain science and less so on system internals and that type of thing. Ultimately, to kind of reiterate what everyone else has said here, it's a very great time for HPC, and it's very interesting to see where it's going on all fronts.

Zane Hamilton:

I think it's a great way to wrap up, Forrest. I agree with you, it is very interesting to see where things are headed. We are up on time. Really appreciate your time, Gary, it's always good to see you. Thank you for joining us. Brian, Brock, Forrest. Thank you, Rose. It's been great. I appreciate it. If you don't mind going and liking and subscribing to the CIQ channel, we would really appreciate it, and we will see you again next week. Thank you.

Rose Stein:

Awesome. Thanks, guys.