[Info-vax] The Future of Server Hardware?

Stephen Hoffman seaohveh at hoffmanlabs.invalid
Tue Oct 2 18:18:32 EDT 2012


On 2012-10-02 21:32:01 +0000, JohnF said:

> Stephen Hoffman <seaohveh at hoffmanlabs.invalid> wrote:
>> 
>> If you're looking to render images or brute-force passwords, definitely
>> yes.  (This is why I was pointing to bcrypt and scrypt a while back,
>> too.  But I digress.)
> 
> Thanks for the info. So vectorizable, "definitely yes";
> parallelizable, "not so much."

GPUs can run various tasks in parallel, as can the cores available 
within most modern boxes.  Laptops are now arriving with two and four 
codes, and a workstation can have 8 to 16 cores plus a couple of fast 
GPUs.

How much data do you need to spread around?   And how often.  How 
closely are the work-bits tied together or dependent.  (qv: Amdahl's 
Law.)

Adding boxes into an application design - whether x86-64 or ARM or 
mainframe or rx2600 - means that box-to-box latency and bandwidth are 
in play, too.

The same bandwidth and latency issues arise within a multiprocessor 
box, but those links are usually shorter and faster.  (There are also 
some degenerate hardware cases around, where loading and unloading a 
particularly GPU is relatively performance-prohibitive, for instance; 
where the GPU is gonzo fast, but getting the data in and out just 
isn't.)

If you have a good way to distribute that data or schedule the tasks, 
or if you have fast links, then adding boxes scales nicely.

If not, then you're headed for more specialized hardware (mainframe, 
etc), or toward a world of hurt.

For an example, VMS used to run into a wall around 8 CPUs or so; where 
adding processors didn't help or could even reduce aggregate 
performance.  That's gotten (much) better in recent VMS releases (due 
in no small part to the efforts of some of the VMS engineers to break 
up the big locks), but VMS still doesn't scale as high as some other 
available platforms.  Clustering has some similar trade-offs here, too; 
where the overhead of sharing a disk across an increasing number of 
hosts runs into the proverbial wall, for instance.

One size does not fit all.

> Is there a pretty standard whitebox configuration people typically
> put together as a gpu platform -- MB make and model, power supply
> and cooling options, memory, etc? And is nvidia/cuda the current
> favorite among the gpu/"language" options to put in that box?

There are probably almost as many options as there are opinions.

I'd tend toward OpenCL, given the choice.  But then that's native on 
the platforms that I most commonly deal with.

But then this is not the best group for x86-64 HPTC questions, either.


-- 
Pure Personal Opinion | HoffmanLabs LLC




More information about the Info-vax mailing list