[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