On Friday, 5 December 2014 at 21:21:49 UTC, Ola Fosheim Grøstad
wrote:
On Friday, 5 December 2014 at 20:32:54 UTC, H. S. Teoh via
Digitalmars-d wrote:
I agree. It's not just about conservation of resources and
power,
though. It's also about maximizing the utility of our assets
and
extending our reach.
If I were a business and I invested $10,000 in servers,
wouldn't I want
to maximize the amount of computation I can get from these
servers
before I need to shell out money for more servers?
Those $10,000 in servers is a small investment compared to the
cost of the inhouse IT department to run them… Which is why the
cloud make sense. Why have all that unused capacity inhouse
(say >90% idle over 24/7) and pay someone to make it work, when
you can put it in the cloud where you get load balancing, have
a 99,999% stable environment and can cut down on the IT staff?
There are also certain large computational problems that
basically need
every last drop of juice you can get in order to have any
fighting
chance to solve them.
Sure, but then you should run it on SIMD processors (GPUs)
anyway. And if you only run a couple of times a month, it still
makes sense to run it on more servers using map-reduce in the
cloud where you only pay for CPU time.
The only situation where you truly need dedicated servers is
where you have real time requirements, a constant high load or
where you need a lot of RAM because you cannot partition the
dataset.
Big simulations still benefit from dedicated clusters. Good
performance often requires uniformly extremely low latencies
between nodes, as well as the very fastest in distributed storage
(read *and* write).
P.S. GPUs are not a panacea for all hpc problems. For example,
rdma is only a recent thing for GPUs across different nodes. In
general there is a communication bandwidth and latency issue: the
more power you pack in each compute unit (GPU or CPU or
whatever), the more bandwidth you need connecting them.