14 ms·
1Hz CPU made in Minecraft running Minecraft at 0.1fps [video]
- Arbortheus 4y agoThis is incredible!
- imwillofficial 4y agoThis is how skynet really happened
- reimertz 4y agoThis is truly amazing. Comment from one of the creators; This build does NOT run in real time. It runs on MCHPRS, the server developed by StackDoubleFlow, which speeds up the game roughly 10-20,000x while running redstone. That brings the framerate to a much more reasonable 0.1fps, so the long timelapses in the video only took 9 hours to record in in total.
- dubiousconst281 4y agoIt's mind blowing how much effort they put into this, the MCHPRS server even JIT compiles redstone into native code using Cranelift: https://github.com/MCHPR/MCHPRS/blob/master/docs/Redpiler.md https://github.com/MCHPR/MCHPRS/blob/master/docs/Redpiler.md It really saddens me that their post was removed from r/Minecraft, for crediting a server by including its IP address for literally one second in the video.
- holoduke 4y agoReddit is very saddening on general. Best to avoid it
- friendzis 4y agoIn general yes, the "community mod" concept has been mostly dead for a very long time and major communities are in general run by by zealots with ideology and/or financial interest. At least one can find niche communities with healthy discussion/debate as primary interest.
- nullc 4y ago> and/or financial interest Soon to be official policy based on their statements at the moderator convention: "I want our users, user-users and moderator users, to make money on reddit. Specifically, I want them to make money from other users. And so we need to have business models where users are paying money to other users or to subreddits. I would like subreddits to have the ability to be businesses. We have a lot of subreddits that are kind of trying to do this, but the platform just doesn't support it." It's especially weird becuase in the last year or two reddit has cranked their capricious and opaque moderation up to 11-- it would be suicidal to base your livelihood on that platform where you could be shut off at an instant and without recourse just due to a false report campaign from a competitor, troll, or extortionist.
- colpabar 4y agohalf a second!
- Yajirobe 4y agoHow did they load Minecraft onto that computer?
- MauranKilom 4y agoThey didn't load the real Minecraft on it, but they implemented their own version. But that version still has true 3D graphics, several block types, an inventory, mining, crafting, etc.
- jl6 4y agoAnd if that version has redstone, then we know what needs to happen next.
- moffkalast 4y agoIt's redstone all the way down.
- reimertz 4y agoalways has been.
- smegger001 4y agosomeone ports doom to it?
- thekiptxt 4y agoFrom the video uploader: “yes, we will run DOOM on this” :)
- ycombinete 4y agoPermutation City
- hot_gril 4y agoAlso, is that redstone wiring non-vanilla, or is it just a texture pack?
- bmicraft 4y agoIt's just a texture pack
- PaulHoule 4y agoMy son has gotten into designing logic circuit with Redstone. I wish I could get him to do the same with 74xx/54xx parts.
- LeifCarrotson 4y agoWhy 74xx parts, other than nostalgia for an era that was over decades before he was born? If it's about building physical things rather than virtual things, consider Lego Mindstorms controllers; you can build digital logic in them using Scratch...and graduate to Python when he gets frustrated with the limitations. And there's tons of Minecraft-themed Lego contraptions, he could theoretically use Mindstorms logic, lights, and actuators to build Redstone logic!
- speed_spread 4y agoTalk about gatekeeping...
- swores 4y agoAnd yet you're talking about it despite replying to someone who clearly wasn't gatekeeping. They were offering suggestions.
- postalrat 4y agoYou don't start a suggestion with "Why 74xx parts, other than nostalgia for an era that was over decades before he was born?"
- swores 4y agoI agree that they could have worded that sentence more nicely, but "gatekeeping" isn't the automatic opposite of "charming and polite", nor does it describe any and all negative feedback. It's a specific term with, you know, meaning.
- 4y ago
- kleer001 4y agoDid you mean to link to the video?
- reimertz 4y agoDerp: here is the video link: https://www.youtube.com/watch?v=-BP7DhHTU-I https://www.youtube.com/watch?v=-BP7DhHTU-I @dang can you update this post to link to the video?
- dang 4y agoFixed now.
- inetknght 4y agoCool! Now build it in Turing Complete and export it to an FPGA
- deelowe 4y agoFor those wondering: https://store.steampowered.com/app/1444480/Turing_Complete/ https://store.steampowered.com/app/1444480/Turing_Complete/
- westurner 4y agoFrom KiCad https://en.wikipedia.org/wiki/KiCad https://en.wikipedia.org/wiki/KiCad : > KiCad is a free software suite for electronic design automation (EDA). It facilitates the design and simulation of electronic hardware. It features an integrated environment for schematic capture, PCB layout, manufacturing file viewing, SPICE simulation, and engineering calculation. Tools exist within the package to create bill of materials, artwork, Gerber files, and 3D models of the PCB and its components. https://www.kicad.org/discover/spice/ https://www.kicad.org/discover/spice/ : > KiCad integrates the open source spice simulator ngspice to provide simulation capability in graphical form through integration with the Schematic Editor. PySpice > Examples: https://pyspice.fabrice-salvaire.fr/releases/v1.6/examples/index.html#examples-page https://pyspice.fabrice-salvaire.fr/releases/v1.6/examples/i... : + Diode, Rectifier (AC to DC), Filter, Capacitor, Power Supply, Transformer, [Physical Relay Switche (Open/Closed) -> Vacuum Tube Transistor -> Solid-state [MOSFET,]] Transistor, From the Ngspice User's Manual https://ngspice.sourceforge.io/docs/ngspice-37-manual.pdf https://ngspice.sourceforge.io/docs/ngspice-37-manual.pdf : > Ngspice is a general-purpose circuit simulation program for nonlinear and linear analyses.* > Circuits may contain resistors, capacitors, inductors, mutual inductors, independent or dependent voltage and current sources, loss-less and lossy transmission lines, switches, uniform distributed RC lines, and the five most common semiconductor devices: diodes, BJTs, JFETs, MESFETs, and MOSFETs. > [...] Ngspice has built-in models for the semiconductor devices, and the user need specify only the pertinent model parameter values. [...] New devices can be added to ngspice by several means: behavioral B-, E- or G-sources, the XSPICE code-model interface for C-like device coding, and the ADMS interface based on Verilog-A and XML. Turing completeness: https://en.wikipedia.org/wiki/Turing_completeness https://en.wikipedia.org/wiki/Turing_completeness : > In colloquial usage, the terms "Turing-complete" and "Turing-equivalent" are used to mean that any real-world general-purpose computer or computer language can approximately simulate the computational aspects of any other real-world general-purpose computer or computer language. In real life this leads to the practical concepts of computing virtualization and emulation. [citation needed] > Real computers constructed so far can be functionally analyzed like a single-tape Turing machine (the "tape" corresponding to their memory); thus the associated mathematics can apply by abstracting their operation far enough. However, real computers have limited physical resources, so they are only linear bounded automaton complete. In contrast, a universal computer is defined as a device with a Turing-complete instruction set, infinite memory, and infinite available time. Church–Turing thesis: https://en.wikipedia.org/wiki/Church%E2%80%93Turing_thesis https://en.wikipedia.org/wiki/Church%E2%80%93Turing_thesis ... Lamda calculus (Church): https://en.wikipedia.org/wiki/Lambda_calculus https://en.wikipedia.org/wiki/Lambda_calculus HDL: Hardware Description Language > Examples: https://en.wikipedia.org/wiki/Hardware_description_language#Examples_of_HDLs https://en.wikipedia.org/wiki/Hardware_description_language#... HVL: Hardware Verification Language: https://en.wikipedia.org/wiki/Hardware_verification_language https://en.wikipedia.org/wiki/Hardware_verification_language awesome-electronics > Free EDA Packages: https://github.com/kitspace/awesome-electronics#free-eda-packages https://github.com/kitspace/awesome-electronics#free-eda-pac... https://github.com/TM90/awesome-hwd-tools https://github.com/TM90/awesome-hwd-tools EDA: Electronic Design Automation: https://en.wikipedia.org/wiki/Electronic_design_automation https://en.wikipedia.org/wiki/Electronic_design_automation
- boredpudding 4y agoI wonder if it's possible to run this outside of Minecraft in some way. I assume the developers weren't debugging the program in Minecraft itself.
- miohtama 4y agoThey cannot naturally run real Minecraft on their CPU. Instead, they have handcoded Minecraft like game for their custom CPU, so the title is a bit misleading. For this CPU/language you will find an emulator. You can find more information in the explainer video https://youtu.be/xIMkqHb2-KM https://youtu.be/xIMkqHb2-KM
- ravi-delia 4y agoIt's definitely a little misleading, but idea of running the entire JVM with graphics stack included is so insane that I'm willing to call this "minecraft in minecraft"
- ok_dad 4y agoI like that part about the bees at the beginning. Also, the CPU definitely did blow my mind. Amazing work by the builder!
- whatisthiseven 4y agoI worked on a CPU in Minecraft years ago and designed it to be a 7-bit CPU. I chose that number because it gave me the an appreciable number of operations plus space for arguments. I had only 6 bytes of RAM and about 32bytes of ROM. The ROM was just a circle of transparent blocks (zero) and solid blocks (one) pushed around by pistons. The whole thing was real slow, but it was so much fun trying to design something that would perform interesting calculations. I stopped working on it as at the time Minecraft had some odd bugs with pistons that would cause non-deterministic behavior. I think the most challenging aspect wasn't the programming or circuits, which were well understood and mapped out, but trying to create modules I could copy-paste inside a special Minecraft save editor to make the machine quickly, then manually dragging out data/command lines to hook the modules together.
- MauranKilom 4y agoBrings me back to when I first worked on an ALU in Minecraft. At least at the time, it had really annoying bugs with repeaters though, where it would occasionally mess up a signal, which frustrated me enough to give up on it.
- felipelalli 4y agoNow it's time for the next step: build another CPU inside that one.
- ranger47 4y agoYou remind me of someone... a man I met in a half-remembered dream. He was possessed of some radical notions.
- squarefoot 4y agoOr better, moving the main Minecraft into the hosted CPU emulated into the emulated Minecraft, so that a singularity would open and suck the entire Universe into Minecraft.
- dexwiz 4y agoDo people use circuit simulators and compile to blocks, or copy/paste units from previous projects? Seems like such a massive undertaking where a single misplaced item ruins everything.
- brap 4y agoWhat's with the code? I don't know much about Minecraft, but I assumed the CPU would be built purely from blocks which act like transistors. Yet there's a part of the video where the show code written in-game(?). What's up with that? Isn't it cheating?
- shagie 4y agoA glance at the code, it appears to be the code for generating the world. Placing all those blocks by hand would be tedious. I believe you are seeing a complier of code -> red stone, not code embedded into Minecraft. (late edit: The file name is src/redpiler/mod.rs - a search brings up https://www.reddit.com/r/redstone/comments/md1xwy/redpiler_the_redstone_compiler_1khz_high_speed/ https://www.reddit.com/r/redstone/comments/md1xwy/redpiler_t... which is posted by the same author as the video creator... and that appears to be an optimized Redstone interpreter (terms get confusing here if you try to say that this is a that)... > MCHPRS is an open source project with the goal of allowing high speed redstone execution. This speed was achieved by generating a graph structure of all redstone links. MCHPRS can compile redstone into a graph and execute based on it. > This is what the generated graph looks like: https://imgur.com/a/J51nJvV https://imgur.com/a/J51nJvV > Redpiler is just a proof of concept and I expect to be able to get much faster speeds in the future :D /edit)
- brap 4y agoAh makes sense, thanks!
- ZeKK14 4y agoAs explained in the description of the video, this is not running on a vanilla Minecraft server, but on their own implementation optimized to run redstone circuits. The code displayed at the beginning seems to come from that: https://github.com/MCHPR/MCHPRS/blob/master/crates/core/src/redpiler/mod.rs#L683 https://github.com/MCHPR/MCHPRS/blob/master/crates/core/src/...
- deleted 4y ago[deleted]
- sadjad 4y agoWill it run Doom?
- xerox13ster 4y agoThey said in the video they are going to run Doom on it at some point.
- dylan604 4y agoI don't know if I'm more impressed that a coffee maker can run Doom, that another game can run Doom from inside it like this, or that Doom is just this portable
- taneq 4y agoI think my favourite was the recent “Doom can run Doom”.
- quickthrower2 4y agoAlso... will it run Docker?
- cprecioso 4y agoAny guesses on when we will get Factorio running on Factorio?
- curious_tenet 4y agometa game of life lol
- nomel 4y agoSo, you're saying Tetris can be implemented [1]? 1. https://codegolf.stackexchange.com/a/142673 https://codegolf.stackexchange.com/a/142673
- pleb_nz 4y agoHa... It's not even a color display /s
- system2 4y agoI wish to have the patience and excitement about something to build like this. I admire people like this youtuber.
- Comevius 4y agoPretty cool. The program itself was written in an existing intermediate language called URCL, which was then compiled to CHUNGUS2 assembly. CHUNGUS2 is the processor made with Minecraft's redstone mechanics. The processor was emulated for development, but the demo is running on MCHPRS, a Minecraft server that uses Wasmtime's Cranelift to JIT the redstone operations, which are represented as a weighted directed graph. Before MCHPRS, optimizing redstone performance using compiler techniques was not thought to be possible. With MCHPRS the demo takes 9 hours to run, it would take decades using Minecraft. https://github.com/sammyuri/minecraft https://github.com/sammyuri/minecraft https://github.com/MCHPR/MCHPRS https://github.com/MCHPR/MCHPRS As for CHUNGUS2 itself, it's a proper RISC processor, it has a 4-stage instruction pipeline, 64 byte 8-way associative data cache, even branch prediction. https://www.youtube.com/watch?v=FDiapbD0Xfg https://www.youtube.com/watch?v=FDiapbD0Xfg
- acchow 4y ago> Before MCHPRS optimizing redstone performance using compiler techniques was not thought to be possible. They created a virtual machine with a custom instruction set. Why wouldn't an optimized JIT work?
- lifthrasiir 4y agoTo my knowledge, MCHPRS is not a full Minecraft server implementation; it only contains just enough subset of the game to run redstone circuits. The upside is that this subset can be run a lot faster than the full game server.
- mort96 4y agoThe rest of the game remains unimplemented not because it couldn't be done, but just because it's a lot of work. World generation, mob logic, all the different crafting recipes, world generation, etc wouldn't impact the performance of the redstone system, but it's not necessary for the use-case of running CPUs fast.
- 4y ago
- tablespoon 4y agoThe video description says: > 3D Minecraft in Minecraft with no command blocks, no datapacks and no mods. Features include an 8x8x8 fully 3D-rendered world with 16 different block types, 32 different items, and dozens of game mechanics including mining, crafting, smelting, building, chests, random ticks Is "3D Minecraft" a Minecraft clone for low-powered hardware? It looks like their emulated CPU only has <10KB RAM and a 96x64 display, which screams "TI-83 program" to me.
- derac 4y agoThey wrote a clone, yes.
- jcl 4y agoYeah, they're implementing a Minecraft-like experience within Minecraft, not literally running official Minecraft code on their VM. I think they specify "3D Minecraft" to distinguish it from earlier efforts, where people built 2D Minecraft-like experiences with redstone, like: https://www.gamesradar.com/guy-makes-minecraft-playing-computer-minecraft/ https://www.gamesradar.com/guy-makes-minecraft-playing-compu...
- kibwen 4y ago> only has <10KB RAM It's even more impressive than that. It has 8kb of ROM, and only 512 bytes of RAM!
- SCLeo 4y agoI think we will see more of these amazing Minecraft technical creations as people who played Minecraft as children are now finishing up their higher educations.
- NoToP 4y agoIn the contrary, I think kids that self taught most of digital logic years ago are now being accredited for what the game already taught them, and are now doing it for money with silicon rather than redstone.
- twostorytower 4y agoIncredible. Next do Minecraft in Minecraft in Minecraft.
- unethical_ban 4y agoHow would someone get into designing/simulating CPUs and computers other than Minecraft? Is there any software for learning and implementing "simple" logic circuits, memory, etc?
- yarolig 4y agoBen Eater have nice videos on youtube https://www.youtube.com/c/BenEater/videos https://www.youtube.com/c/BenEater/videos There is a good https://nandgame.com/ https://nandgame.com/ You may want to use some simulating software like a verilog interpreters or logic simulators. I do not know a good one, I'm not a specialist it that stuff. And... If you have a couple of months to waste... You can try Factorio.
- bismuthcrystal 4y agoSorry for being this rough but, what a naive question this is. Of course there is.
- unethical_ban 4y agoIt's expected that there are tools, clearly, since people seem to know how to do this kind of thing. Good tools that an interested beginner can use as a lab are another thing. If you skip back to the first question, then. It isn't naive. You chose to be short when you could have said nothing.
- Twisol 4y agoIn natural language, asking "is there" is implicitly asking for more than just a truth value. It's expected that the response will include an example; a witness to the answer "yes". The indirection is considered polite and non-aggressive by many people. In particular, a direct question like "What software exists for this?" is sometimes met with a "Have you tried Google?", when the intent is also to get recommendations and not a pile of search results to evaluate as a newcomer. In this case, they got a rude answer anyway. I hardly think that's their fault though.
- LelouBil 4y ago
- mesozoic 4y agoNow make Minecraft in that Minecraft.
- kibwen 4y agoDon't miss the other video showing the overview of the CPU, it's seriously impressive: https://youtube.com/watch?v=FDiapbD0Xfg https://youtube.com/watch?v=FDiapbD0Xfg
- swayvil 4y agoThe 0.1fps time scale makes no difference to people living within this minecraft universe. From their perspective a second is a second and a day is a day. Funny. See Greg Egan's PERMUTATION CITY for more on that.
- ninkendo 4y agoAlso, for an extreme example, https://xkcd.com/505/ https://xkcd.com/505/
- swayvil 4y agoWoah!
- AntonioCao 4y agoMy first thought exactly. This essay by Hans Moravec is also a great exposition for similar idea: https://frc.ri.cmu.edu/~hpm/project.archive/general.articles/1998/SimConEx.98.html https://frc.ri.cmu.edu/~hpm/project.archive/general.articles...
- Karsteski 4y agoPermutation City is one of the best Sci-Fi books I've ever read. Would definitely recommend.
- oxmane 4y agoCame here for the awesome project, came out with a book recommendation. Thank you HN!
- ineedasername 4y agoPft, only monochrome? /s Pretty awesome, kudos
- Cieplak 4y agoReminds me of Conway’s Game of Life, emulated inside Conway’s Game of Life: https://m.youtube.com/watch?v=xP5-iIeKXE8 https://m.youtube.com/watch?v=xP5-iIeKXE8
- skwirl 4y agoThis is exactly the type of content I hope to see when I check HN. Awesome.
- rationalfaith 4y ago
- Cyberdog 4y agoHa, that's so needlessly inefficient! Now let me get back to work with my Electron code editor while I communicate with my team in four different Electron chat apps and code a web page which requires 2.5MB of assets to load (not counting the massive autoplaying background video).
- fennecfoxy 4y agoI do hate Electron but a little overhead these days is what gets us all the stuff we have. It's not so much overhead that's killing technology for me atm, it's dumb decisions/terrible technoshit. Like Google's Nest products that randomly disconnect from wifi and refuse to reconnect. How do you fuck up connecting to wifi in 2022?
- teekert 4y agoIf you like to ponder physiological implications and deeper themes of such worlds in worlds and what it can mean, in a fun way, I recommend the (sci-fi) book Permutation City (Greg Egan), from 1994. It also contains an artificial world, called the Autoverse that felt to me like Minecraft when I read the story. But it is taken a lot further...
- antonvs 4y agoI’m not sure I’d want to upload my consciousness to a Minecraft server...
- Liambp 4y agoCan someone explain to a clueless person (me) how a 1Hz CPU manages to achieve even 0.1fps frame rates. That is only ten clock cycles per frame. I don't know what the IPC of Chungus 2 is but that doesn't seem a lot of cycles to calculate each new frame. Thinking about this another way. Real world CPUs have clock speeds at least 1 billion times faster than this and they only run Minecraft a few 1000 times faster than is claimed here. How do these numbers add up?
- moss2 4y agoThe video author (Sammyuri) clarified it in a comment: > This build does NOT run in real time. It runs on MCHPRS, the server developed by StackDoubleFlow, which speeds up the game roughly 10-20,000x while running redstone. That brings the framerate to a much more reasonable 0.1fps, so the long timelapses in the video only took 9 hours to record in total.
- ClassyJacket 4y agoInteresting. I saw a video of this on tiktok that said "sped up 2,000,000 times" and thought it was an exaggeration, or error. Apparently not.
- abrax3141 4y agoYou’re all going to hate on me for this, so first let me say that this is amazing. I’m awed by it. Truly. And I am very familiar with minecraft and even have been known to do a bit of redstone hacking myself I love seeing the cool things some folks do with it. (I’ve some redstone sorting algorithms and I’m esp fond of redstone Turing machines!) But this! This is like sending a person to mars! And I have the same question for the geniuses who did this that I have for the ones working on that: Aren’t there cures for cancer and perovskite solar cells to discover? Why are you using your excellent minds, and apparently enormous amount of free time, building cool but very slow virtual computers out of virtual sand, when you could be proving the smoothness of the Navier–Stokes equations? It’s one thing, to my mind, when athletes climb huge mountains because they’re there. It’s quite another, again, to me, when obvious genius goes to waste. There. I feel better for having said it. I only wish I could say it to Elon Musk re Mars, and get my son to spend a fifth as much time on his math homework as he does playing minecraft. This incredibly cool hack is just going to exacerbate the situation! :-)
- glitchc 4y agoThink of it as art rather than science. Do we question why someone created a piece of art, or whether they could have spent their time better by creating a different piece of art?
- abrax3141 4y agoHmmm. Okay. Fair point. Although it actually is science. And these folks could be doing real science.
- abrax3141 4y agoPs. I’ve elsewhere agreed with you. It is art and I was wrong to criticize it. (It’s too late to edit my previous reply .)
- imtringued 4y agoNo they can't. Have you ever tried to do "science" aka a PhD?
- skc 4y agoNick Bostrom is silently smiling somewhere.
- OnlyRepliesToBS 4y ago
- infologics 4y ago[dead]
- mensetmanusman 4y agoA lot you can do with NOR gates! A fun thought experiment is whether you could ever imagine that block build growing complex enough and becoming intelligent. If AI can become intelligent (generally, i.e. GAI), then it could be implemented with redstone. If human level intelligence requires something more, then it can not, and the search for redstone 2.0 continues…