Advertisement

Client systems: Cpu, Gpu, Memory, Hd, or Internet

Started by January 05, 2015 07:27 AM
16 comments, last by TrianglesPCT 10 years ago

We all make software intended for other people to run, be them games or otherwise, which means we all need to deal with the existence of minimum specs, and bending our software to actually run on a machine that your audience actually has. I personally always find that there is a large asymmetry among what system resources I actually need from my target audience.

So, lets be a little silly, and imagine a world where everyone has the computers they have now, except for one rediculously over-provisioned component. What component would you prefer your audience have (and thus, which resource is it that you feel most constrained by)?

1- Super CPU: Per-core performance of about 5x that of a current brand new intel haswell, and 64 cores, that run on zero energy.

2- Super GPU: A stock GPU, except ~32 GB on-board memory, and enough shader cores to give it about 100 petaflops of compute ability, with proportionally scaled memory bandwidth, and zero energy consumption. Note, the PCIe link remains the same, thus it still costs you to fill the on-board memory.

3- Super Memory: 64 Terabytes of main memory, with access timing specs similar to that of a high-rated DDR4.

4- Super HD: 25 petabyte HD space, with bandwidth and access characteristics similar to what you'd expect out of a 2-wide raid of modern SSDs [~6 GB/s]

5- Super internet: 100 MB/s client-side internet connection for everyone, and 100 GB/s server side bandwidth, with 10ms stable round trip latency at all times.

Everything else stays within the current averages. What would most benefit your software writing process and why? Note that this isn't "what would you like for yourself", but what constraint troubles you most when deploying software.

Personally, I'd totally take "Super Memory" for everyone, as that's definitely the most troublesome barrier I tend to hit first, followed by "Super CPU". A lot of the corners I end up cutting in my work circulate around bounding searchs, and limiting preloading of stuff. Infinite main memory would definitely simplify things.

I would go for a Super CPU (I know, it would not scale easily), because it would relax a lot of things (faster physics, less driver overhead of video APIs, more debug output/error checking, more gimmics etc.).... thought a Super GPU to handle GI with ease would be sexy too...

Advertisement
Definitely Super Memory first. If your app ever goes over the limit, it will almost always result in a complete crash. This is a big deal on smartphones with 512MB of RAM (with 150-180MB hard limit for apps). Big games I've worked on are asset-rich and are impacted by this before anything else.

Definitely Super Memory first. If your app ever goes over the limit, it will almost always result in a complete crash. This is a big deal on smartphones with 512MB of RAM (with 150-180MB hard limit for apps). Big games I've worked on are asset-rich and are impacted by this before anything else.


But with a super CPU one could keep all data compressed in RAM... After all poor CPU often means more RAM use because more acceleration structures and cached data are required.

How about super output device, that can directly make the user feel or sense stuff through a brain interface, so you dont need to spend 90% of the computing power to achieve immersive graphics etc.? You just tell the brain "this is immersive ok" and keep the ASCII graphics running.

o3o

Normally I'd pick "Super GPU" because there's just so much useful stuff you could do with it, but this kills the idea off:

Note, the PCIe link remains the same, thus it still costs you to fill the on-board memory

So it's "Super HD" then because disk is still the single biggest bottleneck for most applications.

Direct3D has need of instancing, but we do not. We have plenty of glVertexAttrib calls.

Definitely Super Memory first. If your app ever goes over the limit, it will almost always result in a complete crash. This is a big deal on smartphones with 512MB of RAM (with 150-180MB hard limit for apps). Big games I've worked on are asset-rich and are impacted by this before anything else.

I second this.

"The code you write when you learn a new language is shit.
You either already know that and you are wise, or you don’t realize it for many years and you are an idiot. Either way, your learning code is objectively shit." - L. Spiro

"This is called programming. The art of typing shit into an editor/IDE is not programming, it's basically data entry. The part that makes a programmer a programmer is their problem solving skills." - Serapth

"The 'friend' relationship in c++ is the tightest coupling you can give two objects. Friends can reach out and touch your privates." - frob

Advertisement

I'd take super GPU, i find it funny how you made up all these numbers and went with crazy numbers for some (GPU) but pretty average for other (net at 100MB/sec is slower than what i have at home, and in plenty of places you can get 1GB/sec)


I'd take super GPU, i find it funny how you made up all these numbers and went with crazy numbers for some (GPU) but pretty average for other (net at 100MB/sec is slower than what i have at home, and in plenty of places you can get 1GB/sec)

Not to mention that 10 ms stable round-trip latency at all times would seem to allow faster-than-light communication, breaking causality and all of known physics! cool.png

“If I understand the standard right it is legal and safe to do this but the resulting value could be anything.”

I'd take super GPU, i find it funny how you made up all these numbers and went with crazy numbers for some (GPU) but pretty average for other (net at 100MB/sec is slower than what i have at home, and in plenty of places you can get 1GB/sec)

Not to mention that 10 ms stable round-trip latency at all times would seem to allow faster-than-light communication, breaking causality and all of known physics! cool.png

Eh', so is CPU/GPU running with 0 energy. Physics is for chumps when making wish-lists.

I'd take super GPU, i find it funny how you made up all these numbers and went with crazy numbers for some (GPU) but pretty average for other (net at 100MB/sec is slower than what i have at home, and in plenty of places you can get 1GB/sec)

Wish I lived where you live then. 100 MB/s at home would be nuts, and 100 GB/s server-side would be double-nuts. I THOUGHT I was being crazy with the internet spec too, especially the latency. Hell, most "1 Gb/s" ethernet devices even negotiate a channel bandwidth that actually meets that spec, and 10 Gb/s is pretty much out of the question for single-link ethernet. And you get 100 MB/s [800Mb/s or 0.8Gb/s] at home? Cripes.

Where is it then that has this epic internet connection? I'm packin' my bags tomorrow.

I realize that realistic isn't the point of this thread, but Super-CPU will be largely useless without Super Memory capable of feeding it data fast enough to maintain near 100% usage for any length of time. Pair a Super-CPU with today's memory and you're going to be hard pressed sustaining 50% cpu usage, on a single core.

This topic is closed to new replies.

Advertisement