What Applications Will Drive System Performance?
Foredecker asks: "Companies like AMD, Intel, NVIDIA, ATI and others are continuing to drive silicon performance to new levels. Of course, every day computing (basic web browsing, email, word processing, spreadsheets, personal finance, and the like) don't require a Intel 3.2Ghz P4 with Hyperthreading or a AMD Athlon 64 FX and their associated platforms. Of course, there are apps that will leverage today's high performance platforms. Games are an obvious category, as is video editing. I'm looking for apps that will be widely adopted and will drive volume hardware shipments. Things that come to mind are: effective, speaker independent voice recognition, accurate repeatable object recognition in digital photos and videos (or from live feeds such as web cams). What other application categories are there that will drive the need for bigger-faster-better hardware platforms?"
I mean, what the hell? This isn't the first time I've seen this kind of thing. Why are the guys who are hired to pinch pennies in corporate always the ones who aren't happy until their toilets flush with freshly imported springwater?
Anyone seen the system requirements for Longhorn/OSXI/KDE4? they're probably gargantuan.
no thanks
It's quite the resource hog.
Visualization (Rendering) ;-)
Distributed computing
Power to scale (1u capable of what only a current 2u can do)
Science
Encryption (Quantum, brute force cracking, etc.)
Databases (often overlooked)
Doom 3
Get paid to code OSS
Porn will lead us.
Massive amounts of storage, and fantastic amounts of cheap processing power will lead to a generation of smart capable web spiders capable of autonimously downloading and indexing porn while avoiding banners, advertisments, pop ups, P2P spam or crap-floods and duplicates.
The unibiquitious nature of regular porn will make it tame and uninteresting through sheer availability. This will lead a secret cabal of Japanese scientists (and school girls) to create ultra-porn which will require consumers to be at least a half century old. As the shocking depictions will require a cushion of life's experiences at least that substantial to avoid harmful or even debilitating side effects.
In the year two thousand....
Similarly, the applications running in curtained memory are going to stack up at an alarming rate once Longhorn and other platforms start to see pervasive digital rights management. As every bit of data being generated or passed from application to application is being tested against dozens of different filters, CPU time is going to go up in smoke, and it will be illegal to stop these activities from taking place in most countries.
Games and pr0n.
And pr0n games.
Those are the early adoptors of nearly all technology, and drive the prices to points where normal financially sane people can afford them. Half of all technology every invented was driving by one of those three groups.
For me personally, I use my desktop for lots, and lots of compiling. I'd like my desktop to be more responsive under heavy I/O load. I'd like it to do more things in the background. Personally, I've probably got enough CPU for my desktop. I found find a use for more, but I sure could use lots more disk I/O. I could use more memory also.
I'd like my desktop interface to be much more sophisticated, and to have a lot more context sensitive abilities. All that takes more CPU horsepower. The eye candy is nice, but that's not that interesting to me.
I'd like a desktop that supports 10 monitors. I'd like even more of a network transparent desktop then I have using X11. I'd like to have faster then GigaBit, which requires more CPU, more bus, and faster disks.
I'd like to be able to do lots, and lots of streaming realtime encoded TV signal for my home built PVR (encode 3-4, while playing one that has been paused thus having 5-10 minutes of latency in the playback). I'd like to see more ability to have low latency for specific tasks (music, TV encoding, multi-medial in general).
It's really expensive to build just a handful of CPU's. It's much cheaper to make them in huge volumes. Thus Intel and AMD makes them in huge volumes, and they sell pretty well to the consumer, and Intel makes a killing selling the CPU's, the chipsets, and the various electronic devices they either sell or license to others. So literally the thing driving more, faster CPU's is economics. You just can't buy the old CPU's any more. When you want a new CPU to replace a 5 year old computer, you have to buy a new one.
I'd like more ability to parse the natural english language. Thus facilitating better ability to write a content crawler that can point out urgent e-mails, while crawling the google cache finding content that I'd find amusing.
I'd like the ability to do more and better datamining. To correlate more information about my machines and servers. More ability to automate more and more task to with computer.
I could use more CPU power to use to secure my machines. If I could log every incoming packet and analyize more and more correlations, and deduce when people are doing bad things that'd be great. If I could use it to do more analysis of software and code. To develop more, and more sophisticated techniques of telling when software does something stupid.
I'd like it because it means, the construction of larger, and larger software applications is possible.
Kirby
But I suspect people programming these things are still looking at them going "Well, if we just had a bit more power, we could do X, Y, and Z". UT2003, for example, has pretty much no interaction with anything other than a handful of objects - you can't blow up a wall, for example.
We have a long way to go before we can go for something that's virtually a complete simulation.
You are not alone. This is not normal. None of this is normal.
subject says it all
Anyone else notice how a system will pause when you put in a cdrom or format a floppy? This goes away when you have an SMP system. HT enabled p4's also remove this to some degree.
I'd like to see some typical performance on these types of activities, things that can "pause" a system for a couple seconds.
Loading websites with tons of thumbnails, searching hardrives with/without indexes (search pauses explorer). Programs that can Spike the CPU, use up all the buffer on a device, peg out virtual memory, freezes programs so you cant switch between them.
More multitasking benchmarks with responsiveness being goal. All benchmarks I see are geared around 1 app, how fast can you go, not how smooth can it go. This is why everyone is so interested in Linux kernel 2.4 MM patches or 2.6 low latency patches, to make the system smooth and responsive. People notice these "lags" in windows and linux.
You need at least an Athlon XP or Xeon (P4EE) to run all your httpd when being Slashdotted by posting that your computer can survive a Slashdotting.
Animated 3-dimensional paperclips, obviously.
Right now CGI is still expensive enough that most independents and hobbyists don't include it in their films. Affordable, rapid CGI could be a possible killer-ap for high-performance hardware. Currently, professional moviemakers must agonize over the creation of any CGI effect. It's a tedious process that involves using wire-frame animation, rendering and so on. If this process could be speeded up and simplifed, it might encourage more widespread adoption of CGI effects among hobbyists, giving them the ability to make movies they never could have before with their limited budgets.
Imagine being able to 'direct' a VR character almost as easily as you would direct a real life actor. When the technology gets to that level, we could see an explosion of new movies by people outside the Hollywood cookie cutter. Filmmakers with radicially new ideas who are too young to have developed a 'rep' in Hollywood could be creating some very professional looking films. Think of it this way: right now there are lots of people who write fanfics of their favorite movies or TV shows. But actually creating an episode of Star Trek, for example, is just not possible right now. With improved technology, perhaps these creative individuals might very well be able to make their own episodes, largely using CGI. Imagine taking a sci-fi movie that you like for the most part but hated the ending of. You load your CGI software with images of the main characters and battleships from the DVD and create CGI models of them. Now you can create a new ending that's more to your liking. Better yet, you can burn the new version of the movie with your ending (forget the "Director's Cut", this is "Mike's Cut") onto DVD and trade with your friends.
Right now we are all still pretty much at the mercy of Hollywood to make films that we like. Very soon, the balance of power will shift and creative individuals who have lots of ideas but budgets nowhere near those of studios will be able to create some very impressive looking films. And then Hollywood will have to get their ass in gear and show us something that we couldn't do ourselves in our own living room.
GMD
P.S.: Several people have mentioned that pornography has historically been a big driver of technology. Can you imagine that boom that the adult market will get when people can make their own adult films using CGI characters? Think plots of porn flicks are stupid? Wish for something better? Hell, just load your CGI software with images of Jenna Jameson and make your own film with her as the star.
watch this
What applications will drive the market? The same ones we have now, but written in python using bubblesort.
Well, maybe not bubblesort. But non-optimal algorithms, slow languages, and copying memory instead of passing a reference/pointer will increase.
That's not even a totally awful thing, because it means that the performance of already efficient applicatoins/languages/coders goes up as well. It also means that it's easier to start writing code without mastering TAOCP first.
So encourage your friends to write game engines in perl.
I can't run Gnome, which is why I mentioned Windows. I do not yet have a 6 ghz Colosseon (AMD chip) system with 4 tera ram and the 500 gig HD space required to run Gnome adecquately.
Movies. That's the ticket. iPods that hold 4000 movies/TV shows, and desktop machines that handle them with the same ease that today's machines handle MP3's.
Don't blame Durga. I voted for Centauri.
Software synthesis...
I can think of a few others, but this one is the most fun.
; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
If Apple has any brains they would be busy porting their multimedia software to run on a full 64-bit version of OS X.
Another application that could always use more performance is finite element analysis - but that's more of niche than video editing.
A Shadeless room is a brighter room.
No, Apple is too busy designing disposable iPods (disposable thanks to having ludicrously overpriced batteries with replacement costs approaching that of the entire iPod). This is the same company that thought a bent paperclip jammed into a tiny hole was a BETTER idea for media ejection than having a button to press.
In my line of work Image, PDF, SGML and XML processing in our production environment take way too much time on a single machine so we spread the task of processing these files between several machines using RPC. The bottle neck, however, is no longer with the CPU but rather I/O Read/Write operations. Of course multi-core CPUs would reduce our overall costs of having to purchase multiple machines but unless the I/O bottle neck is removed we really don't care for the improvements in CPU speeds.
-----
One is born into aristocracy, but mediocrity can only be achieved through hard work.
I know that the leasing package that I work on would gladly take advantage of this. Not just our end of period stuff, but also our interactive stuff. In fact this new hardware is making for great servers these days and replacing much of the old HP / Sun servers.
Only 'flamers' flame!
Does slashdot hate my posts?
Spam, /. proofing websites
W*nd*ws,
Home entertainment platform format PC's,
De-fragging 500 Gb HDD's,
Decision making s/w for window lickers,
Cybersex suits - (plenty of scope for worms and virusses there),
3-D holographic projection displays,
Biofeedback or retina controlled MMI, (Man Machine Interface),
Replicator units,
My hyperlinks aren't worth the paper they're printed on.
How about the extension of lazy coding, coding by automated consultant or AI coding?
Theoretically, code gets bigger as the interface gets easier (practically, it seems to just get bigger no matter the interface). As the coding interface is progressively automated, the code can theoretically get progressively larger.
Vision: in 10 years Google has given rise to Hackle, where you can write a simple request for any program and have it ready to download in 5 seconds. But the result is Huge.
Yow - I've got to lay off the Christmas cheer....
Processing power becomes very important at the two extremes of the Hertz chart :
.. ditto. Decrypting a message saying that Pearl Harbot is going to get bombed in 12 hours doesn't do us much good if it takes 14 hours to decrypt.
Things measured in units per second (ie, frames per second, transactions per second, connections per second) will always benefit by faster performance on a faster machine.
Things measured in many 10's of minutes (ie, an hour or more to process one transaction) will also benefit from a faster box. This would be cryptography, video compression codecs, and physics models.
When the transaction time is more than 1 minute but less than 10 minutes you really do not gain anything by increasing the performance of the machine (unless you can increase it to the point it runs in less than a minute. If you compile code on a computer that takes 7 minutes to compile it, buying a new computer that is twice as fast still has you compiling for 4 minutes. No real difference between the two, really, from a user's perspective.
When the transactions are measured in per second, the difference between 15fps and 30fps is the difference between unusable, and usable - particularly when we are talking about first person shooters. The difference between processing 150 visitors a second and 300 visitors a second is the difference between getting slashdotted and not.
When the transactions are measured in hours, being able to double the performance makes the difference in whether or not a particular transaction is even possible. Nightly backups are not particularly effective if they take 28 hours to process. Nightly runs of an accounting system
As long as we have applications that take more than an hour to run, and as long as we are measuring applications in X per second (frames per second in the range of 1 to 100, transactions per second of more than 1,000 and less than 50,000) - we will benefit by having faster computers.
Glonoinha the MebiByte Slayer
Your a fucking idiot.
Most applications have a good chunk of code they execute on startup (generating lookup tables, building graphs, etc). As processors get faster, applications will slowly move toward performing these functions in an on-demand manner. This will decrease application startup time, which seems to be what most MS Office users and Internet Explorer users want to eliminate when they say "My computer is _so_ slow."
As the amount of data available to individuals increases, visualizations that allow people to acutally understand what is going on (and the number crunching to get the visualizations) will/are driving system performance.
In the pharmaceutical world, for most scientists, there isn't near enough computing power for what they would like to do on a daily basis. Grid computing is making major inroads because of that. Still day to day work could make better use of things, if it didn't take 1hr to get the picture you want.
Gavin Fischer
Almost forgot.
Any difference is performance that requires a stopwatch or a special timing demo application to measure - isn't a difference.
183fps = 200fps in Quake.
pc3200 RAM = pc2700 RAM = pc3500 RAM
28fps in UT2003 = 30fps in UT2003
specINT 93158 = specINT 96452
Pentium4 3.06GHz = Pentium4 3.2GHz = Pentium4 2.8GHz.
Until you are talking about performance games of roughly 300%, or one machine being 3x as fast as another machine - it isn't worth replacing the machine. It would be silly to replace a 486DX2-50 with a 486DX2-66, even though you would get a 30% boost in processor speed. You wouldn't replace a PII/300 with a PII/366 even though you would get a 20% boost in processing speed - they are effectively the same speed and you probably wouldn't notice the difference. Replace that PII/300 with a PIII/900 though, go 3x as fast, and all of a sudden you can see big differences and a major improvement. Same thing with replacing the PIII/900 with a P4/2.8GHz.
Glonoinha the MebiByte Slayer
A good example would be Palm-type devices. As big-processor speed increases, there is also an increase in small-processor speed and efficiency (limited more by heat than anything else). This has given people a smaller, more powerful Palm-type device today than they could have bought five years ago. Another example is the DVR/PVR. The new two-tuner satellite HDTV receiver/recorders can handle the receipt and recording of two high-definition streams while decoding and playing back a third - my ancient Showstopper (ReplayTV), on the other hand, starts to chug when encoding/saving an NTSC transmission (at highest quality) while watching another (I paid &700 for my 20-GB Showstopper back "in the day" while the new 250-GB HDTV units will go for $1,000 and come down from there).
It will be interesting to see how long non-PC devices take to catch up to current top PC speeds and what applications (especially portable, non-notebook apps) spring from that.
Language translations.
I recall seeing an algorithm that partially ignored traditional dictionary-type translations and relied more on a relational database. For example, rather than work word by word through a given sentence, it attempted to relate that sentence to other sentences and solve in that matter. If it sounds confusing, it's mostly because I read about it quite a while back, and really can't recall most of the details. A sentence such as "Comment Allez-Vous?" would literally translate as "how are you going", or something to that effect (Allez is the second-person plural of 'to go' in French), but is obviously more colloquially translated as "How's it going?" Rather than concern itself with the meanings of the individual words, this algorithm would know the meaning of that phrase and use it as sort-of guidelines for how an unkown phrase would translate. And I'm sure doing that properly, in realtime, with no errors would require a ludicrous amount of processor power and be ridiculously useful. Go ahead an couple that with the above-mentioned truly accurate voice recognition and you've got the legitimate workings of a device most would consider to be science fiction.
I can already peg a processor for several hours running reports off of about 1/3 of the databases we ahve in my current company. If I wanted to process the Peoplesoft databases, well, I can run it all weekend.
There will be no grammar ...
Foredecker : "Of course, every day computing don't require a Intel 3.2Ghz P4 with Hyperthreading."
"Computing" is an abstract singular noun. "Don't require" is a contraction of "do not require", and "do require" is a plural verb. I assume you were going for "doesn't."
What's driving faster CPUs? Distributed.net statsmongers!
:)
The G4/G5 is the best chip for RC5, by the way.
Ron Paul 2012
Gentoo.
(or any from-source system)
I find applications still need a lot more speed too. And it's not just inefficient coding I think. Detecting and removing most of the spam from my mailbox takes my mail filters about 2 minutes a day, seemingly regardless of the mail client I use.
Virus scanners (and possibly other security methods) are still a big slow down. And I can't see things improving on that front.
- Muggins the Mad
Apple's already released 64-bit point upgrades for many of its pro apps.
Apple doesn't need a full 64 bit version of OS X (yet).
This is the only real reason that I need more power than what I have (P4 2.4G, 1G ram).
PC Virtual machine technology has completely changed the way that I design systems.
More power? Bring it on!
Crazy new next-generation desktop environments will require a hefty speed boost to keep things snappy, for example I'm thinking of Java's desktop they're trying to create, with a 3d interface and lots of graphical bells and whistles.
Take a hint. Voice recognition has been vaporware since the 60s. Every futuristic movie shows a pretty lady talking to her house turning on lights and making coffee. We've got way too much CPU power in hour houses for that, so wheres voice recognition?
The truth is, we dont need it. As impressive as voice recognition sounds, its application is limited to archival and military use.
Next you'll say NVIDIA and AMD will design their systems around Duke Nukem Forever.
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
Better, as in faster, cluster computing for one. Maybe we can get accurate weather predictions in the pacific north west. Say 99% chance of rain instead of 100%.
SETI@Home stats, that's how I choose my new PCs ;)
Error 407 - No creative sig found
A certain portion of mathematical research will require computers. The algorithms are hard, run for very long times, and use amazing amounts of memory. When used as a research tools to discover counterexamples or evaluating cases in proofs future mathematicians will use all the horsepower we can generate. Making a computer a useful tool for mathematical research is still an open problem.
Dear Glonoinha,
You can convert between units per second and seconds per unit using this special formula:
1 / unitspersecond = secondsperunit
I hope this helps.
SETI and consumer stupidity (I know it's not an app.) When I used to do tech support for a PC manu, most people would ask "Hey, I want the biggest, fastest PC that you have... What is it?" I like how the poster has mentioned that we don't need a 3.2 Ghz machine to run word, check mail, or view sites but that's what most consumers do.
I wonder what would happen if chip makers stopped making faster chips. How long would it take for most apps to catch up and for people to notice?
As our population ages, there's going to be a need for technology that lies somewhere between a human home healthcare aid and "the clapper" / roomba / "I've fallen and can't get up" panic buttons.
I disagree. Though I haven't used it recently, back in the days of MacOS 9, I used Apple's speakable items quite often.
Being able to lay in bed and ask the computer what time it is, if I have new emails, who's currently online, etc. is useful. (being able to control things with X10 even more so)
Retail would be another application where voice recognition may be useful. Customers of a store could simply ask a computer if the store carried a particular product, no typing neccessary.
This seems like a fine time to mention Slow Sort, which makes bubble sort look downright efficient and clever. From this paper (PDF).
(The paper is fun if you know computer science, the c2.com link is in "normal English". Try the paper if you think you'd enjoy it; it has a dry wit and pursues its task of sorting as slowly as possible with great gusto.)
I want an app where you can write a screenplay and choose from a list of predetermined actions and actors, or create your own, and have the whole thing rendered out in at least pretty good CG. The actors and actresses could be thinly veiled versions of famous actors.
You'd choose from drop-downs:
Scene: Exterior; City Street; Bad neighborhood; Crowded; Night; Drizzling rain
Actors: #1: 40s Italian American wise guy; #2: 30s African American smart aleck (here, you'd flip through characters and choose associated voices, clothes)
Mood: Fast tempo; Mysterious
Music: Mysterious
Cameras: Over the shoulder of #1; Dolly back (here, you'd manipulate a bird's eye schematic)
Actions: #1 stands on corner; White Volvo pulls up; # gets out of drivers seat, walks to #1; #1 gives #2 a black breifcase
Dialog:
#1: What took you so long?
#2: Sorry, man, my woman kept me late...
#1: You better ditch that woman if she makes you late like this...
#2 I know man, I'll do better...
Then you'd click RENDER and, after a while, get a good MPEG2.
My 2 cents.
Right now we are all still pretty much at the mercy of Hollywood to make films that we like.
If that has anything to do with CGI, you have pretty crappy taste in movies.
Let me summarize your post: "I want to direct my own spaceship battles! bew bew boom!".
Software Defined Radios (SDR) have a huge appetite for processor cycles. I use radio in the general sense, to include audio, visual and data transmission. Imagine plugging an antenna or cable into an ADC (analog to digital convertor) board on your PC. You could then run applications to listen to AM, FM or digital radio, watch analog or digital television, get the current time from GPS, receive IP packets from a wireless LAN or microwave link. Almost anything you now do with dedicated hardware could be replaced by software. The military is pushing the technology because it makes it possible to give a soldier one radio that can communicate with all of the existing legacy military and civilian radio systems, foreign and domestic.
Mea navis aericumbens anguillis abundat
It will be the Turing test of the 21st century.
There are no karma whores, only moderation johns
There will never, NEVER be enough cpu horsepower for raytracing. I will always want (todays highend)^2 power in my boxes. And strangely enough, i dont see my render times coming down at all. (Mmmmmmm... soft shadow precision. Mmmmmm... higher poly radiosity meshes. Mmmmmm... photons. Etc. etc).
I want 2D games back.
To answer the question:"What Applications Will Drive System Performance?" Scientists and engineers need *raw* computing power. They need lots of RAM (and even more) and they need GHz, lots of them. They need fast GPUs for 0. Consider Computational Fluid Dynamics. Most problems today are calculated on off the shelf PC hardware. I know this for a fact. Today, you don't buy Indys or Sparcs anymore, they're much too expensive bang-for-bug wise. They're nothing but dead. People use dual Athlons with 3 Gigs or RAM to run their jobs, mostly one job per CPU, because parallel processing in most cases is not there yet (solving the Navier Stokes equations in parallel is still a major PITA). So in
short, those people will always buy the fastest PC stuff available, because for them it makes a huge difference whether a solution converges in two or in four days.
For me, the performance of a particular emulator was the key issue when I last replaced my processor. I know a lot of people running Gentoo and Slackware, though, and for them, compilation times are a key issue.
it's that you don't. I don't blame you, after all who has that kind of time.
Until you are talking about performance games of roughly 300%, or one machine being 3x as fast as another machine - it isn't worth replacing the machine.
:-)
That's only true if you are talking about games. If you're talking about video encoding, or simulation work, or other real number-crunching stuff, then an increase of 50% might see your run times cut from 24 hours to 18 hours. That may well be worth the money, depending on how often you're performing those runs.
That said, you appear to be talking specifically about games, in which case I pretty-much agree with you. For what it's worth, my two major upgrades have been Celeron 266 -> P3 700, then P3 700 -> P4 2400. I don't see myself holding out for a 7.2GHz processor before my next upgrade, though
It's official. Most of you are morons.
It looks like you have been upgrading about every 24 months to 30 months .. maybe 3 years on the far stretch between complete machine upgrades. I am guessing your current system is less than a year old, and suits your current needs real well (I have two 2.4GHz machines, one is only about 2 months old and I am happy with both of them.) Flash forward 24 months from now and Moore's law says that the pimp machines are going to be running 3.2GHz (current fastest machine) times 2 (doubles every 18 months) to the 1.3 power (24 months / 18 months) = 7.2GHz. I would be willing to bet that the next machine you buy is at least 5GHz or the performance equivalent, with a Gig of RAM, and a quarter terabyte of drive space. Maybe half a terabyte. For about $2000 tops.
... cutting it from 24 hours to 18 hours doesn't buy you anything. You still need to have the machine tied up for a full work day, and you still don't get the results until tomorrow. It isn't worth the downtime to install all your apps, move all your data, reconfigure everything, users, networking, system prep ... to cut a run time from 24 hours to 18 hours.
... that is a worth while venture. Now you can start a run when you get there in the morning and have results before you go home. 300% boost in performance - that buys you something, a payoff for the effort it takes to bring a new machine up to replace the old one.
As for the 24 hour run times, that is out on the freaky far edge of the bell curve, with 100fps being one side and 6+ hours being on the other side - the thing is, if it is taking 24 hours to process a hardcore run of video encoding, encryption, or simulation
Now if you can cut it from 24 hours to 8 hours
At that end of the bell curve, it would be a better ROI to come up with a way to invoke RAIC (redundant array of inexpensive computers, and yea I coined that term) and a way to spread the load across half a dozen machines. It works with video rendering, number crunching, simulation work (maybe), encryption, etc. You get that working and can throw 12 boxes at the problem and all of a sudden you can reduce the 24 hours to about 3 hours (I added some overhead for the distributed processing, nothing scales 100%.) That is worth it, if you can get it working.
Glonoinha the MebiByte Slayer
As for "What Applications Will Drive System Performance?"...
I'd say 2003 software suites for the latest notebooks requiring
2005 mobile hardware to run like 2001 desktop systems!
At my company, we do a lot of engineering design with solidworks and pro/e. For our needs, we don't need more raw power. Some of the engineers have graphics cards in the multikilobuck range, so an increase in power/$ would mean a lot to us. We also do a lot of science apps that involve analysis (= science version of photoshop) of tiff files that can be 200 - 500 Mb each. I can certainly envision needing to work with 50+ of these files at a time, say do a diff between file 1 Vs. file 2 - 50, and plot out the results. The cost of computers to handle these in real time (20 seconds) is prohibitive.
crack encryption keys. ...
.5 m x.5 m x.5 m.
find huge pi number.
find primes.
accurately calculate missile trajectories in milli-
meters.
simulate nuclear explosions.
predict the weather.
simulate complex molecules in "real-time".
computer aidded manufacturing in near "real-time"(*).
analysing stock-market(*2).
playing UT2005 in a 2048 x 1024 resolution.
build robots.
(*) imagine something like a printer in your room
now, but bigger and that can "print" any form from
any material in sizes
(*2) imagine a server box in one corner of your
room that is your personal stock broker doing
nothing but looking at he stock market and sending
you emails or SMSs with promissing stocks etc =
a $money$ generating refrigerator or video player
kinda thingy-appliance.
That equation doesn't work out the way you want if there is anything going on in parallel for left to right, or if you have queing delays when going right to left.
My server
No, it always works. 10 frames per second means .1 seconds per frame. No exceptions. Ever.
If units are the inverse of each other, measurements on those units are the inverse of each other.
You may have heard that these days, banks are no longer able to fly blind. They need to know the risk exposure of their financial positions in near to real time. This gobbles CPU. Particularly because some of them are coded in Excel or VBA!!!!!
I know this cost a lot of $ in those days, but couldn't this be done a lot cheaper now by having multiple busses?
There are many apps that people love to use today that simply couldn't be done in assembly language, without increasing time and cost significantly.
So, we wind up with, say, an app using Swing running on AWT, running on Java in a JVM running on Windows, running on a bunch of DLL's running in a C++ runtime (compiled to assembly), on a BIOS, on a RISC x86 emulator, which runs on microcode eventually, all so we can have a IM app with tons of features.
Now, could somebody implement all that in straight assembly? Sure. How long would it take? Maybe 5 years? We'd rather have the app in 6 months, though, and the abstraction layers let us do it. We have the hardware to make it feasible, and it's really pretty cheap.
It's unlikely this trend will stop until we have as featureful apps as we can stand, or hardware just can't get any faster (they doomsayers still say it'll happen).
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)