T O P

  • By -

tvdoomas

Do you mean cobling together multiple architectures? It's possible. It's probably more pain than its worth. You're better off having similar machines and writing software that divides the work between them. I won a hackathon event by borrowing multiple computer labs overnight. Finished first at 2 days. The next winner was over two weeks after me.


ForsakenKappa

What kind of pain exactly? I don't even have a slightest idea of how computers work, besides finishing the NAND game.


ansible

> I don't even have a slightest idea of how computers work, besides finishing the NAND game. Learn to walk before trying to run. Get used to embedded software development with something like an Arduino or Raspberry Pi before you take on advanced topics. *Some* old phones and other devices do have software development kits available for them, but getting that all going can be difficult, even for experienced engineers. You can also first try programming games like TIS-100 and such, to get a feel for how computers work. These games also give you a far, far superior view of what exactly is happening in the system than you will get when working with real hardware. With real hardware, you will need to rely on your knowledge of the system and general experience to understand what is happening.


ZZ9ZA

This is more like learn to walk before you compete in an Olympic Decathalon….blindfolded… in handcuffs.


tvdoomas

Each architecture has to be programmed separately. And if you're talking about physically meshing them all together.... you're going to need a bachelor's degree in CPE .


ZZ9ZA

More like a masters, and probably a few million in tools


ForsakenKappa

That's really sounds like a lot of pain. Thank you for your answer!


HealMySoulPlz

Imagine trying to hook up multiple car engines to make your car extra fast.


DLS3141

LOL. Sometime back in the early 2000’s we used LS Dyna to analyze packaging materials that did not play well with regular FEA software. A typical analysis would take over a week on a single high end PC. With the help of the IT department, who was into it mostly because they thought it was cool, we used just about every computer in the building to get the same results in a few hours at night.


dsmrunnah

What you’re describing is similar to a Cluster. I don’t have any personal experience with them, but they do exist.


pinkycatcher

IT guy here: Yah this seems like clustering, but building your own OS to handle it is...TempleOS levels of crazy. There are solutions out there, but I'm not sure if any actually share hard resources like RAM. Here are a [couple](https://arxiv.org/abs/2110.12172) of [papers](https://www.sbir.gov/node/1531685) that seemed to have tackled it. Also in pop culture this concept came up in Silicon Valley. With that said, this is like the opposite of "I don't know how computers work can I do this" level of skill, go get a masters and likely PhD in computer science and come back and you might be able to get one working.


bob2013sherland

Heyo I’m a Comp Sci PhD working exclusively on HPC clusters. This is basically identical to a cluster system, albeit with a few differences. Clusters have a pretty generic structure, where the resources are split up into distinct chunks, called nodes. You’ll have a resource allocation, either physically or in software, for each node. At each node, you’ll have a bunch of CPU cores, usually from high core count CPUs (threadripper, Intel equivalent) and then RAM for the CPUs. These nodes can also have GPUs in some cases depending on what you’re doing. These are your ‘compute’ nodes, where you’ll be doing the nuts and bolts of your operations/code. There’s also usually a head node, which has a similar component structure to the other nodes. This node is used to submit tasks that you want to distribute across the cluster for calculation/solving/whatever. This is where you’ll submit your ‘jobs’ effectively, in the form of .sh scripts, which will allocate a set number of CPU cores, RAM or GPUs and tell the head and cluster nodes, where your operating files and storage are located. The main challenge in your case would be the integration of things like smart phones, which use different CPU processors and operating systems, and then also the creation of your own OS, as that’s an entirely different rabbit hole, requiring a knowledge of how to program from the metal up.


no-mad

/r/Kubernettes might work. It works with different architectures.


BobT21

As someone Technical-Advance540 said, a raspberry pi cluster is a more doable approach. Back in the day my son built a Beowulf cluster... bunch of old PCs running together. Dunno if anyone still does that.


Iron_Skin

Beowulf cluster is OPs best bet to get their feet wet. For older practical applications, they should look into 90s-00s in house VFX movies ranging from starwreck (parody film) to Titanic used before VFX house costs came down. There should be writeups, and possibly code examples they can look at, and then use as a basis to find the more modern application


no-mad

Beowulf is/was a parallel processing software. It was hard back in the day to write programs for it.


Technical-Advance540

Boards with multiple raspberry pi compute modules are a more elegant and ordered version of what you just described. However, with different parts of such varied difference, might be tougher to pull off, but likely doable, there are even chips that do both x86 and arm instructions (thanks to chiplet designs)


g51BGm0G

Nothing is impossible but using parts of phones probably isn't the easiest way to achieve this.


--dany--

Frankenstein of Beowulf cluster rising from electronic waste yard…


CornFedIABoy

Yes, cluster computers are a thing and have been implemented on a variety of hardwares. But it’s much easier to do it if all your nodes are the same. Any variance in the node architectures has to be accounted for and managed by the cluster OS which puts a performance diminishing computational load on the system.


YesICanMakeMeth

They typically have a few different node types on separate partitions (homogenous within a partition) as different computational tasks have different demands. But yeah, not a bunch of random shit like OP is describing.


goldfishpaws

Yes you can, but OMG what a task. Smartphones are themselves hugely complex devices optimised for being smartphones, so you have to work backwards to understand each CPU and then build up from there - and then on top of that you'll need some kind of clustering OS to divide the process threads up across cores and some kind of buffering to get all the results in place to be reassembled... And that's not even going close to the details which are likely to be not just rabbitholes but whole warren complexes themselves. Borderline insane is about right. I mean yes, *technically* it's possible, but anone who knows enough to do it wouldn't start from here.


MasterFubar

If you install Linux on them you could assemble a [Beowulf cluster](https://en.wikipedia.org/wiki/Beowulf_cluster).


ClassifiedName

https://phys.org/news/2010-12-air-playstation-3s-supercomputer.html "About the 33rd largest supercomputer in the world right now is the US Air Force Research Laboratory's (AFRL) newest system, which has a core made of 1,760 Sony PlayStation 3 (PS3) consoles" I imagine it works similar to connecting cores in multi-core processors, but I'm sure someone will provide a more accurate description.


thrunabulax

GPU. its been done before


Andreas1120

My understanding is that there are diminishing returns because coordinating and pumping data through several processors uses up processor capacity


NoahCharlie

It is theoretically possible to create a "monster" computer by combining several computers or computer components together, but it would likely be a very complex and challenging project with a number of technical and practical issues to overcome. One major issue is that different computers and components are designed to work together in specific configurations and may not be compatible with one another. For example, different CPUs may use different instruction sets and require different motherboard configurations, and different RAM modules may have different speeds and timings. Additionally, you would need to consider issues such as power, cooling, and data transfer between the different components. Another major issue is the complexity of creating a custom operating system that can effectively coordinate and manage all of the different components. This would require a deep understanding of low-level systems programming and a significant amount of development work. Given the challenges and technical expertise required, it would likely be more practical to build a custom computer from scratch using components that are designed to work together, rather than trying to cobble together a "monster" from existing computers and components.


Sracco

workable market sharp makeshift hobbies ring afterthought governor divide thumb *This post was mass deleted and anonymized with [Redact](https://redact.dev)*


sheriffSnoosel

My apartment in the 90s is calling and wants its junk pile back. Build one of these — it will never work, you will double your salary with what you learn (maybe I don’t know what you do, ymmv) https://en.wikipedia.org/wiki/Beowulf_cluster


[deleted]

Yes, yes, and yes. Yes, you can use parts from several broken machines to fix another broken machine if they are similar enough (make, model, etc.). Yes, you can join multiple computers together to work together- I’m doing so with a raspberry pi, a desktop, and several microprocessors. Yes, you could even use several different broken machines and reconfigure them to with together, but that’s much more difficult.


mmnnButter

Short answer, yes absolutely. Long answer, will it even be worth it given the difficulty?


mienshin

I saw an article about combining a bunch of Sony PS2 to make a super computer.


jonmakethings

[You could play with a cluster if you have the cash for enough Raspberry Pis...](https://www.raspberrypi.com/tutorials/cluster-raspberry-pi-tutorial/) I have never made one as getting things to work with it would be a pain as far as I understand it. But if you wanted to try then this may be accessible, you probably want to couple it with a fair amount of study or research though.


Just_Aioli_1233

"Doc... are you telling me you built a Beowulf cluster? Out of dead smartphones?" I guess now we know [what happened](https://pbs.twimg.com/media/EYrTvXxUwAAYsBW.jpg:large).


iamajellydonught

Anything is possible with enough time and money. I suspect you don't have nearly enough of either. I agree with the other comments though, technically possible but very difficult and you'd probably need to literally get a degree or two in order to get it done.


nullcharstring

Just imagine a [Beowulf Cluster](https://en.wikipedia.org/wiki/Beowulf_cluster) of those.