Tiny Titan
tinytitan.github.io
tinytitan.github.io
A useful tool for explaining the basic concepts in a tangible way.
Tours of a computing facility are otherwise pretty useless.
As far as I know none of those are open to the general public though; you have to work there. Someone I was dating at the time went on the public's tour of NIF, which really only involved them standing in the lobby. Ironically, she was a nuclear physicist and I do environmental and energy economics-y things, so I was completely unqualified to know anything about what I was seeing and she didn't even get a physicist as her tour guide.
[1] https://neutrons.ornl.gov/sns
If he hasn't seen it yet, the "Nand to Tetris" course/book would be a perfect thing to work through together.
I was thinking about also adding a LED bar with one LED for each GPU SIMD element, refreshing a couple times per second and lighting up for the units used above a certain threshold. The ARMv6 SIMD instructions don't look that encouraging.
The end result would be something that looks like a small Connection Machine.
neat stuff, i didn't know that, going to read up.
It's less costly, and all of the concepts are the same (except for connecting them using cables, but that's only a plus if you like the physical experience over abstraction, in which case perhaps computing is not really your thing to start with).
I gather this is intended for K12 classrooms and demos, both of which are made infinitely more impressive by the blinking lights factor. VMs are great for in-depth training, but that's a different use case.
I think you initially misunderstood this to be a consumer-oriented project instead of a classroom-oriented project, but doubled down when you were corrected.
Glib reply: why not?
Serious reply: VirtualBox is available for Windows, macOS & Linux alike, and is free. Surely that's acceptable?
Serious response: I'm of the opinion that you don't learn much about Linux by using it in VirtualBox.
The really cool thing, though, about multiple Raspberry Pis is that the systems really are running in parallel, rather than faking it with multitasking. That's definitely worth something in an educational context.
Still, I think there's value in having this cool looking machine to fiddle with over the computer they're used to messing with all the time. I think it likely to engage more.
Technically, a single PC with multi-process program is often enough. I've used this approach when I worked on some cloud game server, worked good, I just needed to make sure service discovery was OK finding multiple server instances on same IP but different ports.
As opposed to running it by yourself on your own computer in a bunch of virtual machines?
Imho, multitasking is a much cooler feat than parallelism by mere duplication of the CPU. It requires much more engineering effort, e.g. in areas of memory coherence and such. Also, a modern desktop CPU will be an order of magnitude faster than the RPi, so you'll need a lot of them to match performance.
> Other than that they can't run this at home because of the cost?
Do you really think that, as an example, a middle school student is going to be able to go home and install virtual box on their home computer? If they even have one?
As a kid, I would do something in a virtual environment (although at that time, that meant "programming the ZX Spectrum") and the others would say "does not!" or "prove it" and then any evidence they couldn't touch was not real, it was just something I made the computer do.
On completion of my CS degree, some former friends of mine would read something at an appropriately undergrad level that they thought was interesting and tell me about it. When asked "Can you not do that?" the response would typically be "No. And neither can you."
There's something quite satisfying about building something that you can throw at the head of another person.
Am I shooting myself in the foot by using the Wifi ethernet to handle inter-device communication?
https://github.com/rcarmo/raspi-cluster
Using Pi 3 boards would quadruple the number of cores and yield a 600% increase in thanks to the slightly faster default clock rate...
Or make it so you can plug in any Pi, is there anything of a secondhand market for those yet? I can imagine there isn't though, those things are cheap enough to be throwaway / lose in a drawer devices.
But using one with old B boards could be excruciatingly slow at times, which is why I just had to upgrade mine - it’s since become a lot more productive in the sense that my tests take around 5 minutes instead of a whole hour :)
If your parts are more expensive than the rPI itself, you're not going to need it. Those cases aren't cheap either.
+ When they are new to a program, kids and parents care about how tools look. We have a nicely organized wall of tools and six identical work tables. It helps get participants excited and helps convince parents that the program is legitimate.
+ Once they buy in, kids don't care about how a tool or project looks. Some of our most popular projects are built from scrap wood or cardboard.
+ Even after they buy in, kids get easily frustrated when a tool doesn't work.
I think it makes perfect sense for the Titan team (or anyone without a pre-existing relationship to a group) to make everything nice-looking since it helps to establish credibility. If you're making something at home or you've already established credibility, you could absolutely cut some corners by using cheaper parts or making parts yourself. Make sure to use quality parts, though. If you rig something that constantly requires little fixes or nudges to stay running, your audience is going to quickly lose interest.
Considering it's sat in front of a Titan super computer, it was probably easy to get the thousand dollar budget considering how much went into the box behind it :P
Case, sd-card, cables, power supply... It goes up quickly, especially if you don't cheap out on the quality.
Seriously...?
It happens. Based on your surprise, it likely happens a lot more than you think.
We had an overpriced external hard drive we had to slot into computers to play around with, but it helped because it wasn't a virtual "imaginary" thing.
Do we assume that 18+ folks are only interested in parallel programming if it's assembled of shiny pipes?
This. The first step to teaching anyone anything is to grab their attention. Especially kids/teens.
But I'll admit, the price is too steep. They can definitely do better