 Computers keep changing the world, but their power and safety is limited by their rigid design. The T2-Tile project works for bigger and safer computing using living systems principles. Follow our progress here on T Tuesday Updates. This is the 36th T Tuesday Update. Let's get into it. There are four more weeks to the Episode 40 deadline when we're going to have a ring lotus, a hundred and thirty-three of these T2-Tiles mounted up on a wall or on a frame or something, ready to be benchmarked to find out the first world record average event rate of an indefinitely scalable computer. We'll see what happens. We're going to get there. Last week, we were focusing on the physical frames, how to hold the tiles together so that we can mount them as a group and slap them around as a group. If you do more work on that, that's going to have to wait for next week or a little bit beyond. This past week, what it's been about is MFM-T2. Taking what had been the code base for the simulator to demonstrate how the T2-Tiles might work, well, how any of these tiles might work, and instead fork off a copy of it that's not going to be the simulator, but it's going to be the actual engine running events on the T2-Tiles as part of an indefinitely scalable computer. Today, I came across a sort of a fun story about how programming can work and how if you take non-determinism into consideration, or not even if you take space into consideration and locality, and all these things that we've been talking about being good, that on the one hand it seems to make programming much more difficult, but here's a case where I just observed where it actually made something work better kind of for free, and that's the goal, that if we respect natural physical space, if we try to align our computations with the real, then we'll start getting payoffs that we didn't even expect, and that's the flip side to robustness, and instead of thinking that all the robustness has to be engineered in, if instead we make it so that we follow the contours of the land, we have our computation follow the physical space that it is embedded within, we'll start to get these benefits automatically. And in the coming week, what I want to do is get the MFM-T2 code base communicating with copies of itself on adjacent tiles. That doesn't mean it's doing the full cash exchange protocol, there's a lot more work to that, but right now, the way the underlying packet exchange code is written, only one user level program can be talking packets at a time, and at the moment that's the common data manager, so the MFM-T2 can't actually get in to send packets. So what has to happen in the coming week is that the underlying kernel module will be rewritten, so that it accepts multiple user clients from user space at once, and they can inject packets in their own order, and it'll all get sorted out and sent, and then in particular, somehow they'll get, the DMUX, they'll get sent on the receiving tile, they'll get sent to the common data manager, or MFM-T2 or something, all of that's going to happen this week. Okay, let's get to the news for Zedling67, who wants to see us, let's do the news. Okay, the top stories for this T-Tuesday update, the board assembly is complete. This goes back a long way. At first, we got a shipment of 60 boards, this is the picture of it, we pulled boards out of this to make our Lotus that we tested. Following that, there was another 120 that were available, we went and got them, plus one that had had a problem, got reworked and so forth. So this past week, then we got the last 19 units, so that's 60 plus 121 plus 19, that's full 200 stuffed boards that we don't actually have quite enough Beaglebone greens and LCDs to assemble these all into tiles. We'll either get some more of both of those or we'll just build however many that we've got for now and save the rest of the boards for repairs and replacements and so forth, we don't know. Oops, but there it is, the last 19 boards have been picked up and, I don't know, yeah, there. We also got back the spare parts that we had sent over that were more than, they didn't need to use quite all that we gave them. So that is the end of, I mean, that's a real landmark, that's something that's a very long thing going. I mean, you know, there was a question about whether we were going to make these in Albuquerque at all or whether we were going to go to the Internet and do some sort of thing. I'm really happy I picked ETS and worked with Robert Evans and the folks that we've met. It's been great and it certainly helped my education to understand how all this stuff works as well as to understand the business relationships that get these things done. I mean, it's all just a matter of this guy's got a machine who can do this thing at certain speed, at certain price that nobody else could do if you didn't have that machine and so on. And I didn't have the machine, Robert Evans did. So that's great. In other news, we still have more parts that we need. In particular, we have the intertile connectors. We have the intertile connectors that, and they're all plugged in at the moment, that are doing the DPs, the data plus power that are used within a ring, but we have a different kind of circuit board that's going to get assembled into a similar little board, a similar little connector called the DO, the data only, that will be used between the power zones so that they can still talk to each other, but they won't actually share power. So this is a saga that's been going on for quite some time that I haven't really said much about, but I need to talk about it today. So I put in an order with PCBWay to make 165 of the data only connectors, plus finishing up the rest of the DPs that there wasn't enough stock for to do it to begin with. That order shipped a week ago Sunday, June 2nd. It was supposed to arrive on Tuesday. It was supposed to arrive a week ago, this Tuesday, T Tuesday update. That didn't happen. In fact, what happened was it got to Shenzhen. It really didn't get anywhere and there was a clearance event. Something stopped it. I haven't seen a clearance event before, didn't know what it was. Googling was suggesting that it was probably you needed to pay some tax or there was something going on. For the clearance process, additional details required for clearance. So I thought, did I have to get involved in this and tell them what it was for? And some people were saying you'd have to give up a tax ID and all this stuff. I don't know. So I didn't worry about it for a couple of days. I thought maybe it would come loose. Well, you know it right. So I signed up for shipping notifications and I just get getting every day Tuesday, Wednesday, Thursday. I was just getting clearance delay clearance event and so forth. Finally, I called up DHL. I said, you know, what's going on? And they said you need to talk to the shipper while it's still in the shipping country. You need to talk to the shipper about what the problem is. So I sent mail to Yolanda my contact at PCB way telling me I need to contact the shipper. This seems to be stuck in Shenzhen. Can you help me with this? And of course, if you've been a longtime T Tuesday update watcher, you know the next plot development that it's going to be. I hear back, oh yes. Well, but there's a festival. There's some other Chinese holiday that, you know, of course every country's got our holidays. We got our holidays. I never heard of any of these and they all seem to hit whenever I'm trying to make something happen. So it turns out that Dragon Boat Festival is specifically last Friday and I was getting in touch with them on Thursday. So, but over the weekend, it apparently started moving. It somehow disappeared from Shenzhen and showed up in Hong Kong and the custom status was updated. And great. So now we're moving and right. So we're in Hong Kong. It's been given a release. It goes on. Yolanda tells me, please check. I did check and it's processed for clearance in LA. It's reached America, the United States of America now. Great. But immediately after I checked it, when I checked it again, no such luck. Now it's a clearance event in Los Angeles. So what is this? I dialed into DHL again earlier tonight to see what was going on. And it told me there was no problem. It was processed. It had been cleared. So I went back and I checked it again. And sure enough, the clearance event was cleared and now it was processed for clearance. And that was great. But every time I reloaded this, it seemed it was changing from being processed to being cleared from being cleared to being processed. So I put a clock up just so I could tell. And I, you know, all right, back in a clearance event, now it's waiting. Now it's cleared, ready to go. Now it's in a clearance event. I mean, it's as if the fact that these are all happening at 2226, like the sorting is coming out random and it's telling one thing another. I don't know. But that's where it is right now. You know, it all by rights. It should be here today. I assume I'm going to have to call them up again and we're going to see whether I'm actually going to have to pay some kind of tariff, you know, because the Chinese are getting really hammered by this or I don't know. Back and forth. That's it. In other news, scientists report, given that we're going to have this gigantic field of tiles that are going to extend arbitrary distances in every direction up and down, left and right. How are we going to replace a tile that fails? Well, the whole idea was that we need to be able to remove a tile from one side without having to go all the way around and come up the other side to loosen something up. And we've been designing stuff. We talked about it last week. Well, and so here's what we did. Scientists have said, well, couldn't we make some kind of little prongs that would fit over the thing that would let us get in there and pull it out nice and cleanly. So I gave it a try. And here's how it works. So here's a tile. Here's a tile. Here's the thing. You put it on. Bam. It latches on and you just pull it right out. It's not a genius. Or, well, maybe not. You know, when the science meets the real world, here's a slightly bigger example. Here are three tiles that have been ganged up with. So I've removed the intertile connectors here because that's what you would do to pull the thing out. But you'd still have the framework holding it from the back. And of course, doesn't fit at all. Can't get it in. And it's not even close. There are other versions of this that actually did fit through. I mean, they'd be fitting through from this side, from this side. But the problem is the gap between the boards down at the bottom. And anything that I can get that goes through that gap does not latch on hard enough to actually pull. So once again, what looks like a breakthrough in the lab, not necessarily a breakthrough in the real world. So we'll see. And that's it for the news. All right. Yes. So in the code, what happened this past week, I forked, took a copy of the repository, just made a whole nother copy and changed its name. Well, that's not true. I didn't do the whole repository. I made a copy of the driver that ran MFMS, the movable Feast Machine Simulator, made a new driver called movable Feast Machine T2, MFM T2, that this is running over here on the grid if we've got it going. And if you're a long time watcher and you see that this is the statistics display here, it's changed again. In fact, this in this week also the statistics display has been completely rewritten in C++ and not in Pearl. That was primarily because the Pearl code that a Pearl package that I was using to do the graphics display on this, I wasn't very happy with. I mean, it was amazing for what it did. But it was still, you know, sort of very low level and there was a lot of stuff that would have to have been built up on top of it. And I already had that built up in this separate library called the Simple Direct Library or something like that, SDL, which the simulator has been using all along. And there's a lot of structure that's been built up. So this is now running a program called T2Viz. And once again, still there it is. This is MFM T2 running in the background. Well, now running in the foreground. And it looks a little bit different. I've cleaned this stuff up. I've reset this, all these things going around, which I can do because this is custom for the T2 tiles. And actually, and this thing right here, I don't know if you can see it, this 20.32, so we got a bunch of information here. We've got the grid voltage, the temperatures, the amount of light that we've got coming in here, the 720 megahertz, the speed of the processor, 18.1 age. This thing has the uptime of 18.1 hours and 20.03a. That's the average event rate of the MFM T2 happening in the background. Whoops, there he is, happening back here. And wow, you know, you say 20 air. Dave has been saying he'd be happy if there was one air, if there was epsilon air, but this is 20 air. Why isn't he thrilled? Well, because we're going to lose a ton of that. We're going to divide by 10 immediately once we start having to actually communicate and coordinate between tiles. I have no idea how much of that 20 air when it's running independently will be left once we get all the coordination going on. So that doesn't mean anything at the moment. But what it does mean is that the fact that we have MFM T2, that we can customize it to our own purpose and not worry about things happening with the simulator, means we can make closer couplings between things like T2Viz and MFM T2 so that we can be displaying information about the engine in the display. So now, let's see if we have time to do this. This tile here is turned off. What I want to do is start a new bit of code coming out here. Let's go over here. And I'm going to remake this one particular MFZ that is a few hundred k bytes when it goes. It takes a few minutes to spread around from one tile to the next. But hopefully we can get it. All right, so CMD T2. We'll copy it to CDM Common. We'll overwrite the thing. And so now, once again, CDM should notice that the modification time on that particular file has changed. Load it up, reparse it, discover that it's new, and so forth. Install it itself on the Keymaster. That's this white tile here. And then announce it to the neighbors and start shipping it out. Now, at the moment it looks like, in fact, there it is. It's going. All right, so this is step one. It's now being pushed out. So it didn't work over here because the logs rotated. We lost our tail. All right, there it is. So now we're shipping it out to the northwest, to the northeast, the east, and the southwest, but not to this guy. So let's start booting up this guy. And what I'm trying to do here is to get the data that's getting pushed out to the tiles to have somebody who's fallen behind. And so we'll see what happens. Is this thing booting? It probably is. What's going on up here? Now, one of the things that I have learned this weekend is that, especially with 200 tiles, there's going to be hardware issues. And in particular, I've had cases where if I tighten the screws down on the case too tight, I don't know what's going on with this guy. I'm doing another chance and then we'll try to reboot. So you don't have to reboot him because he's still moving. It's just he's not listening one way or the other here. But okay, we'll believe that the key master is still actually sending this stuff. So this guy is going to come up and hopefully pretty soon, he'll start drawing from, he'll pick up the announcement of the new version of CDM DT2 and he will start downloading it as well. And I can see that we're not going to have really not going to have enough time to get to the end of this almost surely. So I'm just going to tell you what the observation I made was that I was quite pleased with. So you can get the idea and then we'll see if we actually get it before time runs out. So what I saw was, let's get this guy over to show the display. He's still booting up the content, common data manager so he hasn't started pulling it yet. But what happened was, was that the key master is where I'm always doing this stuff. So he's pumping it out to everybody. And what happened is, is that like this guy, all right, so now it's complete. Oh, all right. Well, so unfortunately it's not going to work as this guy is, he's completely done. So what happened in the particular case I observed was, the key master was feeding it out in five directions. And one of the directions happened to finish and it installed it and was getting ready to redistribute it to others. And one of the other tiles that was still in the middle of getting this stuff, heard the announcement from the guy that just had it and he sent a request to him too because the way the common data manager works is these announcements get sent out when you see there's a new thing and everybody checks saying, oh, do I need that? And the other tile discovered, oh yeah, actually I'm halfway through that. I currently need whatever, some particular offset in the file. And it sent the request off to the second guy and got a reply back before the key master was able to even give a reply to that same one as well. And what happened was, was that this guy switched from pulling from the key master, which was heavily loaded and therefore was responding slower to this guy who was responding quicker because he had nobody else to feed it to. So what it looked like happened, and I'm not 100% sure of this, but what it looked like was happening was that we had an automatic load balancing taking place just because the guy that was less heavily loaded won the race to reply to the, do you have this particular piece of the file so that when the other guy came in saying, yes I have this piece of the file as well, the guy who was pulling for it didn't need it. So he didn't ask the key master for the next piece and the next piece and the next piece and he automatically switched to feeding from a less loaded machine. Now that was pretty cool. We're out of time. So what did we skip? Oh well, so that was the story about racing. We already did it. Four weeks from today. Ring, let us run on the wall. Benchmark ready. It's going to be great. I will see you in another week. Have a good week.