31
$\begingroup$

I have a magitech system where instantaneous processing power is much more important than long term processing power.

In my world, magic is cast by using compute power to communicate with a supernatural entity, who then rewards users with magical power. For handwavy reasons, you can't 'store' this power for much longer than a few seconds (so you can't cast a super powerful spell by using a datacenter for a year). Any improvement in clock speed would give a mage a proportional improvement in spell power.

With modern day technology, could CPUs or some sort of compute unit be made that are essentially "disposable" but can run at much faster speeds (faster than a compute unit designed to last a long time)? I imagine these would be used for a duration of around 1-5 seconds.

$\endgroup$
16
  • 17
    $\begingroup$ For future reference, this is basically a straight up ordinary modern technology question, which, oh by the way mentions "magitech" as a red herring to get it by the censors. Do check out the tour and help center and also what Worldbuilding is all about. We're here to help you with the fundamentals of building up your fictional world and not so much real world tech questions that don't really have good context behind them. $\endgroup$
    – elemtilas
    Aug 3, 2020 at 1:43
  • 11
    $\begingroup$ Sorry, I thought that worldbuilding would be the right forum for this question as there isn't really any sort of demand for this sort of product in the real world, so it was difficult to find any information regarding it. $\endgroup$
    – Tess
    Aug 3, 2020 at 1:49
  • 3
    $\begingroup$ Hey, it's magitech, right? if you want it, DO it! "Well, magical overclocking works differently..." Besides, I had a friend who claims to have done something similar. He hooked up his processor to a car battery, and we worked in a lab with liquid nitrogen. He CLAIMS it worked amazingly - until the liquid nitrogen vaporized and it exploded. $\endgroup$
    – DWKraus
    Aug 3, 2020 at 6:34
  • 3
    $\begingroup$ Instead of a CPU, why not a few GPUs? For easily paparelizable tasks, you can get a huge speed improvement from it, for massive data amounts. That's what they are good at. Processing large chunks of data with little to no logic. $\endgroup$ Aug 3, 2020 at 9:38
  • 4
    $\begingroup$ I really disagree that this question needs to be closed. It's asking about principles of technology and engineering, yes, but in order to produce a result that cannot be found anywhere in this world. OP could have done a little more worldbuilding in the question to make that clear but honestly this is still very much on topic in my opinion. $\endgroup$
    – KeizerHarm
    Aug 3, 2020 at 18:05

20 Answers 20

38
$\begingroup$

An Answer from an EE...

Yes.

Now, to quote one of my favorite movies...

Can you launch an ICBM horizontally?

Sure! Why would you want to? (The Hunt for Red October)

You obviously have a purpose in mind, but without knowing that purpose we can't answer the other half of this question — does it make sense?

CPUs today can run at least 10X of their posted speeds. The problem isn't clock generation or operational tolerances.

It's heat

Which is why there's a difference between super computers and your laptop PC. Your average multi-core PC would work fine to render Hollywood-grade CGI — if you could get the heat out of it. The substrates, mounting, and packaging used to let CPUs operate that fast are anything but cheap. And it's the packaging that needs to change, not just shifting from fans to liquid-cooled heatsinks.

But, does that matter? You haven't told us what clock speeds you need. If you need to 100X the clock speeds you're out of luck (unless the NSA has come up with something I don't know about, and since I have no security clearance at all, that's a good bet). Think about it, even at 100X, you're talking about a CPU doing in 1-5 seconds what a "normal" CPU would do in 1.67 - 8.33 minutes. What CPU-centric task would matter in such a short shift of time? Not cryptology. You'd need something closer to 10,000X, which isn't possible (that I know of) with current tech.

But that shouldn't stop you. Use my basic description to get the cycles up and "make it so." Your average reader won't know the difference, and the EEs of the world will happily overlook this kind of techno-shortcut for the sake of a good story. Remember: a bad story won't be saved by all the technical accuracy in the world. A good story doesn't need it.

$\endgroup$
1
  • $\begingroup$ Comments are not for extended discussion; this conversation has been moved to chat. $\endgroup$
    – L.Dutch
    Aug 11, 2020 at 12:32
23
$\begingroup$

Yes and no

Modern CPUs already do what you're suggesting and that's called boost mode, but there are limits that will result in diminishing returns. You will not get 10X as someone else posted.

There are multiple failure mechanisms that can cause the CPU to age, which result in reduced performance or outright failure: Electromigration, Temperature-Dependant-Dialectric-Breakdown (TDDB), Negative/Positive-Bias-Temperature-Instability (NBTI/PBTI), Hot-Carrier-Injection (HCI), etc. CPUs are designed with enough margin to tolerate these aging effects and still meet the advertised freq for X years of use. Most of these are exacerbated by high voltage and high temperature, so running at a higher voltage to achieve a higher frequency will shorten the lifetime of your CPU below the designed lifetime (This is why I don't buy second-hand GPUs, which are often overclocked for bitmining) So from that aspect, yes, you can overclock and achieve higher clock frequencies than the CPU manufacturer intended, albeit with a shorter life.

However there are other factors which will cause diminishing returns. As you increase the voltage, you increase the saturation drain current of the MOSFET, which is what allows for a faster switching time and thus a faster clock. However higher voltage does not make the wires in the CPU faster. Long transmission line wires within the CPU have an RC time constant that are independent of the voltage, so as you raise the voltage, eventually your frequency will be limited by all the wire dominated timing paths in the design.

Then finally there are factors which will put a hard ceiling on your max voltage. Increasing the voltage will increase parasitic leakage currents in the design, leading to latchup. Latchup causes your MOSFETs to drive uncontrollable current, and will cook your CPU to death. We use well/substrate contacts to avoid latchup, but we only design for a specific max voltage.

Another concern could be Drain Induced Barrier Lowering (DIBL), where as you increase drain voltage, it reduces the already very short channel length. This reduces the threshold voltage, which increase source-drain leakage (heat) and limits the ability to control the transistor. Assuming you could pull out the heat, you could still fail from increased sensitivity to noise, and propagate a coupling noise failure.

I'm sure there's lots of other ways things could fail. Suffice to say....its waaaaay more complicated than "just remove the heat"

$\endgroup$
4
  • 1
    $\begingroup$ typo: Dialectric should be Dielectric. Nice answer, good details about extreme overclocking for current silicon processes. $\endgroup$ Aug 4, 2020 at 13:45
  • 1
    $\begingroup$ Is it plausible that a device could be designed specifically for millisecond bursts of high turbo? Small transistor size is necessary to keep gate-delays short, so IDK if it would be possible to mitigate leakage current and make devices more resistant to latch-up. Maybe some non-huge resistance to ground to sink that leakage current, or other process tweak? Such a chip might only be usable for short bursts, not on-but-idle because of the static power for every "on" transistor. But at extreme speed/voltage, dynamic power would still dominate static when crunching. $\endgroup$ Aug 4, 2020 at 13:51
  • 1
    $\begingroup$ Perhaps some semiconductor other than silicon could handle much higher temperatures, but have more electromigration and other "aging" effects that make it unsuitable for normal use. Having a higher temp ceiling (above ambient) would give you more room to use the thermal mass of the chip itself to absorb energy from a burst of computation. $\endgroup$ Aug 4, 2020 at 14:44
  • $\begingroup$ You can swap out the clock crystal, like in a 8085. It should have a quarzfrequency of around double the megaherz number. $\endgroup$
    – user59660
    Aug 6, 2020 at 9:24
19
$\begingroup$

I have a magitech (...)

Well, we live in the age of smog computing - the smog being that mythical place where computing takes place, which is actually someone else's data center. Like when you write "it shall be engraved upon the smog" in your grimoire and then you can pick the enchantment up on your crystal ball from where you left, you know?

In order to make real fast processing unfeasible on the long term, put a price tag on it. Smalltender will lend you virtuous contraptions for usage in it smog, called "Blue", at an hourly rate - the more powerful the contraption, the more expensive it gets.

So you may be paying 5 pieces of Manacoin an hour for your magotech operations, but when you need some enchanting done fast you may need to use more perforated scrolls. No problem, access your records in Blue and temporarily rent a stronger contraption - or even a contraption plantation. That will cost you maybe a handful of Manacoins per hour, so this would only be feasible long term for the few wealthiest mages in the world.

$\endgroup$
5
  • 2
    $\begingroup$ I love the usage of words! Not sure you were joking or knowing, but mist computing actually is a thing :D $\endgroup$
    – Bergi
    Aug 3, 2020 at 17:52
  • $\begingroup$ @Bergi I didn't knonw of that! Now the joke makes no sense, I'll pick another term (haze). Thanks for the heads-up! $\endgroup$ Aug 3, 2020 at 17:59
  • $\begingroup$ No chance I guess - but neither of them are common terms $\endgroup$
    – Bergi
    Aug 3, 2020 at 18:23
  • 7
    $\begingroup$ @Bergi I'll try smog then. I remember that Stan Lee once said Dr. Strange's weakness iss technology: his magic cannot replicate the effects of any technology that has been invented, so as time passes Strange becomes less powerful. Now I understand why! $\endgroup$ Aug 3, 2020 at 18:27
  • 1
    $\begingroup$ Looks like mist, haze and smog are the rarest $\endgroup$
    – Bergi
    Aug 3, 2020 at 18:37
18
$\begingroup$

The simple fact is that the best CPUs today can't do much more than 8GHz for a top clock speed even if you invest insane amounts of energy in getting rid of the heat they produce, because heat is only part of the problem (it's the only part that actually destroys the CPU though). That's roughly double the clock speed of most modern CPUs, but that actually won't speed up your system all that much for reasons that I'll discuss after covering a bit more about the issues with the CPU itself.

Beyond just the heat, you have to deal with a couple of other issues:

  • Switching delays and propagation delays. Electricity moves at near the speed of light, but that's still not instantaneous, and some of the physical processes required for the operation of a CPU do happen slower than that (not much slower in most cases, but it's still slower). You can't solve this without scaling everything down even further than it is already, and we're darn close to practical limits of physical scale for reliable operation as it is.
  • Artificial limits for reliability. The simplest aspect of this to consider is cross-talk between individual traces in a CPU. If you've got two wires running in parallel very close together, than electricity flowing through one will induce a current in the other unless you take special precautions to prevent this. At the scale that CPUs are designed at, this is still an issue, and when it actually causes problems, you end up not with a destroyed CPU or a slow CPU, but an unpredictable CPU, because you end up with phantom signals in other parts of the CPU. Limiting the signaling rate can reduce the issues this causes, but of course slows down the CPU.

So, based on this, short of a radical redesign of your CPUs, you're not going to manage much if you want to be realistic.


However, as mentioned in passing above, just increasing your CPU's clock speed will not necessarily make your system compute things faster. In fact, the CPU is the single fastest part of any modern computer, and it usually spends a non-negligible amount of time waiting for the other parts to catch up. As a point of comparison, in a 'normal' commodity system (that is, not a DIY gamer build with everything overclocked), the effective signaling rate of the main memory is a little over half to two-thirds the nominal clock rate of the CPU. On really cheap systems you might see memory that is faster than the CPU, but that's not the common case by any means.

The reality is that a modern computer consists of dozens of different components that are running at different speeds doing different things, usually mostly asynchronously, and as a result just boosting the performance of one component will often not boost the performance of the whole system. GPUs for example normally run at no more than 1.5GHz clock speeds internally (and the norm is more like 0.8-1GHz), but this doesn't matter in most cases because they're super specialized for what they do and can process huge amounts of data in parallel (and the rest of your system does not sit around waiting on your GPU).

This, in turn, means that how well a concept like you're suggesting works depends on what components you're boosting and what you're actually trying to do. If your calculations are just a tight loop that can sit entirely in cache on the CPU, then boosting the CPU clock speed will help significantly, but otherwise it will often only have a small impact (usually in the form of reduced latency and not improved throughput). Similarly, if you're trying to render a super-complex scene but all the required data fits in RAM on your GPU, you can probably speed things up significantly by boosting your GPUs clock speed, but that won't help with almost anything else.

$\endgroup$
4
  • $\begingroup$ Of course the other side of this is that unless you're doing really compute-intensive stuff (or a bug in your browser causes it to thrash the system), you OS's CPU speed governor has probably throttled it way down, anyway. For instance, I'm writing this on a fairly old laptop, yet the CPU is running at 800 MHz, and even then using only 4% of capacity. (Per conky's cpu info.) $\endgroup$
    – jamesqf
    Aug 4, 2020 at 4:18
  • $\begingroup$ Ratio of core clock vs. memory clock is not the real issue. It's memory latency that normally costs most of the time waiting for memory, and that's still a big problem at 1.5GHz, like still a hundred core clock cycles or so to get all the way to DRAM on a load that misses in L1d, L2, and L3, and has to send a request over the memory bus. Fortunately, good caching can usually mitigate most of that, but when cache misses do happen they usually stall the CPU eventually, even with deep out-of-order execution capability like a modern Skylake. (224 entry ROB). $\endgroup$ Aug 4, 2020 at 13:58
  • $\begingroup$ @PeterCordes It depends on what you're doing. If your primary concern is stuff like DMA transfers to peripherals, memory clock speed matters far more than memory latency. And, for that matter, latency tends to be pretty consistently better at higher designed clock rates (usually the number of cycles of latency go up as you go for higher speeds, but they don't normally go up as much as the clock rate goes up). $\endgroup$ Aug 4, 2020 at 16:38
  • 1
    $\begingroup$ Right, memory latency has stayed approximately constant (in nanoseconds) over a wide range of memory clock speeds in the past decade or two. And yes, the slower your CPU clock is, the fewer core cycles a cache miss costs. My point was that bringing the core clock down to match the memory clock does not by any means make memory latency a non-problem. You still need large out-of-order execution resources to hide most of it. But yes, some problems with predictable access patterns can hide latency with HW prefetch, like a good cache-blocked matmul. That's common in scientific computing. $\endgroup$ Aug 4, 2020 at 16:51
11
$\begingroup$

Based on your comment to JBH it sounds like you want a once-off computational device with a real-world analogue that can be offered to eldritch creatures in exchange for a short term power (i.e. magic). To me it sounds like you want to look into measurement based quantum computing (also know as one-way quantum computing).

The way this works is that to perform an arbitrary quantum computation you prepare a quantum state $|\psi\rangle$ (called a cluster state or a graph state) and then perform measurements on the qubits (quantum bits) of that quantum state. Performing quantum measurements on single qubits is (relatively) easy, the hard part in this approach is producing and stabilising the state $|\psi\rangle$. Quantum computers are much faster for particular tasks (e.g. factoring prime numbers) and so could be considered a massive speed up of a CPU (something like 100,000 times).

With respect to your story you could make it that the mages are offering up cluster states for access to the magical powers of the eldritch creatures. If for some reason cluster states are naturally occuring in this reality, but not in the eldritch creature reality then this could make sense as to why they would be willing to exchange for magic (which might be just them introducing something from their reality, think Dr. Strange).

This does raise the question as to why the eldritch creatures wouldn't just set up their own factory in this reality to collect and use the states. However if they set up a (possibly dumb i.e. not human level of thinking) Artificial Intelligence to learn how to extract quantum computations from that reality it may have developed a bunch of rules that evolved a symbotic relationship between the AIs and the mages of the world, where the mages will signal the AI with one of a set of signals that it has a cluster state (I'm imagining a crystal) large enough for the cost of the spell, the AI will then use the cluster state for its computation (or check that it is large enough) and in response will introduce another signal or something else which disrupts the normal behavior of this reality enough to produce what is known as magic. On the eldritch creature side they may not realise that the mages actually exist, and may be using the mage's reality as a kind of cloud quantum computing service (though you'd probably need the mage's reality to be much faster than the eldritch creature reality for the AI to work out a system in an economically reasonable time).

This could also lead to some interesting effects, where different spells have been crafted over time as the AI tries to extract more cluster states and the mages have crafted the AI to perform whatever new kind of magic they want upon a given signal. This means every now and then you'd get weird magic occurring out in the open. It also gives the option for magic to stop working at some point or becoming inconsistent without destroying the self-consistency of your world with things like, the eldritch company goes bust, the AI discovered how to find the cluster states without them being pointed out by the mages, there is a reduction in demand for cloud quantum computing services or an over-supply of cluster state offerings from the mages and so the AI only services some of the calls for spells.

A couple of key things from a writing perspective, while I have kind of said this approach gives you free pass on changing the rules of magic, you should write your magic system so that it appears self consistent without understanding that there is an AI or a cloud quantum computing service attached to the magic system. However you could use this framework to develop a history of magic use or the magic system as long as it stays self-consistent (which a symbiosis of AI and mages would probably produce). A second thing is that you probably wouldn't want to use the term "cluster state" as the resource name since it isn't widely known, implies the mages have knowledge of quantum computing, and wouldn't really sound magical to the average reader. You could however drop the idea in later on if they happen to talk to the supernatural entity/AI.

$\endgroup$
7
  • $\begingroup$ factoring prime numbers - You mean factoring products of large primes, or factoring into prime numbers :P $\endgroup$ Aug 4, 2020 at 14:01
  • $\begingroup$ By that I mean determining what prime numbers divide a number, specifically "Shor's algorithm", since the hardness of working out what two prime numbers multiply to give a known number is the basis of RSA encryption. I'm use to hearing factoring primes or something similar when people talk about it and probably just threw numbers on at the end. $\endgroup$ Aug 4, 2020 at 17:45
  • 1
    $\begingroup$ I love this idea! The conceit that cluster states are more plentiful in our universe really clicks with me. Our universe is young and low-entropy, with big temperature gradients and a strong arrow of time—a place for complex structure to flourish. We have galaxies blossoming with suns, planets teeming with life, endless forms most beautiful overflowing with creativity. 1/3 $\endgroup$
    – Vectornaut
    Aug 5, 2020 at 3:36
  • 2
    $\begingroup$ The Elders live in the smoldering darkness after heat death, or the acausal chaos of a stillborn spacetime, or the inflationary madness beyond the pale of our fleeting vacuum bubble of sanity. How magical our lives must seem to them! We're glad to dance away our time crafting elaborately entangled states, and to pour our energy into stabilizing them. They live in a place where time is a mirage and energy is a hallucination. 2/3 $\endgroup$
    – Vectornaut
    Aug 5, 2020 at 3:46
  • 2
    $\begingroup$ But then again (it dawns on them, in their trembling flickers of lucidity), their world might hold a macabre fascination of its own. For we who know only starry, silky, sleepy skies, it could be a thrill to grasp the dying ember of a black hole, the roiling causality of a bifurcation phase droplet, the demonic power of an awakened inflaton. Would we not trade a few artfully entangled baubles for such an experience? Perhaps, perhaps, they could make some kind of a deal... 3/3 $\endgroup$
    – Vectornaut
    Aug 5, 2020 at 3:52
7
$\begingroup$

In many cases, the limiting factor for CPU speeds is not the fact that they will melt if run too fast, but rather that circuits take a certain amount of time to switch, and if some of the switches that need to switch before some event occurs fail to do so, the CPU will likely produce erroneous results. Additionally, if a circuit that needs to switch off before some other circuit switches on fails to do so, that may generate a momentary short-circuit condition called "shoot-through" which may not only cause erroneous results, but also cause substantial heating.

The MOSFETs (Metal Oxide Semiconductor Field Effect Transistors) used in modern processors switch more quickly at lower temperatures. Because of this, shoot through may lead to thermal runaway which, if unchecked, may cause a device to melt, but the device will have started producing erroneous computations before accutely-destructive temperatures were reached.

Disposable devices may be able to get by with less cooling than devices which would need to operate for sustained periods, but in order for a device to produce accurate results quickly, it must be kept cool. If a device would be barely able to perform reliable calculations at 4GHz when it's cooled to 0C, it would likely be unreliable if run at that speed at 30C, even though 30C would be well within the normal operating temperature range for the device at lower speeds.

$\endgroup$
7
$\begingroup$

With a twist? Sure. Let's call it...

Zeus' Wish.

You pray to the god of clouds, rain, thunder and lightning, and he gives you some valid burner cloud computing credentials.

These allow you to utilize AWS server farms on all regions around the globe at 100% processor usage until your credentials are revoked.

Best used with algorithms highly customized for parallelization.

Caution: Side effects include major power outages, global warming and exceedingly high energy bills.

(I know, it's not a single processor - but wanted to get the idea out.)

$\endgroup$
4
$\begingroup$

Quantum Computers

This is the basic principle behind quantum computers. They are much much faster than a normal processor at solving for certain kinds of problems, but also much more sensitive to introducing errors over time.

Quantum computers can do certain tasks billions of times as fast as the world's strongest super computers using traditional processors... however, most quantum processor designs become unstable in a matter of microseconds. Since they do not handle data in discrete units, this makes validation and error correction much harder than traditional processing allows for.

Quantum processors are not faster than traditional computers at solving for all kinds of problems, (a sequence of simple problems may still be easier for a traditional processor), but if you need to make a single very complex computation, that is where they shine.

The Catch

While Quantum computers are small (for a super computers) they do not have any portable analog to a modern PC processor using today's technology. Something like this IBM 50 qubit processor is far too large to fit in a mage's pocket for a convenient 1-time spell casting; so, there will need to be a bit of hand waving to say that your people can make these small enough to be practical... that said, since you are talking about your civilization having "magitech", I think it's reasonable to say your people have advanced enough to miniaturize them.

enter image description here

$\endgroup$
1
  • $\begingroup$ When you say quantum processes burnout in a matter of microseconds I think you are referring to decoherence, which means that a calculation is limited in how long it can run. This is fairly important since burnout makes it sound like you throw it away after that, but instead what happens is that you have to start a separate calculation after that period but it is reusable. $\endgroup$ Aug 4, 2020 at 20:47
3
$\begingroup$

Allow me to introduce the ultimate laptop. Current computing hardware is sadly extremely limited by the fact that most of its energy is locked up in the mass of the hardware, leaving a mere trifle available for computation. Efficiencies are made worse by using billions and billions of electrons to represent a single bit.

Not so for the best mages! By converting a larger portion of mass to energy and minimising redundancy, they can begin to approach the ~10^50 operations per second per kilogram physically possible. All we need is a small amount of mass converted, nanograms, picograms, and we can equal or exceed even the best supercomputers currently around.

Converting and then dissipating this energy is, of course, quite challenging even with magic, and the skill of a mage is very much measured by how big and how long they can keep such a computer running—once you're done with your spell, it is gone! Trying to keep your computer around for longer than your concentration allows is a sure recipe for singed eyebrows at the very least.

$\endgroup$
2
$\begingroup$

In terms of regular CPU's that are created today, not exactly. Today's CPU's can be overclocked either until the point the heat generated by them will fry the CPU or up to the theoretical maximum performance for any given unit of time due to the clock speeds. This also assumes the other hardware in the computer is functioning as fast as the processor.

There are different types of processing power, though. Generally computational performance is rated in Floating Point Operations Per Second (FLOPS). The higher FLOPS a processor has, the more powerful it can be. Cryptocurrency mining as well as AI advancements have taken off due to the rise in power of GPUs, which vastly outperform CPUs. A NIVIDIA Titan RTX GPU can provide 130 Tera-FLOPS of performance, while an Intel Core i9-10900k that can only deliver 1.696 Tera-FLOPS. This means that this GPU can outperform a CPU by 128.304 Tera-FLOPS. If we remove all other limiting factors from the equation, like heat generated, power consumption, physical space required, among others, then a server farm of these GPUs could give you seemingly infinite FLOPS to use any given second.

There are specialized compute sources, like Application Specific Integrated Circuits (ASICs), that are designed from the ground up for achieving one specific purpose in mind. For mining cryptocurrency, these are generally used to generate the highest possible FLOPS for the lowest cost. These compute sources do not rely on parts other than the ones specifically designed for it, so these could be viewed as disposable more so than regular computers.

$\endgroup$
2
  • 1
    $\begingroup$ ASICs can definitely give way better performance and at lower power than any CPU for the same task. The drawback is cost if you don't make a lot of them. $\endgroup$
    – user4574
    Aug 4, 2020 at 19:27
  • $\begingroup$ Most cryptocurrencies are based on integer problems so an ASIC wouldn't include any floating-point capability. e.g. BitCoin is based on finding an input that makes the 160-bit SHA-1 result have a lot of trailing 0 bits. Computer graphics does heavily use floating-point, which is why GPU computational capability for integer tasks is correlated with their FLOPS capability (they throw in integer ALUs because they're cheaper to build than FP ALU). If you really do just want raw FLOPS, GPUs are actually pretty well optimized for that, not far behind what an ASIC could do without memory handling. $\endgroup$ Aug 9, 2020 at 21:11
2
$\begingroup$

Yes, but also no, but also yes.

Can you design a piece of computing hardware that's designed to run processors until they burn out, at which point you return them? Absolutely. Can you do this for processing-heavy tasks? Yes.

But it won't be a CPU. A CPU is a central processing unit. Its main job isn't to do intensive processing, but to do central processing - running the operating system and environment, managing state, and generally making sure that everything is happening in order and data is being sent to the right place. Because these are critical operations, if your CPU runs hot enough to cause errors in computation (let alone damage itself) your whole system can lock up or be permanently bricked.

Instead, what you want is a peripheral designed solely to manage lots of computation with no consideration for the greater state of your machine. It gets mathematical questions, it gives mathematical answers. If one part of it burns out, the CPU can just keep asking until it gets a good answer. It turns out that you probably have a peripheral like this: this is how graphics cards work. A GPU has its own onboard memory, but it isn't concerned with running the operating system or anything else, it just crunches numbers.

It turns out that your idea is very similar to how people "mine" bitcoins (which is a bit technical but basically boils down to "do math as fast as possible"). A mining rig consists of many consumer-grade GPUs run in parallel, with a single CPU feeding them data and managing their output. As individual GPUs start to become unreliable due to their workload, they can be swapped out relatively easily.

$\endgroup$
2
$\begingroup$

There was a story on the net, many years ago. (Usenet era, I think.) A group decided to see how far they could overclock a 25MHz 486 (or maybe 386). They put the unit in a freezer, and started turning up the speed. It kept working. I don't remember how far they got it stable, but....

At one point, they accidentally pulled all the jumpers and turned it on. It ran successfully for about 5 seconds before burning out. As I recall, they calculated speed was 325MHz.

There is a somewhat newer (and less believable) version at http://totl.net/Eunuch/index.html

So, overall, I suspect your answer is: Yes, but it isn't worth the cost.

$\endgroup$
4
  • $\begingroup$ Even if a 486 processor was being clocked at 325 MHz, I doubt it was producing valid results. $\endgroup$
    – user4574
    Aug 4, 2020 at 19:24
  • 1
    $\begingroup$ Also, a 486 is a very different beast compared to the modern 4GHz CPUs. The later are much, much, much closer to the physical limits than a CPU built in the '90s. $\endgroup$ Aug 4, 2020 at 21:37
  • 1
    $\begingroup$ On Usenet there was some crazy 486 overclocking in 1994-1995. The Am486 DX2 clock speeds scaling so high over Intel's processors made for a fun vendor fanboy war. That whole approach kind of fell apart when the Pentium 4 design failed to reach 5GHz without liquid nitrogen levels of cooling. $\endgroup$
    – Greg Smith
    Aug 5, 2020 at 20:15
  • $\begingroup$ Even liquid-nitrogen cooling can only less-than-double the clock speed of modern CPUs. Vast changes in what kind of limits you run into have happened between 486 and Skylake or Zen2. (IDK what kind of GPU overclocking results have been achieved; they tend to run at lower clock speeds than CPUs, sitting not as far above the sweet spot for energy per computation. vs. CPUs pushing hard into the diminishing returns of energy efficiency to optimize for per-thread performance.) Essential reading: Modern Microprocessors A 90-Minute Guide! $\endgroup$ Aug 9, 2020 at 21:15
2
$\begingroup$

As OnoSendai alluded, cloud computing is the answer. Unlike they implied, stealing it is not necessary.

Amazon, Google, Microsoft, or any number of lesser-known cloud computing providers, will sell you all the instantaneous computing power you can afford, today, with very little preparation. Exclusive machines not shared with other customers are more expensive, but available and not even that weird.

They're limited, but Gargantuan - if your workload is less than Gargantuan, they'll be able to handle it. Thousands of exclusive machines with no notice sound feasible to me, and you may combine providers for an extra order of magnitude. One to five seconds seems too short, you may have to pay for the time it takes to allocate and de-allocate a resource, and wait for the allocation. But we're talking seconds, not minutes. If you're big and profitable enough, you may be able to negotiate a custom process in a matter of weeks or months.

The catch is that some computing problems, but not others, can be processed in parallel - split between different computers. See https://en.wikipedia.org/wiki/Parallel_computing

Please consult a computer scientist or programmer with the relevant experience as to whether any given concrete problem can or cannot be be processed in parallel. If your story's application is sufficiently vague, it's fine to just decide that it can.

$\endgroup$
2
$\begingroup$

Based on my experience having designed lots of digital logic over the past couple decades, you can make faster chips. But you can't do it by just running existing chips faster than they were designed to work. You have to come up with faster transistors and circuit designs.

You can't do it by just running existing chips faster
The heat produced by a modern CMOS based processor is proportional to its operating frequency. Running it at say 2X its rated speed would produce double the heat. All objects have thermal mass, so they take time to heat up. Double the heat would be fine for a short duration. So in that sense it could be done.

You can even extend the time by increasing the thermal mass. For example by making an insulating oxide layer on the back of the silicon and then attaching a piece of copper to soak up the heat.

The real problem is that it takes a certain amount of time for transistors to switch on/off, and for signals to propagate. It is the register to register timing that ultimately determines this frequency. If you take a processor made to run at some maximum frequency, and then run it at double, you will will probably get lots of corrupted calculations. Even one bad calculation is often enough to destroy the operation of a computer program.

For example, consider a multiply circuit fed by a pair of input registers and ends at an output register. Lets say that it takes 1 nanosecond for the inputs to propagate through all the logic to the output register. Then you can at maximum clock the circuit once per nanosecond (a 1GHz max operating frequency). If you try and clock it at say 2GHz the output register will just have garbage in it.

Most chips have some timing margin built in to the advertised operating frequency, but at most you are going to get around 20% more computing power by over-clocking, nothing too game changing.

The only way to make a CMOS processor run faster is to get faster transistors or circuit designs.

Use super-conducting CMOS processors
TRW corporation once had a superconducting processor project that aimed to do just that. MOS transistor gates are essentially capacitors with some series resistance. The outputs of MOS transistors essentially look like resistors when they are switched on. The amount of time it takes for the transistors to switch each-other on is in large part controlled by the product of the gate capacitance (C) and driving resistance (R).

If you can make R = 0 by using super conductors then the only thing limiting you is that charges take some time to move, and the fact that electromagnetic fields are limited to propagating at the speed of light. That method can theoretically make very fast chips. But it requires super-conductors, which in turn requires cold temperatures.

If you only need it for a short time, then you could have an insulating case (like a thermos, or aerogel material), about the size of a small drinking flask, filled with liquid helium or liquid nitrogen as well as your small computer. As long as the processor was off, you could carry the container for days. At any time you could switch on the device and run it until your coolant heated up too much for your super-conductors to work.

The user interface doesn't need to be any more complicated than a cheap smart phone and is on the outside of the insulation barrier and connects to the processor inside the cold area.

Quantum computers are large, but they don't have to be...
Most quantum computers are very large. For example the D-Wave quantum computers are the size of a room and have a very large refrigeration system. The fact is, these systems don't need to be so large. They are designed to be the size of a room because they are experiments, and as such its useful if two or three scientists can walk inside and debug stuff. Also most of the components are off the shelf rack-mount equipment, because the quantum-computer company wants to work on the quantum part of the project rather than distracting themselves by designing lots of custom peripheral components.

The actual quantum processor in these systems is the size of a postage stamp. And if you skip the refrigeration system and just use some temporary portable coolant, it could fit in your pocket.

Use a remote computer.
You can of course also have a computer of any size somewhere else and simply connect to it. The processing is done remotely and the answer is sent back to the user almost instantly. This is the essence of "cloud computing". The only downside to this approach is that someone can jam your communications. Or disable your data center without you knowing it, and then whey you try to use your device you are out of luck.

Use more efficient computer architectures
DARPA has program called SYNAPSE that contracted IBM to develop a chip called TrueNorth which was a neuron like computer chip. This chip was significantly more energy efficient than conventional CPUs. It could perform the equivalent of hundreds of millions of multiply accumulate operations per second on as little as 60mW of power. They did a demo chip with 256 neurons, and then scaled it up to 1 million neurons with the next version. There is no reason they couldn't go up to a few billion neurons and totally outperform any other conventional computer out there in terms of energy efficiency.

http://www.research.ibm.com/articles/brain-chip.shtml

$\endgroup$
2
  • $\begingroup$ Good background on CPU architecture and what the design limits are for current CPUs (and GPUs): Modern Microprocessors A 90-Minute Guide!. Note that raising voltage makes the same transistor switch faster (but power scales with V^2 because the load is capacitive). So up to a point you can boost frequency, and voltage to match, with total power scaling with f^3. The thermal mass of a silicon chip is tiny, though, so this is not sustainable for more than milliseconds beyond the thermal power you can conduct out of the chip. $\endgroup$ Aug 9, 2020 at 21:18
  • $\begingroup$ Superconducting CMOS could in theory move all power dissipation outside the CPU itself, into the power supply or voltage regulators. (If the entire thing was fully superconducting, and went from infinite to 0 drain-source resistance with no in-between). The only thing limiting current to finite levels would be inductance, as a transistor charges or discharges the parasitic capacitances of its output. This sounds like magic, though. You'd probably have at least some leakage current (high but non-infinite resistance when not superconducting), and some non-zero resistance while switching. $\endgroup$ Aug 9, 2020 at 21:28
1
$\begingroup$

Yes and No

Ok you have instantaneous processing power so overclocking really means squat so you build in planned obsolescence. The CPU could run for a million years so you introduce a part that will break after X amount of time or Y amount of CPU cycles.

The reason for this is so the customer need to keep coming back to you for more. There's real no profit in something that lasts.

$\endgroup$
1
$\begingroup$

With modern day technology - no.

An overclocked CPU will overheat and malfunction pretty quick. But this malfunction almost certainly won't be fatal. After cooling down, CPU would be good to run again.

$\endgroup$
1
$\begingroup$

The great think about magic is that it can do whatever you want it to do. To make today's CPUs run faster, your magic needs to affect physics to:

  • Remove or at least greatly reduce production of heat.
  • Speed up the switching time of the transistors.

If you can locally affect how physics work, then both should be possible. Lets say that once the spell is over, the changes swing the other way and all the heat is returned, which destroys the CPU.

Another thing to consider is that if you are speeding up only the CPU, then the memory and other peripherals will be still slow. The CPU may still access them, but it will be horribly slow, so it should be limited to only loading inputs at start and saving results at the end. Your main computation must operate strictly on the data in registers and in-CPU caches. Programmers try to do that already in performance-critical code today, because access memory is relatively slow even for CPU that wasn't magically enhanced.

It may be good idea to have a multi-CPU system, where the disposable overpowered CPUs are used as a kind of co-processor to the main CPU. The main CPU is regular processor that is not overpowered and is not destroyed. The main CPU runs our OS and the mundane tasks and it offloads the specific tasks to the disposable CPU. You can hot-swap the destroyed CPUs without stopping the computer! You could have them in some fire-proof heavy-duty socket and mechanical arm that will throw away the burned CPU and put in new one from a reel.

$\endgroup$
1
$\begingroup$

Yes, it is often possible to run a CPU above its temperature limit as specified in documentation. This may result unreliable work and shorter life span of the CPU but it does not crash immediately. Different individual CPUs from even the same series are likely to have varying ability to work "under stress".

For instance, my i7-3960X CPU has the maximal allowed case temperature of only 66.8°C. When overclocked, this particular instance can get as hot as close to 80°C and stay running reliably for multiple hours.

This is nothing incredible taking into consideration that generally similar but server grade Xeon E5-1428L is officially rated for this temperature (80°C).

$\endgroup$
0
$\begingroup$

Yes, but...

Most micros are constructed to be able to theoretically run at substantially more than their rated clock speed. What limits that speed is the micro's construction, and manufacturers actually have little (or at least limited) control over that. On the production line, manufacturers actually test micros to see what speed they can manage, and then sell them as a "1.2GHz", "1.5GHz" or whatever clock speed depending on what they manage during testing. The 1.2GHz and 1.5GHz chips may have come from adjacent chunks of silicon on a wafer, but they'll be rated for different speeds because each performs differently. And because there are a range of different speeds, the motherboard can typically generate any required frequency up to some maximum.

This is where overclocking comes in - you hook up extra cooling or whatever, crank up the clock speed on the motherboard, and watch her go. So yes, you absolutely can, and overclockers do it all the time.

And herein comes the "but...". How much extra do you think you can get out of this chip, how long does it last, and how long does it take to reload it for next use? Maybe you get 100 times the processing power for 1 second. If it takes longer than 100 seconds to reload, you're better to run slower. And that's before you consider the cost of each processor.

$\endgroup$
0
$\begingroup$

How about a semi-disposable system?

There have been plenty of answers about limits on how far you can push a CPU that basically preclude what you're after. Lets try a different tactic:

Go with the massively parallel approach we see in GPUs. You can get an awful lot more instructions per second this way--I believe there are graphics cards now that can get into the trillions of instructions per second.

However, we don't engineer this as a room-temperature device, but rather to operate at around 77K. There is no cooling system per se, the device is simply organized as a stack of wafers with space in between. To use it the processor array and it's housing is immersed in liquid nitrogen, this boils off in a few seconds when used and the device is useless until it has been replaced. (And remember boil-off if you're hauling these around.)

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .