Supercomputing, that's what we talked about when we were talking about BayoCAD is supercomputing. Or as we like, there are two types of supercomputing and we kind of cover both of those and those are HPC and HTC, that's high performance computing, meaning it's running really fast and high throughput computing, which means we're processing a whole bunch of jobs. So what defines a supercomputer? This is where I cast questions to answer it. So what defines a supercomputer? Is this a supercomputer that I have sitting down here? Is that a supercomputer? No, why not? What is a supercomputer? What does it have to be?  Multiple processing units. You're hitting on all the right cylinders here. Big and fast. That pretty well defines what a supercomputer is. As a rule of thumb, we say it's about the power of 10 desktops, but that's, you know, the definition is fluid. The fastest supercomputer in the world in 1984, when I was a middle school student, has less processing power by several orders of magnitude than what I have in my pocket right now. So, you know, this obviously is not a supercomputer, but it would have been back in 1984. So it's a moving target as to what defines a supercomputer. Now, like I said, we generally define it as about 10 times the speed of a desktop. Baocat has somewhere just north of 150 worker nodes, and these are high-end servers for the most part anyway. And we have 13 terabytes of RAM on there, which is a lot more than you're going to find in any desktop anywhere. The largest, I had to look this up today, the largest supercomputer right now is the Tianhe 2 in China. It's by their Defense Department. It's got 3.1 million cores and over a petabyte of RAM and runs at 33 petaflops. A flop is a floating-point operation per second. So, the billion, 33 billion operations a second? No, keep on going, quadrillion, wouldn't it? It's fast. It'd be a trillion. That flop would be a quadrillion. Yes, it's very fast. Ours is not that fast. But like I said, believe it or not, the fastest supercomputer in the world, the one in China doesn't do as much work as the biggest one in the United States, which is at Oak Ridge National Labs, because the one in China only works on their one particular problem they work on. And when it's not working on that problem, it sits there and does nothing. Whereas the one at Oak Ridge National Labs, they open it up to everybody, and so when they're not working on their main application, it's always running full-out, doing somebody else's jobs. And if you need more computing resources than we have here at BioCat, there's also what we call Exceed, which is the national network of big supercomputers, maybe even the one on, you know, there's several of them around the United States. There's the one at Oak Ridge. There's one at UIUC, it's the National Supercomputing Center up there, and Stampede, which is the one at the University of Texas. These are all huge, huge, huge supercomputers. And if you need more than we can provide you, we can get you resources to get you out on the bigger ones as well. So, types of problems are solved by Supercomputer. Just to score, tell me what kind of problems you solve on BioCat. What's your area that you work on? Okay. Say all the search form and give you a friend and Facebook. Oh, like data mining? Yeah. Okay. We don't do a lot of that on BioCat itself, but we have some other resources that Adam's going to talk about a little later. What kind of things do you do on, what kind of problems do you solve? Big data. Data simulations. Okay. Data mining. Adronomy. So, what kinds of problems are you doing? You're doing the computational flow dynamics into things. You're doing the genomics into things. Both. Genomics. What, Gavkilesh? DFT. DFT. Okay. Genomics. Genomics. Genomics. Genomics. Quantum simulation. Okay. That's quite all right. Pardon? DFTs. Genomics. Parallel calculations. Genomics. Genomics. Genomics. More genomics. More genomics. Are you starting to see a pattern here? Go ahead. Simulations. Big data. Big data simulations. Network simulations. Genomics. Genomics. Okay. So, you see we have a wide variety of things that we deal with here. Now, we just last week to Oklahoma and they have a bigger supercomputer than we do by about three times. They're about three times our size here. They do two applications really. And they size their computers for that. They do weather simulations and they have one, what was the other thing that they talked about that they... Some bit of molecular dynamics. Right. And so, if it runs those two programs happily, they're happy. They don't care. We on the other hand, everything from statistics, which I don't know if you're the one doing this or not, but there's somebody from statistics that will typically dump in 50,000 jobs. And they'll all be really short. They won't take long at all. But we need a whole bunch of parameter sweeps, that kind of thing. Then we have genomics people. And genomics people will sometimes take the biggest machine we have and they'll run it flat out for three weeks, which those are kind of diametrically opposed targets. So, we kind of... That's why Beocat is heterogeneous. We have some really big memory machines for the genomics folks. We have lots of small cores for the statistics folks and pretty much everything in between. So, we optimize for large size, for fast speed, and reliability. We get quite a few people coming onto Beocat because they've been running things on their desktops and they'll be two weeks into a three-week simulation. And first of all, they're not able to use their desktop during this time, which is kind of frustrating. And second of all, two weeks in, they'll... Somebody will pull the power plug or something like that. Windows will do an update and they'll be cursing at the computer because it shouldn't be doing that. But it'll break whatever they're working on. So, we do have downtime here too, but hopefully it's a little bit more predictable. And it does stay up for long periods of time. It's not unusual to have at least several months of uptime on Beocat. Do you want to go take a tour of Beocat? I'm going to take two groups and do this. Yeah. Beocat? Somebody else is on... Ah, gotcha. On the Adobe... On the Zoom session. Okay. So, it's got a little... Yes. This is being recorded. We'll send out the link when we're done. Is that what you're asking? Okay. Yeah. We'll send out the link when we're done of how to get back to and look at this again. Okay. It's got to be true for one. So, let's do like this side. Take them on a tour of Beocat. We'll talk about some parallel programming here. Nope.  And then when you guys go over there, we'll talk to them about the same thing. How's that? Just because he's loud out there. Okay. One of the things that makes a super cubian great is doing what we call parallelism. What does parallelism mean? It doesn't mean to do something in parallel. Do multiple things at the same time. Exactly.  Parallel, you're doing several things at the same time. The concept of parallelism is one of the more difficult things in computer science. And the reason for that is that programming is tough to make it all work right. I'm going to say this probably more than once. This system, not ours, not anybody's, can magically make your programs run in parallel. If you have something that is inherently single-threaded, which means you can only run one thing at once, and you put it on Baocat, it doesn't matter how many resources you throw at it, it's still only going to do one thing at a time, unless it's programmed to do more than one thing at a time. So I have some examples here. Notice I put it in bold. This is probably the biggest thing that we get, because we have people that have a program that will run single-threaded, one thing at a time, and they'll say, hey, I need to use Baocat, and they'll put on Baocat, and they're saying it's no offense, not any faster than this on my desktop, what's wrong with you? That's because the program wasn't written that way. Some programs are harder than others to run in parallel. Here's some example. If you have this being your data set, and you're trying to make this computation, can that be done in parallel, or does that need to be single? If you're just trying to take this part right here, all these numbers that you've got out here, and you're taking all of them and multiplying by four, is that something you can do? Can you take a number and multiply it by four? Can you multiply two times four? Yes or no? Can you do that? Yes. Can you multiply three times four? Can you multiply four times four? Can you multiply five times four? That's something, and you guys can give me the answer, and I would know all that right at the end. I wouldn't have to do any coordination really to make that happen. You have to have the communication there, but the computation itself can be done in parallel. Now, we've got something a little more tricky here. We have 11 times the quantity a to the n. I think that was supposed to be a squared. I think my thing got moved up. Times e to the a n plus log a to the n of 17. How about that? Is that something you could do in parallel really easily or not? Yes, it is, because there's nothing saying you only got one input and you want one output. You could do that. It's a lot harder to problem than just multiplying by four, but there's nothing more to it than that. Now, here's a trickier one though. We start with b zero being zero, and we have b of n equals a to the n minus b to the n minus one. It relies on the previous value. That makes it a lot tougher now, because you have to have the previous value before you can go on. Does that make sense? I think we're about ready to switch here, which is perfect because that's how far I wanted to get through. One more thing. The typical usage we see, this is true of most HPC programs. Programs will have some part of it as serial, and some part of it is parallel. You genomics people, do you guys use the Perl? Do you guys use Perl to do your, what do you call it, the pipelining? You guys do pipelining? Well, none of that's going to be Perl. Do you guys do pipelining? The pipelining is the serial part, and then you submit them on to Beocat to do the parallel part. Those are very well written. Those are perfect HPC kind of jobs, because they know what parts are what. But what we see is we'll have somebody to ask for a lot of resources, and they'll only be using a little bit of it for a long time. They'll use a lot of it for a little bit, and they'll use a little bit for a long time, and a lot of it for a short period of time too. So, they kind of go back and forth between the parallel and serial part because they're combining these kind of things that we call these, there's actually a term for it, it's called embarrassingly parallel, because they're really easy to do, followed by this part, which cannot be parallel. It has to be done serially. So, that's the way most HPC programs work. Some of them are all parallel, some of them are all serial, but for the most part that's the usage that we see. Okay, perfect time to go. Next group. All right, now you get to hear this feel that I just went over with those guys. The basis of HPC Supercomputing is parallelization. What does parallel mean? A job of split serial doing multiple calculations at the same time. Exactly. As opposed to serial, which means you're doing one thing at a time. Now, you notice I put this up here in bold. I do this because this is the biggest misconception that we have. No system can magically make your programs unimparallel. We have people, probably on the average of once every couple months, get new Bay of Cad accounts, and they try their job out, and they say, what the heck? This runs no faster than it did on my desktop. What's broken on your end? The problem is, it doesn't matter how many resources you throw at it. If a job is not made to run in parallel, it won't run in parallel. And the programming of that is difficult. So we have some tool kits and things like that. We're going to talk about a little bit later, but that is the key to it, is that your programs have to be created to run in parallel before you can use it in more than one spot at once. And I said, notice I said, no system can do this. This is not a limitation on our part. That's the way it's written. That's the way it's got to be. There's fast when the parallelism making things unparallel, it's not written to be that way.  So here we are. We have given a of n equals 1, 2, 3, whatever up to n. Is this parallelizable very easily? The first one, 4a to the n. Can you multiply 4 times 1? Can you multiply 4 times 2? Can you multiply 4 times 3? Can you multiply 4 times 4? Can you multiply 4 times 5? Yeah, that's pretty easy. And I don't have to coordinate much to do that. That's what we call a bearish, singly parallel problem.  You guys can all work on part of this problem separately. What about this next one? It's a little trickier. This is supposed to be a squared. I missed my superscript on there. It was 11a to the n squared times e to the power of a to the n base, log base 8 to the n 17. Can you work on that parallel? It's a lot more difficult calculation.  The reason I bring this up in an example like this is because the calculations that we're doing on Bayoucat are usually not multiplying 4 times a number. It's usually heavy-duty mathematics. However, the principle is the same. For any input that we have here, we can create the output. Again, you can grab out your line and you can do this calculation to be happy. What about this third one? I say b to 0 is equal to 0. b sub n is equal to a to the n minus b of n minus 1. So b to the 1, you have to know what the value is of b0 before we configure b1. You have to know the value of b1 before you have the value of b2. This cannot be parallelized even at all. Even such a simple calculation like that, it requires the previous result before it can go on to the next one. So again, it doesn't matter how much we want to, we can't make that run in parallel because you always have to have the previous value before you go on to the next one. Typical usage we see on Bayoucat, the genomics guys do what we call pipelining.  It does this part for you and this is what we see. We love those kind of pipeline jobs because they're very efficient use of our resources. Typically what we'll have is they'll have jobs will come in and they'll have some part of processing that needs to be serial. They'll work on something like this where it's working on a chain of stuff and then it says, okay, now break out this stuff in parallel.  The genomics guys really get this because they do the pipelining stuff and that's why it's very well written. But we have somebody right now who has asked for a huge amount of resources for a long period of time and it sits there and uses very little resources 99% of that time and then it's going to explode into a huge amount at the end. So it needs to ask those resources because it's going to use them but the program wasn't written to do that pipelining kind of thing where it can run this for a long period of time and then go from there. Yay! You're good timing on that. We're all at the same spot now. Let's give you guys about a five minute break or so. Or go to the bathroom, break that kind of thing and if you have any questions, we'll be around here for a bit.  So be back here in about five minutes or so. We'll be right back. I might build a snag one from somewhere. We had more people than I thought we were going to have and we ran out of spots. Let's see if we can snag one from somewhere else. You want to grab, you know where more chairs are? You grab. He's going to get you one. I think we'll be fine for now. My voice just started to kill me. My voice just started to kill me. My voice just started to kill me. My voice just started to kill me. My voice just started to kill me. My voice just started to kill me. My voice just started to kill me. Do you have any, like, the Terminal apps iOS? There's a terminal already built in to... Oh, iOS, sorry. I was thinking OS 10, sorry. I don't know. I don't have any Apple devices other than, you know, desktop. My desktop is Apple. Dave here does have an iPhone, I know. If anybody would know, he would. Yeah, well, I mean, I know I have one that I run on my phone. Hey Dave, is there an iOS terminal app that lets you SSH decently? An iOS SSH client that is reasonable? Dan would know too, since he does this all the time. What is? Web? Okay. We do have a web-based terminal also. You're saying that reminded me. We have this. Damn it, I don't have my password to send me from. That will... Yeah, sure, that's good. I just have to look it up here. gait1.beokat.cs.ksu.eu Should... Well, okay. Right. This is cool though, because I can come back to this on a different device. I'm going to type it out again. On my own computer, it's not a problem. And this is all through a web page. So, sure. That's on our list of things. Cool tools to show you guys. That's going to end, right? Yeah, toward the end. Alright. Next section here we have is on some parallel programming. And there are two languages that use a lot for parallel programming. There's FORTRAN and there's C. Just me speaking personally, I can't stand FORTRAN. So, all the examples today are going to be in C. So, that's just my personal prejudice. If you like it, I'm not going to dislike you or anything. That's what I like. Oh, yeah. I forgot to mention this. I didn't know I had this slide in here. I'm going to go through some more about a lot of this stuff that we're covering here today. As far as general stuff and not Bayo's cat specific stuff. This page right here, the Super Computing and Playing English. There's the URL for it. Or if you just look up Super Computing and Playing English, it'll take you to that site. That is a guy down at OU has put this together and it's a class that he does like an hour a week kind of thing. I'm going to go back to the 2011 version if I remember right to get the full the full version I want to try to say the full videos. Because of ADA requirements, they weren't able to put later ones on there and they can't get them transcribed because it costs money and they don't have a budget for it. So, therefore they're back to the old versions which is 2011, but still this is some really good information on Super Computing and how all this is put together. And as a matter of fact I draw several of my examples from his So, that's a good a good resource that I didn't change that will get you there, but support.BayoCat.CIS.KSU.edu is actually our support pages. I'll change that before I send this out. And emailing us, the three of us if you send to this email address that gets put into our ticketing system I know that there are several people in this room just based on the names that I saw registered that do this on a regular basis and that's great. So, if you send email to this address it goes into our ticketing system and you might get a response to whoever, which one of us can either best answer the question or whoever gets to it first if more of them one of us can answer the question. So, that's how you get a hold of us. Parallel programming. Now I have a copy of these all in my home directory and these are all open to the world and I put this on here because when I send I'm planning on sending these slides out to you guys afterwards so that you guys can have them. But, here's where all these examples are coming from so you can kind of look at them yourself if you want to edit them or whatever. So, shamelessly stolen or adapted from this other website. We're going to do some background includes and how many of you are familiar with programming in C first of all wow, this is going to be how about Fortran, does anybody do Fortran? A little bit. So, what's your programming experience in then? Just shout it out. What's your programming experience in? Are you doing any programming? Java in what? Python. Got it. R is not multi-threaded that's why we call them high throughput jobs because generally they have a whole bunch to go through fast but they are not getting them to run in parallel or is a royal pain in the rear trust me I've tried. Okay, so we're going to go through some of these programming examples here if you, yes that is parallel this next section is about programming in it though so how to write the programs so that's why I was kind of surprised that so many people signed up for this portion of the class because most people are not interested in writing parallel code and if you have code that you want to have parallelized send email to that email address you have earlier and Dave will be loved to have lots of work to do because that's what he does. And Java will do parallel however Java is kind of inefficient you don't see a lot of Java programs written to take advantage of it because it's not very efficient code and when you get to high performance computing being high performance you want to be as efficient code as possible mainly because it's not very efficient code it's not very efficient code and when you get to high performance computing being high performance mainly because most places aren't like Baocat most places are we want you running 100% CPU all the time and we want it to be doing useful work and you're going to have a very limited window if you go to like I said to exceed some of the national resources they're going to have a very limited window to get your calculations done and if you have a limited window you're going to need that code to be as efficient as possible and that means not Java that means see your program yes, the more low level it is the more efficient you can make it does that make sense you can write some really bad code in low level languages I trust me I've done it matter of fact you probably see some of that here what a fork does again this is these examples are going to be in C most everything you see as far as parallel programming is going to be in either C or Fortran and if you go matter of fact if you sit through Henry's course the super competing and playing English he has examples there and he brings up examples in both but you won't see Java and you won't see Python and you won't see R and those kinds of things so my apologies for that Adam's really the Python guy in the room too and he just left though I know that it will do some level of parallelization too if you jump through some hoops I don't know what level that is again it's not very efficient because Python is not a compiled language it's an interpreted language so that will slow it down some or just by itself so here I'm going to kind of go step through this code here and like I said if you decide that you don't want to have anything to do with C you're going to go hang out in the lobby for a bit you're not going to offend me but I'm going to go through it anyway so here's what I'm going to do I'm going to set up a global variable and then I'm going to run this loop here I create a type called childpid which is a process ID I'm going to declare a local variable of 0 and then I'm going to fork it a fork makes a copy of all the memory and variables and everything like that so you basically have two identical environments then I check from my child process ID if it's 0 then we know we're looking at the child process so both sides run the same code and you're going to stand here that means we're at the parent process you guys have a question for me? how these are in my on BayoCat these are all here and I'm going to I wonder if I can I can't hear but tell you what I can do here I can that's a little better I didn't see that a little better I'm going to make it even bigger this is starting right kind of where the last one left off so when you fork something you have to have a way of knowing whether your the same code runs both we made a full copy and we have two full copies of the program running now so it has to know whether it's running the child or the parent typically when we do this we're not doing this just once we're doing this several times by doing this several times you might have several different one parent and then several different children underneath it so first thing we're going to do is we're going to check to see if we are running on the child process if we are running the child process then we're going to increase that local variable we're going to increase the global variable and those out if it's the parent process we're going to set the local variable 10 and we're going to add two to the global so let's see what happens when we compile this and run it I don't put a loop in here I haven't put a loop in there yet that's a good point because most time when you're doing a fork you're going to do a loop and do this several times and you need to have something in there to watch how many children you have so that you don't keep on forking this one just forks one time the program is done and is finished so that's why this one is not going to cause any problems at all okay so in this case my parent process finished first and you notice that it in the parent process it set my local variable to 10 like we told it to and it increased the global variable by 2 child process it included local variable to 1 and the global variable by 1 you notice that it didn't add 1 and 2 is not 3 so the global variables are really difficult to do in by forking that's the trickiest part about using fork as a parallel processing mechanism creates an old new process this is the old way to do it this is the only way that IU was even aware of when I was in school of going about parallel programming and it becomes really tricky because you have to set up functions that basically call memory locations and things like that so you're if you wanted to actually add global variables together it becomes very very tricky so you kind of have to have some sort of master process that coordinates that and has to do a really good job of it and collecting all that data look at so this is what work example 2 same kind of thing so this is how we get around that and that is in C we're going to create a pointer to our global variable glb2 and then we're going to set that pointer to 0 and that's basically the only thing I've done here is instead of increasing the variable I'm using pointers and again these will be on slides that I send out so hopefully it won't be quite so obtuse here before I do this I mean so here I took my global variable plus 1 in the child process plus 2 in the parent process and you notice that I end up with the same problem it seems like it should work but it doesn't this is the way you actually do it we have this big ugly thing here called a memory map and again these will be on the slides because I'm not expecting to teach you guys C in one day especially if you guys were all C experts we might go through this a little more in depth as it is this is going to be kind of general concept so we're going to probably have plenty of time left at the end of this one because this will kind of go fast for this part so you have to make a big ugly memory map way of making all this happen compile this one then now you see finally that we got finally our global value actually ended up with 3 on one of our things because we added 1 and then we added 2 it's difficult stuff programming is tricky stuff and it's not fun if you ever had to do much of it power the good news is there are better ways yes what's that self referencing program recursive programming yes yes again but you have the same caveats so you might have some master process that they're collecting as you're working off children processes and you have to have a way of keeping track of which one's which and which one's getting data back so it is certainly possible it's still not easy so anyway we just created two processes again you just fork again make 3, 4 do it in a loop you can make 15 you can make as many as you want now openmp it gets a whole lot easier when you start using things like openmp you can see the website that I get this from now the only tricky thing is you also have to tell it you have to tell it that you're using openmp when you're doing this so here we have 3 files that I have back in my directory again and we're going to set these out here alright so this has a program that we're taking it's in on the command we create integers called threads and tid and then we have this command here the one that's listed in purple that says do this parallelized basically we tell it to get the thread number and it says hello world from thread number whatever and only the master thread does compute the whole number of threads so you can see that even there's a lot more comments in here than before but if you actually look at the number of command lines it's much smaller the whole lot easier to deal with and it makes your programs multi-threaded very easily in comparison I created 8 threads here now I want you to notice something here though run this program twice what do you notice about the output it's not the same order it's nondeterministic it's whichever one happens to get there first gets there first so the number of threads, the parent process it's always coming up with the same answer but each one of these threads 0 1 2 3 4 5 6 7 they're all out there all these threads are working but they all eventually get there but their order is just whatever happens to get there first whatever the processor happens to get there first that's the only caveat with these do I have anything else here I'm sure it would be worth trying to look at here if you guys are not into C programming and all that this is going to be very boring I think I'm just going to skip it the next example here was just showing how they can do scheduling I can do it myself and I can say now as soon as the first one is done then we do the third one that kind of thing boring details I think we're done with this part so GCC, the GNU C compiler pretty much standard in for C compilers good question Intel tended to make a slightly more for Intel processors GCC is probably more widely used because the Intel compiler is licensed it's not free and GCC is free and pretty much every system you'll ever be on will have GCC available so we see probably 90% of people using GCC now one thing about OpenMP if you ever do get to use OpenMP I implore you to what look at this last line the set number of threads by default will use every thread available shouldn't worry about that now we didn't for a long time so you have somebody running that asks for processes on a mage and pretty soon they're using the entire thing because because you need to set the correct number of threads okay MPI, this is where it starts getting fun and there are several different versions of MPI include there's an R version of MPI Python will use MPI, correct Adam? if you ask it to so this is from Wikipedia message passing in case you're MPI now notice that the last one was MP OpenMP, we use OpenMPI here they're not the same, they kind of have similar properties but they're very distinct one is just OpenMP is just for using on a single machine OpenMPI is for using on multiple machines or a single machine either one so message passing interface is a standardized portable design by a group of researchers from academia and industry to function on a wide variety of parallel computers the syntax and semantics of a core of library routines, useful to a wide range of users writing portable message passing programs in Fortran 77 or the C-Probe programming language again that's been expanded since then that's what it was written for though several well-tested and efficient implementations of MPI include some that are free and in the public domain these foster the development of a parallel software industry and they're encouraged development of portable and scalable large-scale parallel applications so MPI is really what let supercomputers be supercomputers that's the short version now I'm going to use a contrived example this is from the supercomputing in plain English if you go through the supercomputing in plain English class this will look very familiar to you so this is how he explains it imagine you're on an island in a little hut on the hut to desk and on the desk is a phone, a pencil, a calculator a piece of paper instructions and a piece of paper with numbers here's your instructions and here's your data so what to do have the number in slot 27 and the number in slot 239 so it's an adult slot somewhere slot 71 is equal to the number in slot 118 then call this other number and leave a voicemail containing the number in slot 962 got it? so all you've got is your phone, pencil, calculator instructions and data more things otherwise call your voicemail box and collect the voicemail from this number and put that number in another slot so these are kind of limited instructions you can only do these certain things but you're really kind of isolated from the rest of the world so we've got two kinds of instructions here we have arithmetic, logical but the addition the comparison, that kind of thing we have communication call this number and leave a voicemail or call your voicemail box and collect a voicemail kind of the same that's kind of the analogous situation here if you're on a hut in the island you aren't specifically aware of anyone else MPI applications are they're running they don't know if anybody else is running or not by themselves you know whether anyone else is working on the same problem as you are and you don't know who's at the other end of the phone line all you know is what to do with the voicemails you get and what numbers to send the voicemail to now suppose that Horst I don't know where he comes up with these names like I said I just copied it Horst is on another island I think he's not trying to offend anybody by picking a name that nobody had in this class now suppose that Horst is on another island somewhere in the same kind of hut with the same kind of equipment and suppose he has the same list of instructions as you but a different set of numbers but they didn't phone numbers like you he doesn't know if there's anyone else working on his problem or if he's working on a D in Hudson Islands each of the four has the exact same list of instructions but different lists of numbers now the numbers that you call or each other that is your instructions have you call Horst Bruce and D Horst has him call Bruce D's and you and so on then you might be working together on the same problem does that make sense each person is very localized to what they have they have their own instructions but they're not aware of what the other places are doing but they still might be working on the same problem even though it's unbeknownst to them all this data is private I can't see anybody else's they can't see mine so my numbers are private there's no way for anyone to share what their data is here except by leaving them in voicemails so why do we use voicemail as an example here it's because of the cost of communication long distance calls have two costs you have a connection charge which is the fixed cost of connecting to someone else's even if you're only connected for a second and there's a per minute charge the connection charge is large and you want to make as few calls as possible now as an example here hope this is loud enough I think we'll be alright great ads an ad for an ad okay people this is a phone this is a dollar you still with me that's good about this number and all your long distance calls from home could cost less than a block that's right with 10 10 to 20 all calls up to 20 minutes are only 99 cents talk longer it's just 10 cents for each extra minute no fees no contracts am I right Gucci just about 10 10 to 20 then one then the number bottom line you get up to 20 minutes on this for less than this you got that good it's not a mistake and I think nature's calling my dog okay why how can 10 10 to 20 do this how can they charge basically five cents a minute for all their calls up to 20 minutes it's not directly related to MPI but it's very similar so we're working on analogies here well how can they do that how can they have 20 minute charge for 20 minute call for a dollar that's probably less than their cost to for the lines no guesses what's the average length of a phone call in the United States today take a guess you're close average is two so you're paying a dollar for two minutes that's pretty good rate they're getting on that right the point is that the connection charge is really expensive the per minute charge is pretty low they did some analysis on MPI and found that it's essentially the same as having a $150 connection charge with a one cent per minute after that so you want to you the point being when you're dealing with MPI you want to keep as few connections as possible now obviously the beauty of it is that you can make those connections but that's the overhead cost with this we want to keep those connections as few as possible and as much information as we can while we're on the same line so MPI talking between machines you can have two MPI hosts running on the same machine but they don't know they're running on the same machine all they know is that we have I'm talking to somebody else they're on this hut on an island they don't know who they're talking to so advantages to MPI you have interaction among different programming languages if you were really sadistic enough you can go between R and Fortran that'd be nobody even thought that was funny jeez I'm going home interaction among different machines there's really handy in something like Beocat where we have 150 different machines you can be running your jobs on multiple ones data collection scaling even if you go on to some of the biggest resources in the world they'll all have MPI available and you can talk huge numbers of machines all at once does have disadvantages cost of getting started not only in terms of communication but in terms of writing it it's not a fissure for small amounts of data typically like we see with R code it's it's all stuff that will fit on one process anyway why do you want to even separate it on to multiples coding is complex and again don't confuse it with open MPI open MP did I say the MPI? don't confuse open MPI and open MP and like I said just because they sound a lot of like I even sometimes will stumble over it as I just did I know what's right in my head coming out of the mouth is a different issue so this tells you how to get that and started here there's an MPI example here I called it MPI so here we have some MPI code and it's basically meant just to be an example so we have a declared number of processes rank length of name an ID I have a character string of the processor name I initialize I talk about my communication size and rank and all this kind of stuff and then I say process whatever whatever out of whatever so I have several different things going on here at once this is the code that I use again I'm not going to go into a lot of detail on this to do my open MP and then I call finalize so I'm done so MPI CC dash f open MPI did I do that wrong there's an open MP so you notice I'm all running this on the same host so Athena is the machine I'm logged into so it's telling you on Athena I'm running thread zero again like on the open MP example non-deterministic this one had zero three one three seven one so they're going in different orders starting up several different processes each one's doing its own thing reporting back MPI is if you're going to get programs that scale out MPI is the way to go it's more difficult to write for to begin with but it is the way to go if you're getting to large scale problems and again Dave knows a whole lot more about this than I do so one last thing like I said writing this is hard so my best advice is that if somebody else has already solved the problem for you let them we have all programs installed on Bayo Cat already and you can install your own Nomdi Blast openfoam those are some examples from different from different areas of software that is already written to take advantage of the most efficient way of doing things whether it's open MP or open MPI if they've already written the code all you have to do is shove your own data in there don't you know use the toolkits that are out there I'm very very little there's little new one to the sun if you have to write your own code do it but if you don't use the work of others it'll be a whole lot better for you and for them both and like I said you can also install stuff in your home directory I at this point I'm going to go out to our website and show you how to install something in your own directory because I had to do this for somebody and said you know we should document this there is our videos okay so the resolution on this is not fantastic but you can do this on your own so here's an example from a program I was asked about it's called open bugs first thing I need to do is find the links download here and you'll see that I'm going to log into Beocat notice that I don't use a password because I have keys set up that you may be asked for a password to this point okay we're down here we're ready to download the program we're going to use a program called WGET W-E-T I'm going to paste that so the problem we sometimes run into with links notice that there is ampersand in the line it doesn't like that Linux sees that as a different command so we're going to have to put that in quotation marks W-E-T copy this again put quotes around it and now I'm downloading the program you notice that it's saved as a really strange name file with a whole bunch of extras so I'm going to move that first I'm going to rename it rename it just what it's meant to be which is this last little part here if you're downloading this straight from a web browser it would do that for you W-E-GET is not that smart so now we have a program downloaded called openbugs-3.2.2.tar.gz so we're going to unzip that file so I'm going to use tar extract zip verbose when I see the files that are going on the screen and the file name is openbugs-3.2.2.tar.gz and this is going to take a little while because it's a rather large file plus the end so now I need to go into the openbugs folder and notice up here there's usually some files in there some hints as to what needs to go on we have a readme which is usually like a lot of life information but we have an install so let's look at the install file and it tells you as most programs will that there are make scripts run by configure make and make install and look through here to see if there's anything else really strange that this program does not sing anything however there is something I'm looking for installation names that's not it we're not doing anything clunky as far as compilers here we go notice that it asks for as prefix equals directory for a installation prefix otherwise it's going to try to install system-wide and of course since you don't have privileges it's not going to allow you to do that matter of fact plus I specifically tell it to I don't have any privileges so I'm going to have to install this in my home directory by using this format and we're themed to the file so we're going to run what they said dot slash configure prefix equals here I'm going to put in my home directory which is homes Kyle Hudson and I want to install the root of my home and give it a directory so I'm going to call it open bugs and what this does is it automatically configures your system for our environment they make these rather generic and that way if you're installing on a different unique system on the Linux system whatever it can kind of figure out what options it needs to put into the make files so it'll create the program quickly got done doing that so we're going to make and it starts compiling the program this program actually itself is pretty small the biggest part of what it was expanding was the documentation so it's already done there and now it's compiled everything now this is the important part when I put that prefix in there now when I do a make install you notice that it's copying it to homes Kyle Hudson open bugs rather than trying to put it in the system directories where I don't have permission right now to do that so change to bugs directory without the extension on there take a look and you'll see I now have three folders in there called live and share the one where open bugs sits is called bin if I look inside there you see I have an executable file called open bugs and if I run dot slash open bugs they tell me to tell what to do so here I'm going to actually quit just like they tell me and if I wanted to submit a job let's say I had a program out there let's do Q sub homes mining bugs in open bugs and then I could say path to data file and that would then submit that into the Q of course you can put in your Q sub script all the standard things of how long you wanted to take where you wanted to run that type of thing but that's how you run a program from your home directory in on Baokat thanks so we put that in here after our last intro to Baokat class we talked about doing your own that was something somebody asked about was open bugs and it was a fairly easy example there's a lot of software that we don't have I mean we don't know every area on campus that kind of thing and maintaining it is a pain in the rear so what we do is we have you guys go ahead and install this at your own home directories and that was an example of how to do that so that example is on the website please feel free to review that sometime on your own if you need to install your own stuff in your home directory which is a very common thing to do so what kind of software do you try to install it yourself we get lots of requests for could you install this software and our answer is no but you can do it yourself here's how we point you to the video and we point you to documentation that kind of thing and like I said we've even had people that have had some problems and I spent a couple days last month helping somebody out who couldn't get their software installed it was kind of a tricky thing and we figured it out and I helped them out we had no problem doing that but you know we do need you to be able to pretty much install your own software that kind of thing and keep up on the updates that kind of thing itself giving up with this many updates you might need version 1, you might need version 2 you might need version 1.5 and we can't keep up with that system that's the main reason why we do that in your own home directories any questions?


What is going on guys welcome back to the channel critical over low here since I'm a scream six primarily in this video today We'll be talking about this great news that came out about the box office forecast related to the project mostly but before I get to That I want to dive into some recent comments that came from radio silence also comments They came from Melissa Barrera in this new interview that happened with Den of geek keeping my yeah The IGN fan event that's gonna go on or fan fest is gonna go on tomorrow and Saturday with some other tidbits We're gonna get about the movie there as well, but just to kick it off with the Way that Matt been nearly open decided to describe the pacing of the movie He went on to say that there's no off-ramp It gets you on and then you and then you go and then the movie ends That's something we just love movies that don't give you a chance to take a breath So this isn't something that we haven't heard before because we've heard comments like this in the past I'm very curious to see how this impacts certain events being felt more than others I do think time to breathe is necessary for your audience to care But I'm certain those pockets of breath will be sprinkled throughout Gillette went on to say or talk about how this movie is more like a sister story going into the carpenter sisters and their Roles in this movie. He said it's really a sister story Our favorite scenes in this movie are the two of them talking to each other Honestly, there's a level of depth and richness in the relationship that they are building on screen We keep saying when we're watching we just want to be the carpenter sisters Melissa Barrera expands on the carpenter's relationship in some other comments by saying that there's a little bit of friction between the sisters She's saying because Tara was used to being independent and not having to deal with anyone and Sam's like I'm back And I'm never going to leave you alone Now this interview had other tidbits that you can catch in the description through the link that I share But the stuff about the Carpenter's lines up with some previous speculations Thought that would occur in Scream 6. I Also appreciate Barrera's comments that kind of lend to some Connective tissue that's going on here to the ending of screen five at the end of screen five Sam literally makes it clear That she's going to stick by Tara's side because we know she abandoned her after she found out everything about who she was She got her hands on every drug she could find yada yada yada went through a bad girl phase and then she was gone But now in six we're seeing some of the backlash that comes from this decision Because she's probably being too over protective and Tara of course doesn't like that You're probably coming on a little bit too strong to someone who knows you're just trying to make up for lost time And she doesn't like that so I cannot wait to see how this comes off on screen for those two And of course the relationship is going to have its ups and downs and they'll ultimately have it repaired by the end of the movie But I really do like that There's that connective tissue that's existing still from screen five when it comes to this relationship because we know that they Haven't had the best relationship since Sam left the house so I can't wait to see Melissa and Jenna kick it out of the park or knock it out of the park rather with their chemistry like they did in screen five so Lastly most importantly we need to talk about the box office for screen six now the box office for screen six is projected to do Even more now according to deadline. It's it's higher now according to deadline. This is just for the opening weekend I want to add that it says exclusively paramount and spyglass media scream six hit tracking today With what looks to be a franchise opening record of 37 million state side Now the previous highs opening for a screen movie was screened three back in 2000 wish debut to 34 point seven million state side Now I've already seen people go on about all the leaks are gonna kill this the leaks are gonna kill that keep in mind I know that yes that could definitely play a factor However, we're not talking about the whole entire movie being out there. We're also not talking about something that happened Months in advance. I would say this didn't happen five months for before the release were three weeks away And also at the same time we haven't even heard the first bit of reactions to the movie So positive word of mouth can definitely dictate people ignoring those things and going out and still seeing the movie anyway because at the end of the day if This movie is on track to earn 37 millions domestically 37 million domestically 37 million dollars worth of people are not gonna see that clip in three weeks. That's not how that works Sure a percentage could take a let's say a 10% dip because of the leaks Okay, it's a 10% dip you can easily make that up internationally I'm just saying I don't see that this leak is gonna be that big of a detriment to the box office This late in the game when again, we're not talking about the whole movie being leaked We're talking about a snippet of the movie and it's a snippet that definitely is not going to be seen by 37 million dollars worth of Individuals, that's just not going to happen in the span of three weeks. I Also do love how if this happens It's gonna be bitter sweets in a lot of ways because there are so many nasty individuals who have made it a made it a Point to just trash radio silence trash, Melissa Barrera trash Anyone involved with this project because they think that they do not stand with Neve Campbell Wouldn't it be so bitter sweet for your very first entry in the series to not have Sydney Prescott's presence end up being The highest grossing domestically the highest grossing opening weekend Domestically out of the six movies that we've gotten and again. It's the first one without her That would just to me be bitter sweet because again Regardless if she's here or not There was no reason to act that way towards anyone involved with this project There was no need no need to hate on Melissa There was no need to send any type of nasty messages to radio silence There was no need for any of that it was just foolish behavior and this foolish behavior is not paying out in the long run according to what the tracking is Looking like for the box office because this movie looks like it's going to be a hit financially. So Again, I understand there is that snippet out there And I understand that there's that thought that okay This could be detrimental to what they actually bring in domestically during the opening weekend and it could however This is saying it's tracking 37 million worldwide and I want to remind people we're not talking about a Marvel movie or anything bigger than what it actually is. We're just talking about horror horror Honestly, I love horror. It's my favorite genre It's not looked at in the same vein as a lot of these other genres Now you have multiple eyes on that on other genres compared to horror I think if this was another genre and it had a snippet leak like this I would then believe yes, it could be pretty detrimental But not for this movie and not when is this close to the release? I think 37 million dollars worth of people are not gonna be coming across that snippet in three weeks It's not gonna happen. You won't have to worry about it really being that big of a detriment Now, of course if I'm wrong then I'm just wrong. However, even if there's a dip due to the snippet leak The movie still gonna be profitable. There's no way this movie will not be profitable I love how the article also notates Jenna Ortega's growing star power as a clear Clear contribution to why this movie is on track to do what it's about to do in its opening weekend I can see it even exceeding the expectations despite the snippet leaking I just love how this is all again feeling so bittersweet because this will be your first project without Sydney Prescott I'm very happy that the character is gonna get to be somewhere safe away from all of this drama that I know the character has been Working towards she deserves it. She does not need to be in countless movie sprees with this. She's she's lived and been there She's done that she she needs her peace. She deserves her peace If she can come back for scream seven that will be tremendous But I cannot wait to see the very first entry without her be the highest grossing domestically during this opening weekend But let me know what you think about all this down in comment section below if you haven't already course Make sure you subscribe turn on post notification. You never miss a video in the description I'll have links on my social media accounts on my Facebook Twitter and Instagram You can mess with me there Of course, let me know there's any movies news reviews like me to cover in the future and with all that in mind guys I will see you in the next video


Well, today we had the opportunity to exercise all of our garrison functions here at Fort Rucker. So that included our Department of Public Safety, our Department of Public Works, all of our units, and a lot of the services that we provide to service members and family members on post. Services like this are really important. We are often really consumed with our day-to-day mission. That's the most important thing we do on Fort Rucker is train aviators. So everything that the garrison does really is focused on supporting that mission. So we don't often get a chance to do some of these things that are these very rare but potentially catastrophic events like an active shooter or hurricane or some sort of disaster. We really need to be prepared to react to one of those situations as well. So exercises like this give us an opportunity to sort of step back and work out some of those things that we need to do in case of an emergency. So really this gets down to emergency preparedness for the garrison. Local organizations that we work with, not only increases our capability, but more importantly it ties us together as a community. Fort Rucker doesn't exist on an island. We exist here in close cooperation with our local communities. We couldn't do what we do without them. And frankly those local communities couldn't do what they do without Fort Rucker. Many many of our family members and service members live in the local communities. We have mutual aid agreements between our law enforcement. In fact just last week we sent one of our fire trucks to respond to a house fire in Daleville. So our communities are inextricably linked and we really depend on each other. The disaster exercise was a great demonstration of that. So we were demonstrating an incident that we were responding to on post. But we really relied on our local community to help us respond to that. Our first responders were extremely professional in how they contained the immediate incident. But we had sheriffs and sheriff's deputies from Dale County responding in. We notified all our local communities and when we had our simulated casualties all of our local communities participated by sending ambulances. Local hospitals participated to take our casualties. And so really this exercise was a huge cooperation for the whole community and the whole group. So it was really good. I appreciate the effort that everyone gave. This was something that our commanding general, General Francis decided to take way up from a normal exercise and gain the participation of all of the tenant units and installations on post. So this is really a team effort across all of Fort Rucker including like the post office and our local Dodia School. Everybody participated. So not only did it make the exercise more realistic, but it allowed everybody to see how we all fit together and how it's really one community. So our communities helped. Our local partners, we even had national guard units come down to help participate. CG's top three priorities were to protect our people, protect our mission and protect the local community. So as we talk about the training objectives that we were getting after for this exercise, really we knocked out all three. So the immediate response to the incident was protecting our people and our people really means our soldiers, our family members, all of our civilians on post. So we had our law enforcement respond immediately and that protected our people, our people on post. His second priority was protecting our mission. So once we contained the incident, we were doing all of the analysis. How do we protect that mission of training aviators? Does the outside stage fields, do we need to curtail the flight mission? Do we have to clear out our classrooms or lock down our classrooms? All of those decisions were part of the exercise as well. So in the immediacy of the exercise, we protected our mission by making sure that we didn't impact that. But in the long run as well, by building a more resilient garrison, we're also protecting the mission in the long run so that we know that if there isn't a natural or manmade hazard here, we know that we can protect our mission and continue to train aviators. Finally on protecting the community, the exercise really showed how what we do here on Fort Rucker affects the local community and vice versa and that by handling an incident like we did today, we know we're protecting our local community.  There's plenty of people that live in the local community that work on Fort Rucker as well. So there's lots of connections and lots of ties between Fort Rucker and the community. So by working these exercises and practicing responding to incidents, we're certainly also protecting the local community as well. So really by doing this one exercise, we were able to get at all of the CG's priorities for that. So it was very effective.


Coming up on D T N S why robots might increase jobs. Whatever shall we use Android apps on Windows 11 for and three things three things Sony should do to beat Microsoft in gaming. D T N S starts now. This is the Daily Tech News for Wednesday, January 26 2022 in Los Angeles. I'm Tom Merritt in Salt Lake City. I'm Scott Johnson. And I'm Roger Chang. The show is pretty Sir Lane has the day off today, but there is a longer version of this show. And if you get it called Good Day Internet, you get a nice long discussion from Scott about what he does and does not like about NFTs. Mostly what he does not like. You can get that at patreon.com slash D T N S. Oh, by the way, huge thanks to top patrons of D T N S, including Logan Larson, Mike Aitkins and Norm Fizekis. They get that right? Fizekis. Fizekis. I knew I was going to mess that one up. Norm, you're awesome. Send all your emails to me. You guys are all great. Thank you for being supporters. Let's start with a few tech things you should know. The EU General Court overturned a 2009 antitrust decision against Intel. Heck, I was a buzz out loud when that decision was made. This decision involved rebates that Intel gave to PC makers to allegedly squeeze AMD out, resulting in a record 1.06 billion euro fine. The court found that the European Commission failed to show quote to the requisite legal standard that the rebates were an anti competitive risk. This ruling can still be appealed to the European Court of Justice and probably will be. Samsung officially announced its next galaxy unpacked event, and they say it will happen on February 9 to 10 a.m. Eastern time. See what actually happens this time. This invite will have a big letter S with the phrase the epic standard. So do you think it's a new Samsung Galaxy S 22 that might be announced? Well, yes, I think we all think that's probably what's going to happen. In fact, Samsung president TM Rose said Samsung will announce quote the most noteworthy s series device we've ever created note worthy a like galaxy note worthy when Twitter made it possible to use NFTs as profile picks. You may have scoffed and said that'll never happen on Reddit. I don't know why you would have said that, but I'm guessing maybe at least one of you did. So if you did, we regret to inform you you were wrong. TechCrunch reports that Reddit is testing a feature to let users set any NFT as their profile picture. The test is in its earliest stages. It has not been made available to the public. Developer Nima og found references in Reddit's web app to a test collection on OpenSea valve announced that the steam deck handheld console will go on sale Friday, February 25 to customers who have made reservations. If you're like me, your second in line on that whole deal, starting at 10 a.m. February 25 valve will send out emails in the same order that reservations were made. They actually stated that when you signed up. Once you get an email, you'll have three days to place your order shipping of those first batches of orders will begin February 28. So pretty quickly after that new batches of emails will go out in order weekly after that. So even if you're like me and you got really late, they'll eventually get to you. If you're late to the game, you can still go and do what I did months ago, which is register to reserve one basically with a $5 deposit. Those shipping is estimated for quarter two at that point. Well, Q2 though, that's not as bad as I would have thought maybe. So yeah, too bad. Yeah. Apple is number one in China when it comes to smartphones. Analysts at counterpoint estimate the Q4 smartphone sales in China declined 9% on the year. Overall 2021 sales in China down 2% year over year. In the last quarter of 2021, Apple grew its sales 32% on the year bucking the trend to become number one in China in market share with 23% first time since Q4 2015 that they have led the market. Fastest growing smart fan bro smartphone brand in China is real me with sales up 83% in Q4 and 379% on the year on all of 2021. All right, let's talk a little bit more about Microsoft. We mentioned yesterday that they had their earnings report. Cloud Office and Windows led to a strong quarterly earnings report for Microsoft Tuesday overall revenue up 20%. Microsoft even surprised people with some hardware revenue. Surface revenue rose 8%. CEO Sachin Adela's message was the time spent on Windows PCs is rising. So don't think of Windows as in decline. Think of it as a fertile ground for us to make lots of money on. Although Azure grew by 46%. So that's still the biggest of the big revenue generators. Another notable contributor, though, was LinkedIn. LinkedIn grew 37% in revenue. So there you go, you got your cloud with Azure, you got your community with LinkedIn. And remember, Sachin Adela was saying about Activision Blizzard cloud community and content. So let's talk about the content part. Overall gaming revenue was up 8% for Microsoft. Keep in mind that next quarter will become the first one with the new dedicated Microsoft gaming division in the earnings report. That's the one that Phil Spencer is now CEO of. So reporting numbers are going to move around a little bit more and reflect more of Microsoft's overall gaming business. Not every gaming studio is included in these Xbox numbers that we got this time. CEO Sachin Adela said that 20 million people had played Halo Infinite. 18 million people had played Forza Horizon 5, really trying to play up usage, which is important if you're selling a cloud gaming service subscription. And Bloomberg reports that at least the next three Call of Duty games will be on both Microsoft and Sony platforms, even if Microsoft acquires Activision Blizzard in the expected fiscal next year timeframe. But of course, that's not too shocking is the earliest that Activision acquisition would close would be summer. And then the latest would be next summer. So that that seems to time out, right? Okay, after that, anything's on the table. And all of this, all of this, well, maybe not the windows stuff so much, but all most of this is bad news for Sony. Is Sony's gaming business in trouble? On the conversation dot com University of Cambridge fellow in strategy Hamza Moudassir wrote up three ways that he thinks Sony can avoid getting left behind by Microsoft. So Scott, I thought we'd kick these around. I'm going to lay them out for you. And you let us know what you think of them as we go in order. You ready? Awesome. Yep, totally ready. Alright, way number one. Sony should buy Google Stadia. No, I mean, Google has to want to sell it, obviously. But Moudassir argues that Stadia's biggest problem is a lack of content and an overly complex business model. Sony could fix that by putting the rather deep PlayStation now library on Stadia machinery. And even if they had to raise the price of 999 a little bit, it'd still be a much simpler deal than what you have with Google Stadia right now. Yeah, it's also plausible, at least in my head that we finally see some sort of white label offer here. And it doesn't necessarily have to Google Stadia has already been been doing white labels. So yeah, they've been doing it already. So why in this case, I don't know why this would be such a big deal. They don't even have to be that public about it. I mean, they kind of to be somewhat public, but they don't have to advertise on it. They could just basically say our new reworked PlayStation now and or PlayStation plus whatever they're going to call it is backended by Stadia and that technology or Google's our partner, however you want to say it, and get there just as quickly outside of having to buy them. Now I think buying them buying that division, assuming it was for sale, is probably the best long term solution because I really think Sony needs to control their own back end. They need to have or at least as much control over their back end as they can handle. And this just means they're leasing somebody else's stuff again, which is kind of what they do for their system. So, so yeah, this is this seems like the least possible solution. But it wouldn't hurt because they're kind of in a they're in a real squeeze in this particular area of their gaming anyway. So yeah, they got to do something there. I here's the here's the fly in that ointment. Microsoft Azure and Sony have a deal in the works. Yeah. And so I don't think Sony is going to go use a white label version of Stadia, which is I guess why Moodis here saying just buy it just buy it from them. You could still use Azure as its back end and then run it.  They're not going to solve over, you know, on our feet and they don't certainly seem to be all that in front of it. So maybe they're ready to take a buyer and let it go. I don't know really hard to say. All right. Way number two. And again, so somebody GPEG 84 is like, isn't Sony already beating Microsoft for now? But this is like, here's what they have to do to make sure they stay ahead. Way number two, go cross platform. Instead of using game exclusivity to sell consoles, follow Microsoft's example and release games everywhere at once. Microsoft's been doing a lot of it's on Xbox and PC day and date. You could do this through PlayStation now put PlayStation now on every platform, smart TVs, phones, set up boxes, computers, heck, maybe even on the Xbox. Just get PlayStation now out there and don't try to use it as a way to sell consoles. I completely agree. This is maybe my favorite suggestion of all of these. I think they're going to end up doing this. So this is actually a prediction. I think there's that is being worked on and then it will come to fruition. But to add on top of that real quick, the other thing I think they need to do is not just what you said, but also put it on steam day and date. Microsoft's doing that also. You get, you know, Halo Infinite Day one, Forza Horizon Day one, get these games day one in the hands of gamers in all of the places that they play them, except maybe your chief rivals console, but everywhere else, basically what Microsoft's doing, you'd go a long way than then then just saying, well, hey, we're going to eventually put God of war on there, but it'll take us four years. That's been great. It's reviewing well. It's on steam now and people love it. But it took you four years to do it. Make that state stuff day and date or at least closer to day and date. That will go a long way to help shore up stuff for them. I'm looking forward. I'm looking forward to that day that it will never come. But I'm looking forward to the day that they announce Xbox Game Pass for PlayStation and PlayStation now for Xbox. Yeah, I mean, I wouldn't have a problem with your weird future. I don't think it's going to happen either, but maybe maybe way number three, lead the metaverse. Sony's PSF PSVR just lost its lead to the quest two last year was that it was the most successful VR headset until the quest two came along. PSVR two is coming, but it's still tethered to a console, which is kind of a non starter for a lot of people. And one of the reasons that it lost out to the quest two. So he's saying it needs to leap farther forward to stay even or even get ahead of Microsoft Meta and Apple. Yeah, I agree with this one. Microsoft has no head start in this space. They may in terms of back end. I mean, they have HoloLens, but yeah, sure. But that first HoloLens have yet to realize that. So the upcoming two who knows like there's a lot to say about the future of them. But right now they don't have any kind of like sticking the mud on this. And everyone else seems to Sony has a huge leg up in this case. I kind of thought the PlayStation VR two would end up really pushing things maybe a little bit more be an untethered device or a tethered and untethered device you could take with you for certain kinds of experiences. And I don't know exactly what I expected, but I expected more than what they showed. So they do have an opportunity here to be a bigger leader in this space. And Microsoft is late to the game on that. Yeah. All right. We've already struck off NFTs and Metaverse on your bingo card. What about virtual machines? Scott? Oh, well, let's talk about that. Microsoft will launch its public preview of Android apps on Windows 11 next month. We've been hearing about this for a little bit. Microsoft insiders first got to test the Android app Windows 11 system back in October of last year. I'll let you install a limited number of Android apps listed in the Microsoft store and served by the Amazon app store not by Google Play. It's an important distinction. This is thanks to the Windows subsystem for Android. It runs a version of the Android open source project in Hyper-V virtual machine. The subsystem can map runtime and APIs of the Android apps to the Windows graphics layer, memory buffers, input modes, and devices. That's really important. Subsystem supports AMD, Intel, and Qualcomm chips. Arm only apps can run on Intel and AMD chips through the subsystem thanks to some help from Intel. Android apps can run right beside Windows apps, and they're integrated into the alt tab, the task for you. You can pin them to your start board, all that stuff. I think that's all really important. Notifications show up in Action Center and clipboard contents can be shared with Windows apps. Yeah, that's cool. I don't know what you'd need. I don't know what you want to load in there, Tom. What what Android app you're like, Oh, man, I can't hear you. Yeah, this this is the thing, right? Because Android apps in Chrome OS got me really excited until I found that I didn't really need any of them. I I did install the Microsoft Office Android apps on Chrome OS, which is kind of fun. And then I don't think I've ever really used them. Maybe once or twice. I installed a couple of games on Chrome OS. I feel like there are going to be people in our audience and please email us feedback at daily tech news show dot com say no, this will solve a problem for me. There's this one app that I want to have access to on Windows 11, but I only have access on Android. Granted, this is a limited selection. It's not even the entire 600,000 Amazon app store apps. It's a subset of those. It was only 50 back in October. I think it's more than that now, but you're not going to get everyone. But I know there are some specific cases where this is going to be helpful. I just don't know how many of those cases there are. Well, I found, okay, so there's a good comparison that's already sort of happening over on the Apple side of things. And I just want to mention it briefly because I had a very similar experience when the M1 was launched, the M1 chips in the desktops was launched. They said, Hey, by the way, all your native iOS and iPad apps, they'll they'll just come over here and you can play them on your Mac or use them on your Mac in a very similar way that they're talking about here. We're now talking about a unified arm architecture. So go for it. Let your freak flag fly. So I did. And I tried a few things and then immediately quit doing it because I was like, I really there's nothing here that I either don't already have a desktop version of that's already syncing with my mobile version of or maybe there's a game on Apple Arcade where you're like, Well, it's cross saved. So this is a nice place to kind of mess with it here and then go check on my Star Trek guys on my phone later and it all integrates. And I suppose there's an argument for that. But for the most part, the novelty of it kind of wore off in the first day. Yeah, I think maybe this is a bigger deal for a developer than it is for an end user, right? So a developer who's got an Android app and has been wanting to port it to Windows can now push their audience of like, Hey, with that new Windows 11 subsystem, we're we're in the Amazon app store, which means we're in the Windows Store, Microsoft Store. So go check it out. You can use us now. Yeah, and there's a there's a GitHub up to kind of help developers do this. Try they're trying to make it super easy. Certainly how Apple pitched it was like, Hey, iOS developers, now you can make your apps available on Mac OS without having to do a whole lot of work. So maybe that's that's the bigger deal here. I will say the one plus here is that Microsoft the integration of the Android apps in the API of Windows itself. So you've got all the functionality you're used to on the OS level. That goes a long way, I think to making that more interesting on the Apple side. It's like, Well, this thing's locked at this tiny resolution the size of your phone up in the corner. They didn't build it to go full screen or whatever. It's a lot more hit and miss there. So maybe that will help some that integration. Folks, what do you want to hear us talk about on the show? I know you like these topics, but we like to find out what topics you're into before we make the show. So one way to let us know is our subreddit. Submit your stories and vote on them at daily tech news show dot reddit.com. Boston Dynamics announced its first commercial customer for its stretch robots. Those are the warehouse robots that can do some carrying things around loading and unloading DHL, the shipper, the logistics company, I should say, is going to spend $15 million to bring a fleet of Boston Dynamics robots to its North American facilities over the next three years. The stretch robots will start by unloading trucks, you know, like we all do just Bob. We're just going to have you unload stretch. We're just going to have you unload the trucks to start over the course of the rollout. We might get you to help in some package handling. If everything goes well, DHL has a hard time finding staff right now. So this isn't even immediately going to displace workers because they can't hire enough people. But that does bring up the wider question of automations effect on jobs. The economist has an overview of what we know so far.  When the lockdowns came in 2020, America's National Bureau of Economic Research published a paper mid 2020 anticipating the acceleration of job automation because of lockdowns because people being sick because people not being able to show up for work. And the IMF, the International Monetary Fund, published a paper concerned about whether such automation would cause jobs not to come back because, hey, robots don't get sick. Companies might like that and just say, you know we're going to automate these jobs. Don't bother coming back to work. The data so far shows that that has not been the case. Instead, unemployment rates have fallen in developed countries. And the economist estimates that there are a record 30 million vacancies across OECD countries, which is mostly Europe with a few other countries in South America, Australia and elsewhere. Opinions about automation therefore are evolving. A group of French and British economists believe that the direct effect of automation may be to increase employment at the firm level, not reduce it. The logic goes that automation reduces costs, which makes a firm more profitable. Instead of just hoarding those profits, as some people assumes happens, most companies invest profits in expansion because they want to grow because they want to get bigger. That expansion can then lead to increased hiring. So if the robots make you more profitable, you might expand, you might hire more people, move into new products or services. Those products or services may be labor intensive and you couldn't afford to do it before. But now that you've got the robots doing this other stuff, you can take that salary and do these more labor intensive efforts. Research by economists from Yale show that from 1978 to 2017, Japanese employment rose 2.2 percent for every one robot that was added per 1000 workers. An MIT study found a similar effect in Finland. In case you're like, yeah, but that's Japan. More studies like this are on the way from Stanford and elsewhere. Now keep in mind. Added jobs aren't always good jobs. The studies don't evaluate wages and they don't evaluate job quality. More work needs to be done at the macro scale to see if companies that automate, even if they add jobs themselves, drive competitors out, reducing jobs overall in the marketplace. Maybe that's happening. Need to see if that's the case. But if your reaction to robots in the workplace is to think they just simply took a job, it's not that simple.  And I swear it was with you that this first got discussed. I could be wrong. And it was years and years and years ago. But the concept that the accounting world, financial services world were freaking out when Lotus 123 happened and started to get traction. They all just thought, well, this is the end of our jobs. This is the end of everything accounting. I can't believe I have a degree in accounting. I can't believe I've wasted my life sort of fear mongering that was going on back then. And it had like, approximately the reverse action. It ended up creating so many more jobs and so much more capacity for more services with these financial services companies and individual accountants that they could take on so much more. It wasn't them busily using a pencil and a ledger and trying to get it all done and in older ways. And I don't want to oversimplify that, but it just didn't end up being the problem everybody thought it was going to be. Now that's different than this. There's lots of reasons to say, well, this isn't the same as that. We're also in a different era now. Maybe this changes overall or over time. But I don't know why I just have a good feeling about it. Every time you put a robot in there to do something, it's usually because it's either not very efficient to have people do it or it's dangerous to have people do it, or you'd rather be putting that that that workforce somewhere else, but they're still there. Like I'm optimistic about it. Plus these robots are cool. They look like they could lift up heavy stuff and that's rad. Yeah, I think what you have to remember is the the idea that robots are going to take our jobs is not very helpful. In fact, you could be harming the economy if you resisted automation entirely, because I see some people resisting automation entirely that that may be bad net. What you need to focus on is, well, but what are the bad things? Are the new jobs going to be low wage? Okay, then what do we do about that? Or I mean, I think what what is very clearly to me, something to focus on is, yes, the firm may eliminate all the loading dock jobs and add a bunch of jobs in the call center. But the folks at the loading dock are now out of a job, and they may not necessarily take a job, be offered a job or want a job over in the call center. So what do you do in that transition? What do you do with the people whose jobs definitely were taken by the robot? How do you make sure that they can find another job that is suitable satisfactory gives them a good quality of life? I think I think focus on that, like how do you how do you deal with the transition? Don't try to just resist automation? At least that's where my head's at anyway. Well, speaking of logistics and moving stuff around, let's talk about Elroy Air. They have announced its pre production autonomous VTOL aircraft, the Chaperral Chaperral Chaperral. VTOL stands for vertical takeoff and landing, by the way. And Chaperral can hover like a helicopter using eight vertical fans and fly forward with four swiveling propellers. Kind of sounds like a great big drone looking thing. It is. Basically it is. It has a hybrid electrical or electric powertrain with the range of 300 miles and can carry 300 to 500 pounds, which is quite a bit. A cargo pod underneath the carriage can be autonomously hooked up and dropped right off wherever it needs to go. Last time we heard from Elroy was with a prototype in 2019. So it's been a bit. This time Elroy says it has agreements to supply 500 aircraft to commercial defense and humanitarian customers. The U.S. Air Force has funded Elroy and A Y R Logistics, who works with the food, excuse me, world food program. They've ordered a hundred of them themselves. Mesa Airlines has also expressed interest for parcel and medical deliveries. Tonomous VTOL aircraft have the potential to bring fast delivery to remote areas that may be a lot longer to get there by truck. They don't need runways. All kinds of cool uses for this tech. Very cool. Yeah, vertical takeoff and landing is expected to be one of those areas of technology to watch that somebody's going to make this take off vertically and become a useful and productive business, whether Elroy air is that one or not. Your guess is as good as mine. But here we go. Creeping closely closer and closer to actual business and unlike autonomous cars that are robo taxis in particular VTOL. I guess it's actually similar to autonomous cars in that robo taxis. That's a hard one getting people around. Cargo autonomous trucks probably going to happen first and it is already happening in tests. So I kind of look at this and say well, Elroy seems to have the right idea, which is air taxis moving people around at VTOLs. That's tough. A lot of regulations around that. A lot of safety you got to deal with. Whereas just moving cargo where there's no people on board. Probably a good deal. Although the question is, can the cost of operations be below what the areas that can benefit it will pay for it. Right. There's there the one application here that's that's obviously brought up in our conversation that I really like the most. I think is the humanitarian one, a notoriously difficult in some areas to get food and resources where it needs to be when it needs to be without a big long runway or without, you know, safety issues that can endanger lives, that sort of thing. The idea of sending one of these in there with 500 pounds of food and having it know where to land, how to land, how to avoid a problem because it's autonomous in some way or in all the ways it needs to be is very cool. Seems like a really great push forward in that area. The best usage of this is high value gear, right? Whether it's medicines or electronics.  And so what they would, I mean, the military is great for this is targeting high value shipments to where it needs to go because those are, it's just like Tesla with, with, you know, upper end, you know, upper upper range automobiles, you target the people that are willing to pay because they have expensive stuff that needs to be there today. Zip line is a great example of this with small amounts, right? We're talking about a couple pounds. They've made a whole business starting in Irwanda at delivering urgent medical supplies at places that would take sometimes weeks for a truck to get and they can just fly their drones over the hill or the mountain and get it there. And that's what Elway is or yeah, yeah, that's what Elway is doing here is saying like we can do that except with 500 pounds instead of just five pounds. So there yeah, there's something there. All right, let's check out the mailbag Joshua says, I really loved here in ONJJ stone again. I agree that AK isn't nearly as big of an improvement for TVs as 4k was over 1080p, but TVs aren't the only kinds of displays. My next big hobby purchase is an 8k resin printer, a printer. It uses an LCD screen to harden liquid photopolymer in a vat just above the display. The higher your displays pixel count, the more detail you'll see in your completed print. Some printers have gotten all the way up to 1152 PPI. Well, 4k to 8k isn't particularly noticeable in two dimensions. 8k makes a huge difference when you're creating something in three. It's the difference between wow, that model has a lot of detail to is that thing alive? I'm not entirely clear on the production overlap between the kinds of 8k displays used for TVs and the UV admitting ones in 3D printing, but I'm hopeful more people buying 8k TVs would make my hobby a bit cheaper as well. What a great example of that, Joshua. Thank you. Holding a torso of Batman here doesn't have his head currently, I apologize, but this was printed by our good friend, Brian. I bet he has a resin printer at home. It's not nearly this resolution, but I can tell you even at the kind of entry level resolution of resin these days, it's incredible what they're doing with resin 3D printing. So 100% with him. I think that prototyping and doing stuff for effect shops and that sort of stuff is about to take off huge in that space. And while they may not be exactly the same displaying or assembling, I think he's onto something here. I think that's really cool. Also on Tuesday, we got an email from James who said DTNS was extra informative and extra entertaining. Thanks to Owen JJ Stone. His passion was amazing and he gave Tom a reason to explain things in more detail. Most of all, he made me smile and laugh many times. Please get him back on the show again soon. Thanks, James. We forwarded this stuff to Owen, put a smile on his face. We love having Owen on. It's a blast. So yes, we will try to get him back as soon as possible. Also, thanks to our brand new bosses, Brandon Boyer and Michael Komachi, who just started backing us on Patreon. Thank you both. We need you. That's what we're doing the free HBO week. If you've noticed, you got extra stuff in your free Acast feed this week. It's because we're letting everybody get all the stuff that the patrons get. So just for this week, we're doing that. And if you like that, you can go. You don't have to get all of it. You can choose what of that stuff we're giving you this week. You get at patreon.com slash D T N S. Thank you, Michael and Brandon for being people who did just that. And before we get out of here, thank you, Scott Johnson. What's going on these days? Oh, always a pleasure to be here. I cannot say enough of how much I'm enjoying this new show I'm producing now called Play Retro. I do it on Mondays with my friend Brian Dunaway. And it turns out we are a couple of guys who grew up with retro video games when they weren't retro and they were new arcades and stuff at home and whatever, whatever you think of retro, we were there for it. And so reliving all of that in a modern way and learning about new ways of playing this stuff, talking about cool retro builds of arcade machines and main boxes and the retro pies and all the sort of stuff has become a bit of an obsession over the last four weeks. So if that sounds interesting to you at all, do check out our new show. It's called Play Retro. You can find it anywhere you get your podcast. Just search for play retro. Andy, go do it. Go do it. We're live Monday through Friday, 4 30 Eastern 21 38 UTC. Find out more at DailyTechNewShow.com slash live Justin Robert Young on the show tomorrow and Len Peralta's in on Thursdays these days to do the illustrating. We'll all talk to you there. This show is part of the Frog Pants Network. Get more at frogpants.com. Time and fun as you have enjoyed this program.


This survey course covering concepts and computational thinking in computer science is well suited to students that are interested in technology and want to get an overview of how computer science is used in different fields. In this hands-on class with multiple projects, students will learn about the principles of computer science by exploring topics like how algorithms shape our world, artificial intelligence, cybersecurity, programming languages like Python, HTML, CSS, Scratch, JavaScript, and mathematical modeling. Students will meet mentors, leaders, and historic figures in a wide variety of STEM careers and discuss some of the obstacles they faced. The class is fun and challenging. Students will leave excited about future STEM coursework and possibilities for careers in STEM fields.


The government is not your friend. When you are applying for Social Security Disability Benefits, the government is not there to do the work for you. I'm here to share with you three secrets that's going to help you get the disability benefits you're entitled to. My name's Tony Vier. I'm an attorney with 22 years experience handling cases just like yours. I've handled cases from the initial application all the way through the court hearing. And there are three big things that can be used to deny your case that I'm going to share with you. Number one, make sure you completely fill out your application. It's going to be very important that you comply with the process. I know it's arduous. I know there's a lot going on, but Social Security has a form that they need you to fill out completely. It's also important when they send you out forms or when they ask you to go see their doctors that you comply to the best of your ability. Because if you don't, guess what? They use that as a reason to deny you. Number two, if you are denied, it's important that you file an appeal. You have the right to request a reconsideration of that denial.  You don't have to take this sitting down. If you are denied, you have the right to ask them to review that decision and fix it. The third secret, it is important that you correctly articulate what is wrong with you. You don't just want to let them know what your diagnosis is. This is the federal government. They have codes. They have forms. They have red tape. The key is you need to make sure that in their terminology, you let them know not just what your condition is, but how it limits your ability to work. Because what you're trying to prove isn't just that you have a condition. You're trying to prove that you cannot hold down a full-time job. I know this is a lot of information. I know that this can be difficult to do. If you need help with a disability claim or if you know someone that does, please reach out to us. We are here to help. If you know someone that you think would benefit from watching this video or from speaking with us, please share it. Thank you.