The SC11 HPC Analyst Crossfire hosted by Addison Snell was the last event attended at Super Computing this year. I have a few thoughts that came out from this discussion.
The question was proposed: would we see Exaflop by 2017. I doubt this, we are running into physical limits. What was never mentioned was that the rate of machine performance increase was not from just CPU performance, but machine size. The amount of power consumed by the top machines has risen greatly over the last few years. While I expect improvements in flop/watt, we already had a lot of improvements. That said (hedging) these are all technical problems. A humans is the best solver for technical problems.
The panel and questions focused on CPU performance. Honestly CPU performance isn't much of a driver in my testing anymore. There was a question about memory size, but memory performance. I think there is space to offer high speed but small size (1GB/core or less) nodes. I envy the days of CPU utilization when memory bandwidth was close the the CPU peak performance. Now we keep falling behind the curve. Honestly I think this is the dirty secret about GPU platforms. They just have buckets of memory bandwidth.
Think what has happened in BLAS from level 1 to level 3 to deal with cache memory based CPUs. This will only get worse. How much time do you expect to teach physicists to write fast code for the platform to use cache memory well. Honestly this is where I expect ARM to maybe make a break-in in the market. Low power ARM with all the memory bandwidth of a modern platform available. This as a unit will be a lower power envelope but higher performance in real applications.
A topic that became a running but serious gag of the panel was that FORTRAN was going to continue to be the language of choice for applications. How will FORTRAN be taught? I overheard someone say "It is simpler to teach a physicist to program, than to teach a programer physics". I think this is an important idea when looking at what drives language selection in academic research.
In the case of Michigan Engineering School we teach C++ and MATLAB to all freshmen. After that the common researcher who is going to consume HPC style resources probably never have a programming class again. The direction for many students I work with is the push for FORTRAN comes from their advisers.
FORTRAN I have learned to love because it does what we need it to do so well. It is not a system language like C/C++ that, yes can do HPC programs but involve a bit of work to get used to. The abstractions provided by FORTRAN makes life so much simpler.
So in my view FORTRAN will be with us a long time, backing a lot of powerful codes because it is, I would argue, the best tool for the job.
No comments:
Post a Comment