Know how to couple 2 PCs into a new one ? - Page 1
Forum section: electronics / projects

author: abdulbadii
author_rank: Frequent Contributor
timestamp: June 28, 2023, 01:35:25 am
content: Anyone happen to know how to couple 2 PCs into a new working one behave as if a single higher performant PC, preferably laptop kind?How're the rudimentary circuits and configuration requiredHere the master-slave method seems suitable for condition a Far better PC and a old one with 2/3 to 1/3 set workload accomplishing operationAny eligible informational fact on this possibility, feasibility in this FOSS / FOSH (free open source H/W) era ?

author: abeyer
author_rank: Frequent Contributor
timestamp: June 28, 2023, 02:23:04 am
content: Can you imagine a beowulf cluster of these!?

author: Shonky
author_rank: Frequent Contributor
timestamp: June 28, 2023, 02:36:09 am
content: What?

author: Berni
author_rank: Super Contributor
timestamp: June 28, 2023, 05:36:55 am
content: If you ever figure out how to do that, then do quickly patent it and sell it to IBM or Intel for a billion dollars or so.All those big companies would love technology like that for building supercomputers, since so far they have not figured out how to do that, so they have to mess about with splitting workloads over a giant pile of computers connected with high speed networking.

author: Smokey
author_rank: Super Contributor
timestamp: June 28, 2023, 06:56:41 am
content: Quote from: abeyer on June 28, 2023, 02:23:04 amI, for one, welcome our new beowolf cluster overlords!

author: Haenk
author_rank: Super Contributor
timestamp: June 28, 2023, 07:49:22 am
content: Available e.g. as "renderfarm" - i.e. one master and many slaves.

author: Terry Bites
author_rank: Super Contributor
timestamp: June 28, 2023, 08:11:45 am
content: At the hardware level?!

author: IDEngineer
author_rank: Super Contributor
timestamp: June 28, 2023, 12:52:33 pm
content: Sure... try soldering a second CPU right over the first one. Nice, simple parallel processing! Repeat as needed! DIP packaged CPU's make this much easier.

author: magic
author_rank: Super Contributor
timestamp: June 28, 2023, 01:01:55 pm
content: Quote from: abdulbadii on June 28, 2023, 01:35:25 amNope, leader-follower configurations are preferred these days.

author: MK14
author_rank: Super Contributor
timestamp: June 28, 2023, 01:20:51 pm
content: Quote from: abdulbadii on June 28, 2023, 01:35:25 amI insist, this method really works!Yes, I know the secret, almost magical way of doing it. I'm releasing my method for FREE, as an open-source technique, here and now.I'm not in any way going to be sarcastic, or make fun, either.Each technical step needs to be followed, preciously, or it may not work.Sell the old computer(s) on ebay. Then use the money, plus if necessary additional money to buy a brand new laptop or buy a suitably used, more powerful laptop on ebay.

author: hans
author_rank: Super Contributor
timestamp: June 28, 2023, 01:26:02 pm
content: Functionally speaking, clustering is a well studied concept and lends itself to tasks that can be split into multiple workunits and handed out by a controller for workers to process them. Each task can be executed independently, so there workers don't have to cross-reference any data while performing them.You also have cloud-orientated solutions like Docker and Kubernetes to spin up more instances when load increases. But all these applications run at a fairly high level, and need independent tasks to function. The scheduling just ensures as many tasks are executed in parallel as possible.Technically speaking, if you're asking to do this at an at OS level, then yes that is (kind of) possible but not with conventional x86 PCs.Look at IBM Z16 mainframes. Those machines can be inter-connected via networking IIRC and share tasks and memory among machines. The interconnect to do that is immense, as is the bandwidth requirements for e.g. RAM exchanges. And each CPU/OS has to have knowledge of which machine is poking at which memory. I don't know the details of this, as IBM makes quite the enterprise piece of kit nowdays, but I imagine a lot of magic goes into an extremely impressive custom compute & network platform, as well as all the software bits&pieces to make those machines "cluster together".If you're looking to do this with conventional PC hardware.. no chance. Your average house-hold network only runs at 100MB/s or so. A typical DDR5 memory bus is in the many tens of GB/s.At best you have KVMs which can be live-migrated between machines to transparently operate them onto different boxes. But not at the same time.Starting a process on your PC and have it magically parallelized together with a remote machine is an unicorn. At a hardware level, there is no support. At a software level, maybe you can make something happen at an OS level; but the question is if such a solution wouldn't be heavy bottlenecked by slow network I/O. And you'll likely need many constraints, such as identical machines. Thus at best you'll get to application level schedulers.Or, buy a faster box. If you're planning to save 1k$ with such a piece of software (especially since you mention laptops level of performance), then you're doing it wrong.

author: sparkydog
author_rank: Regular Contributor
timestamp: June 28, 2023, 04:06:53 pm
content: Quote from: abdulbadii on June 28, 2023, 01:35:25 amThere are two ways to improve compute performance:Use better hardware (i.e. a CPU that is faster and/or has better architecture).Use more hardware.The way you've phrased your question implies that (1) is not an option.However, there's a serious problem with (2), especially if you want the result to "behave as if asinglehigher performant PC" (emphasis added). To wit: you need software that can parallelize well. Software questions are not on topic here. How to build a Beowulf cluster is also not on topic, and the result is unlikely to "behave as if a single higher performant PC". The closest you can get to that is to throw more cores, or more sockets at the problem... and we've been doing that with x86 for decades. (Even longer for other architectures.) It's an incredibly complex problem which you, as a hobbyist, are unlikely to be able to undertake, and even if you somehow managed it, your chances of doing so better and/or more cost-effectively than billion-dollar companies that have been working on this for those same decades are effectively non-existent.You need to clarify what you want to do, but more importantly, you need to clarifywhy. What is the underlying problem you are trying to solve? What are the constraints on your solution? Are you trying to shove two PCs into a laptop chassis just to see if it can be done? (Maybe.) Just to see if it's useful? (Probably not, with perhaps some very narrow and esoteric exceptions.) Or are you trying to pursue an implausible solution to some other problem? I suspect that you'd be better off with some sort of remote terminal.

author: MK14
author_rank: Super Contributor
timestamp: June 28, 2023, 07:16:47 pm
content: Has anyone looked through the huge number of topics, the OP has made.Is it some kind of massive, crazy AI experiment or something?Challenge to anyone. Out of the almost 100 threads they have started (and often never reply in ever again), can you find a single one, which seems like a normal, sensible thread topic, with details and stuff?Alternatively, maybe there is a massive language barrier?

author: Simon
author_rank: Unknown
timestamp: June 28, 2023, 08:28:21 pm
content: I don't know what the OP wants to achieve, I looked at this years ago as a teenager, in my search I instead stumbled on seti and decided that was a nicer idea, of course later BOIC came along. The problem is that unless you can divide the task into small independent chunks you can't send it out to another sub system, also if you can't work out how to give a CPU more work than it's ethernet connection can handle then you end up with a CPU just waiting for the ethernet no catch up all the time.

author: MK14
author_rank: Super Contributor
timestamp: June 28, 2023, 08:33:32 pm
content: Quote from: Simon on June 28, 2023, 08:28:21 pmSoftware wise (OS), you can somewhat join multiple computers (PC's) together (across a network or the internet). There are special versions of Linux (for scientific computing) and things, that can make it easier to make a giant 'supercomputer', out of the shared resources.But hardware wise, it's not really viable on modern PC hardware. The frequencies are too high and they are not designed to be able to do stuff like that.Laptops are especially crazy, as the hardware becomes even more difficult to mess with.I don't really understand the opening post, it could mean a number of different things.

author: MK14
author_rank: Super Contributor
timestamp: June 28, 2023, 08:39:37 pm
content: My earlier post wasn't a joke. The best option, perhaps, is to sell the old equipment and buy second hand or new, faster better equipment. Assuming upgrading the previous equipment, is not viable.As other(s) have stated. Without considerably clearer details as to what exactly is intended, going on and the equipment involved. It is probably an unanswerable question.Unless you write a book sized set of options, taking into account the probably huge number of different things the OP means.

author: Doctorandus_P
author_rank: Super Contributor
timestamp: June 28, 2023, 08:47:20 pm
content: About a year ago I bought a new Mobo, processor (with integrated video) and memory, and this increased my pc performance almost 10x, and it is also a significant power saving.Quite often old hardware is just not worth fussing about.If you have something "special" in mind, then start with quoting what hardware you have.

author: Simon
author_rank: Unknown
timestamp: June 28, 2023, 08:48:32 pm
content: Quote from: MK14 on June 28, 2023, 08:39:37 pmYou are right, my girlfriend is now the user of my older PC, still nice and powerful that has now ended up with the same decent-ish GPU it had before, I upgraded to a CPU that was twice the cores and more cache but uses the same if not a little less power, then I got a second hand GPU that is 5 times more efficient than the one she now has and it's a mere couple of years between them.If it's just 2 PC's then yes, move on, if you want to build a farm, well then you are into a whole new level that i have no idea about.

author: gnif
author_rank: Unknown
timestamp: June 28, 2023, 11:30:11 pm
content: Quote from: MK14 on June 28, 2023, 07:16:47 pmLooks like a language barrier issue, however the OP is getting some attention from the mods as he is misusing the report to moderator feature now expecting us to know what's wrong with the report message "It's clear"...

author: SiliconWizard
author_rank: Super Contributor
timestamp: June 29, 2023, 01:40:02 am
content: People do couple themselves all the time around the world to make a new one.

author: magic
author_rank: Super Contributor
timestamp: June 29, 2023, 08:21:02 am
content: Actually, I think I have heard many years ago that some crazy people made patches to Linux to make a cluster of identical machines appear like one system with several CPUs. But if you think about the cost of migrating processes back and forth over network, accessing shared memory remotely, accessing PCI devices of other machines, it's simply insanity. (Wouldn't be surprised if half of those features weren't even supported at all, if that project ever existed in the first place, outside my imagination).

author: Simon
author_rank: Unknown
timestamp: June 29, 2023, 03:22:56 pm
content: You can cluster cPanel servers in order to have redundancy, but this is a totally different application that is very desirable and therefore had money put into it (by cPanel who charge licences). For raw computing speed the drawbacks will outweigh the potential gains. I'm sure that if someone had done something like this the internet would be alive with it as the opportunity for headlines of hyperbole is limitless.