[Interest] Quantum Computing and Qt
Roland Hughes
roland at logikalsolutions.com
Sun Jul 9 23:03:51 CEST 2017
Ah Jean,
>Quantum computing only solves a *very* specific set of problems
People have said that over and over and over and over again about pretty
much every advance in computing.
Computers only solved *very* specific encryption problems (Enigma
cracking) http://www.cafedvd.com/code/327947.html
Then Computers only solved *very* specific artillery trajectory problems.
During the early IBM days computers only solved *very* specific problems
for very big companies.
Let's not forget the Cray years with the custom add in card for the VAX
11/780 so the midrange could be used as a front end to load the
machines. That type of processing power was only for *very* specific
computing problems.
I actually like this blurb from Wikipedia
<https://en.wikipedia.org/wiki/Cray-1>.
=====
The 160 MFLOPS <https://en.wikipedia.org/wiki/FLOPS> Cray-1 was
succeeded in 1982 by the 800 MFLOPS Cray X-MP
<https://en.wikipedia.org/wiki/Cray_X-MP>, the first Cray
multi-processing computer. In 1985 the very advanced Cray-2
<https://en.wikipedia.org/wiki/Cray-2>, capable of 1.9 GFLOPS peak
performance, succeeded the first two models but met a somewhat limited
commercial success because of certain problems at producing sustained
performance in real-world applications. A more conservatively designed
evolutionary successor of the Cray-1 and X-MP models was therefore made
by the name Cray Y-MP <https://en.wikipedia.org/wiki/Cray_Y-MP> and
launched in 1988.
By comparison, the processor in a typical 2013 smartphone performs at
roughly 1 GFLOPS.^[6] <https://en.wikipedia.org/wiki/Cray-1#cite_note-6>
=====
I distinctly remember hearing people say "Nobody but NASA could ever
need a Cray" yet here we are. Your identity theft enabling device (Idiot
Phone 7 or whatever) lands smack dab in the Cray horsepower range
providing both vector and scalar processing.
Then we have this rather disturbing Ted talk.
https://www.ted.com/talks/jeremy_howard_the_wonderful_and_terrifying_implications_of_computers_that_can_learn/transcript?language=en
Actually I think that is the talk, but it was the radio show discussing
unemployment and universal basic income where they brought this guy back
in and talked about machine learning, robotization (sp?) and the fact 2
years prior he was writing deep learning machines to create other deep
learning machines. The created machines took quite a while and were easy
to understand. Now they've reached a point they (the current deep
learning machines) generate multiple other deep learning machines per
day and nobody has any idea what they actually do. If I stumble across
the Podcast I will provide the link. It was quite an interesting radio
episode.
Let's bring up one more computer design which could only solve a *very*
specific group of problems, The Connection Machine.
https://en.wikipedia.org/wiki/Connection_Machine
During the 1980s when I was young and dumb and full of ... whatever ...
the trade press was gaga about the connection machine and the raw power
of it. While I'm sure many hardware geeks will decry this simplistic
definition it was a master CPU which loaded N other CPUs with work, told
them to execute then collected the results and repeated until there was
no more to be done.
Please allow me to pose what I consider to be 2 examples:
Today in multiple computers in my office I have NVidia cards containing
384 CUDA cores. I spent less than $80 on each of those cards. I want to
say they were $35 each new, but don't have the receipts handy. One of
the machines has a single core CPU, another a quad-core and another a
6-core. I put the cards in because I run BOINC on all desktop machines.
There inside each of those cases is basically a Connection Machine. The
CPU moves data to the card memory, configures the cores to do something
via the driver, hits the execute now button then somehow collects the
results. I'm not just looking for ET I'm fighting Ebola, AIDS, some kind
of clean water project and about half a dozen other things.
Our second example is really BOINC itself. The server issues work to N
clients. They do this work and either return the packet within the
window or not. Each packet is just a piece of a much bigger puddle of work.
A new tool is always for a *very* specific problem or set there of. Then
we as humans and programmers learn to think differently about the
problems we are trying to solve
---
When I used the word Rendering I probably used an incorrect phrase. I
was thinking from the high level, CGI, animation, gaming. It's been a
while since I delved into that world. I've been mostly on battery
powered things without a GPU so we cache all of our images in memory and
BLIT them onto the screen when needed.
Lets consider two of the most disgusting things in Qt.
1) All painting has to be in the main event loop.
2) QML
When you don't have GPU and need to create all of your images ahead of
time this is a real pita. There are now ways to get around it, but it is
still something of a PITA.
Putting it in simple terms which might not be implementation accurate,
QML tries to dumb down the process of putting a box which will become a
button on the screen handing the heavy lifting off to a scripting
engine. Ultimately there is some kind of paint method which draws or
loads the image into an off screen area which is then suddenly place on
screen.
When dealing with widgets there are styles and widget specific paint
methods creating a common look and feel across the application and
usually the desktop if running on a desktop.
What if this didn't happen on the soon to be prevalent Quantum computing
devices? What if one of those deep learning machines was autogenerated
with a mission to create every kind of image a paint method could
possibly draw and scatter them around the Internet with some kind of
encoded URL such that at boot time the Quantum pulled them in and
blitted them on demand? Without the Internet part this is basically the
solution I've had to utilize time and again on battery operated devices
sans GPU.
How about the realm of CGI for movies and gaming? Today much animation
is a series of images rotated through like a movie on the DVD player.
Some computer animations use the hand drawn cartoonist trick of partial
images overlaying a base image to create the illusion of movement. What
if the Quantum and its fuzzy values could actually just move a persons
arm by changing the states without having to do all of the CPU/GPU
intensive repainting.
>Also, keep in mind that quantum computing gives *approximates* result.
So if your boss is okay with 2+2 being 4 only 99.9 percent of the time
you can proceed with qubits.
We've had to deal with this ever since IEE floating point was
introduced. Zero is almost never an actual zero.
Since IBM is building the first commercial Quantum computers there is a
strong bet one of the first languages ported to it will be COBOL.
Massive installed base with COBOL and most of the Big Iron boxes
provided hardware for packed decimal calculations. The language also had
assumed decimal places. One of it's biggest strengths and (from an
embedded perspective) weaknesses was no Boolean.
05 ARE-THERE-MORE-RECORDS PIC X.
88 THERE-ARE-MORE-RECORDS PIC X VALUE 'Y'.
88 THERE-ARE-NO-MORE-RECORDS PIC X VALUE 'N'.
Been a long time since I did COBOL and the 88 may not have had a PIC
clause. What matters is that every flag type value could potentially
have numerous values limited only by the width of the underlying datatype.
During the very early days of C we did not have a Boolean datatype, not
really. Header files had things like
#define TRUE 1
#define FALSE 0
I may have spent too much time in the pool and sun today, but, as I
recall, during the _very_ early days the following was problematic.
if (x)
{
// do something
}
else
{
// do something different
}
some compilers implemented this as if (x > 0), some if (x != 0) and a
token few if (x == 1)
Today we currently have a standard and I don't bother to learn
underlying implementations. It has been a long time since I felt the
desire to test out
int x = -1;
if (x) ...
x = 0;
if (x) ...
// flip sign bit on x
if (x) ...
Once Quantum starts shipping it will once again be a prudent test if it
means 1-1 does not yield a true zero because neither 1 will be a true
binary 1.
At any rate, with both Windows Mobile and Android going the way of the
Wang computer Qt will first have to straddle close but different
versions of Fuchsia given both Google and Cannonical have their own forks.
Btw, in that Ted talk transcript I noticed they speaker flagged Google
as the first successful commercial AI for Web crawling. This would be
incorrect, but the speaker appears much younger than I. The first was
created by Digital Equipment Corporation and it was AltaVista.
>Reminds me of Nokia, they kept saying windows phone will succeed. Too
late.
Don't remember who said that, but, Nokia was actually in financial
trouble before the move to Windows Phone. Microsoft showed up with a
checkbook forcing Nokia to abandon Qt. The person with the checkbook
keeping the company afloat put their hand inside of the puppet and made
it say Windows Phone/mobile would rule all.
On 07/09/2017 04:53 AM, Jean-Michaël Celerier wrote:
> That Independent article is dumb as ass. Quantum computing only solves
> a *very* specific set of problems; for instance doing queries on a
> database may be made quite a lot faster, and linear optimization
> problems (which are so common it's not even funny) will see a great
> improvement with it, but writing the rendering code of a web browser
> would suck horribly.
>
> Also, keep in mind that quantum computing gives *approximates* result.
> So if your boss is okay with 2+2 being 4 only 99.9 percent of the time
> you can proceed with qubits. (of course this is a dumb example, but
> AFAIK current state of the art experimental linear optimization
> algorithms have a fidelity ~ 98.5%).
>
>
> Best,
> -------
> Jean-Michaël Celerier
> http://www.jcelerier.name
>
> On Sat, Jul 8, 2017 at 10:08 PM, Roland Hughes
> <roland at logikalsolutions.com <mailto:roland at logikalsolutions.com>> wrote:
>
> >Qt company belive that qml is the best thing that happened to qt.
> So many years have passed and we still see this.
> >
> >Reminds me of Nokia, they kept saying windows phone will succeed.
> Too late.
> >
> >Problem is that unlike windows phone Qt has no serious
> compitition (well wxwidgets is not that level). So Qt can live longer.
> >
> >I miss QWidget.
>
> Just an FYI, Microsoft has issued an End of Life for Windows
> Phone/Mobile without a replacement option. Google is in the
> process of abandoning Android and its butchered underlying Linux
> OS for Fushcia and Cannonical has their own fork of Fushcia (sp?)
> after Unity basically failed.
>
> A later post on this list talks about the movement to put Qt's
> core features including a Moc like step into the C++ standard.
> It's just white papers, lecturing and grumblings right now but
> should not be long before it turns to pitch forks and torches for
> the angry mob.
>
> I'm just too old. I've seen too many of these frameworks start out
> with great promise then get pulled down a rabbit hole as they try
> to be all things to all people, whoever "all" is defined as at the
> moment. CScape, Zinc, etc. Heck, even Watcom took a stab at it
> with their OS/2-DOS-Windows platform and IDE and when Novell,
> their biggest customer by far, had a brush with the bankruptcy
> reef, Watcom went away. It now even looks like the OpenWatcom
> project has faded into the sunset.
>
> Very soon, like within the next 8 years, the x86 based world of
> INTEL and ARM will be relegated to embedded devices. IBM is going
> to release their first Quantum computer with API in 2018. IBM will
> naturally try to scale it up to the Big Iron world of old while
> other companies will try to scale it down, first to midrange
> computers, then desktops. If you are really old like I am you
> remember a time when we had feeble 8086, 80286 based desktops and
> just down the hall there were Sparc Stations and all of these
> other high end engineering workstations. History is about to
> repeat itself. The "cloud" built out of low end x86 blades and
> racks will be replaced by a massive Quantum computer or 5.
> Development machines will be smaller Quantums for "engineering
> workstations" and PC based machines will be viewed as quaint
> antiques like mechanical adding machines.
>
> http://www.independent.co.uk/life-style/gadgets-and-tech/news/ibm-quantum-computer-how-work-commercial-api-faster-q-systems-computing-a7613271.html
> <http://www.independent.co.uk/life-style/gadgets-and-tech/news/ibm-quantum-computer-how-work-commercial-api-faster-q-systems-computing-a7613271.html>
>
> According to that the first generation unit will be millions of
> times faster than today's tech and it is not a white paper theory.
> The machine is being tested now with various dates in 2018 floated
> for production. Oddly enough I haven't read anything about Quantum
> disk drives. It's all well and good we can now have a Boolean
> holding as many states of true and false as today's 64-bit
> integer, but, if the spinning platter of rust we need to store on
> cannot....
>
> I wonder if we will see them bring back The Brick phone just so we
> can get a big enough battery.
>
> https://upload.wikimedia.org/wikipedia/commons/thumb/7/74/DynaTAC8000X.jpg/220px-DynaTAC8000X.jpg
> <https://upload.wikimedia.org/wikipedia/commons/thumb/7/74/DynaTAC8000X.jpg/220px-DynaTAC8000X.jpg>
>
> Within 3 years of Quantums going full production the same thing
> will happen which happened before. Mechanical, biological and
> chemical engineers will clamor about needing the speed on their
> desktops and _someone_ will scale it down to create sub $100K
> engineering workstations. The x86 world cannot scale up to
> compete. In the past INTEL and the big CPU makers were competing
> in the same arena. Both were trying to scale, pack and cool to
> increase speed. Occasionally one manufacturer invented a new
> compound which allowed the next major leap in processing power,
> eventually plateauing and opting to stacking more lower powered
> cores in the same or a reasonable amount of space.
>
> What much of the world calls a "smart phone" will have to follow
> suit, not because the apps need to be able to dynamically
> calculate how to turn lead into gold but because the graphics
> world, driven by Hollywood and television makers will start
> deploying Quantums for dynamic image generation. In a very short
> period of time the displays you now consider beautiful will look
> like DOS text graphics of the 1980s. Personally I prefer that
> interface for many types of applications. Seriously, just how
> pretty do you need your word processor or email client to be?
> Wont' matter. The consumer will want the same amazing experience
> on every device. The image file standards we have today will
> simply go away, replaced by Quantum data fed into an image
> rendering library on a Quantum core.
>
> Sorry, I guess I need to mindlessly vent. This happens when I
> decide to read email I've been putting off instead of writing
> another book when I know I should be writing the book.
>
> --
> Roland Hughes, President
> Logikal Solutions
> (630)-205-1593
>
> http://www.theminimumyouneedtoknow.com
> <http://www.theminimumyouneedtoknow.com>
> http://www.infiniteexposure.net <http://www.infiniteexposure.net>
> http://www.johnsmith-book.com
> http://www.logikalblog.com
> http://www.interestingauthors.com/blog
> <http://www.interestingauthors.com/blog>
> http://lesedi.us/
> http://onedollarcontentstore.com <http://onedollarcontentstore.com>
>
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org <mailto:Interest at qt-project.org>
> http://lists.qt-project.org/mailman/listinfo/interest
> <http://lists.qt-project.org/mailman/listinfo/interest>
>
>
--
Roland Hughes, President
Logikal Solutions
(630)-205-1593
http://www.theminimumyouneedtoknow.com
http://www.infiniteexposure.net
http://www.johnsmith-book.com
http://www.logikalblog.com
http://www.interestingauthors.com/blog
http://lesedi.us/
http://onedollarcontentstore.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20170709/3f7ab17e/attachment.html>
More information about the Interest
mailing list