Toshiba Claims New Algorithm Runs Faster on Desktop PCs than Similar Algorithms on Supercomputers
It purportedly even outperforms a laser-based quantum computer.
Toshiba announced that a quantum computing-inspired algorithm could outperform other similar (combinatorial optimisation) algorithms running on supercomputers, but while using the resources of a single desktop computer.
Its creator Hayato Goto, a senior research scientist at Toshiba, called it the “Simulated Bifurcation Algorithm” after noticing how the qualities of certain complex systems can suddenly change after new inputs are added, creating a phenomenon called bifurcation. A combinatorial optimisation algorithm attempts to extract an approximate (good) solution out of a high number of possible combinations.
After he first came up with the idea in 2015, it took Goto another two years to implement the algorithm in a way that it could efficiently sift through a huge number of possibilities, much like a quantum computer can. The difference being that it only required a desktop machine with off the shelf components to run it.
Goto also partnered with Kosuke Tatsumura, another Toshiba senior research scientist whose semiconductor expertise allowed the team to make the algorithm highly scalable. It can now work not just on a single computer, but also on clusters of server CPUs and FPGAs.
Using a cluster of FPGAs, Toshiba's algorithm proved to be ten times faster than a laser-based quantum computer, too, which is currently the fastest at solving a particular set of problems.
Quantum computers are meant to solve many of the same problems that this algorithm addresses, but so far, they haven’t become powerful enough to deal with large numbers of possibilities. In the meantime, scientists like Hoto continue to find new classical algorithms, some even inspired by quantum computers that can solve certain problems much faster than it was previously possible or with much lower resources.
Until quantum computers become more practical, Toshiba intends to sell access to its Simulated Bifurcation Algorithm to financial and stock trading companies, social networks, manufacturing companies, and any other company that needs to solve combinatorial optimization problems much more efficiently (and therefore more cheaply).
Stay On the Cutting Edge: Get the Tom's Hardware Newsletter
Get Tom's Hardware's best news and in-depth reviews, straight to your inbox.
-
bit_user
You could write some seriously fast code, using jump tables. Back in the day, at least... but maybe not so much, on modern CPUs.ron baker said:I was always told NEVER to use GOTO in programming ... maybe thats why its faster ?
From a source cited in the article:
Details of the new technology are published in the online academic journal Science Advances.
The Simulated Bifurcation Algorithm harnesses bifurcation phenomena, adiabatic processes, and ergodic processes in classical mechanics to rapidly find highly accurate solutions. Toshiba derived the principle from a theory of a quantum computer proposed by the company itself. This discovery in classical mechanics inspired by quantum mechanics is an academically interesting, highly novel result that suggests the existence of unknown mathematical theorems.
So, um, I think it's more than just GOTO's. -
nofanneeded ron baker said:I was always told NEVER to use GOTO in programming ... maybe thats why its faster ?
What "goto" ? you call libraries "objects" in Programming. goto ??!!?? how old is that? -
Rdslw
~20 years now (since its dropped, ~50 since introduction). AND goto is not optimized by branch prediction so you will go back with performance to pentium 4 days, and probably end up with few memory security issues.nofanneeded said:What "goto" ? you call libraries "objects" in Programming. goto ??!!?? how old is that? -
bit_user
C still has it.Rdslw said:~20 years now (since its dropped, ~50 since introduction).
goto should just compile into a jmp instruction. There's nothing to predict - it's not conditional.Rdslw said:goto is not optimized by branch prediction
There are two basic problems with goto:Rdslw said:so you will ... probably end up with few memory security issues.
It tends to result in messy, hard-to-follow control-flow. This is the main reason it fell out of favor.
It doesn't play well with object scoping, leading to potential memory & resource leaks.It's not inherently bad for security, although anything which makes code more buggy or harder to understand/maintain will also tend to have security implications.
If you want something that really melts your mind, check out setjmp()/longjmp(). Try using that correctly, in C++. -
TJ Hooker Uh, I believe the "GOTO" reference in the first comment was just a pun based on the researchers name...Reply
Hayato Goto -
bit_user
Ah. Ha! Good one.TJ Hooker said:Uh, I believe the "GOTO" reference in the first comment was just a pun based on the researchers name... -
StewartHH ron baker said:I was always told NEVER to use GOTO in programming ... maybe thats why its faster ?
You realize in the end all programming eventually uses GOTO but more specifically JMP instruction in the CPU. But I think you are referring to GOTO in BASIC or specific situation for error handling I C -
ron baker Code snippetReply
GO JMP(inalake) .
Yes surname .. LOL
Does InTel use C++++ to program their new CPU's ?