# Integer arithmetic support on future HPC systems

I writing some robust geometric algorithms using quantization + integer arithmetic for evaluating exact predicates. However, since BlueGene's integer support is so terrible, it occurred to me that the use of integer math may (weirdly) kill the portability of the library in terms of performance.

How worried should I be about this? Are future HPC systems likely to have similar issues? I realize that a question about predicting the future may be difficult or impossible to answer, but this seems like an important design decision to get right. Any thoughts are appreciated.

In this case, there's an easy fallback: I can run an initial filtering step using floating point interval arithmetic (assuming the architecture has "round to $-\infty$" support). This has zero effect on the results since I'd fall back to integers if the filter fails. Other integer-based algorithms may not be so lucky, however.

-
I often see people using a type called real which they define as float or double or whatever. GPU Hardware is often benchmarked in floating point operations. For scientific computing double seems to be more important. When you need integer operations, you have no choice anyway. –  vanCompute Feb 20 '13 at 12:53
Would you mind being more specific about what you mean by its integer support being "terrible"? –  Jack Poulson Feb 20 '13 at 15:55
If you max out the number of threads on a BGQ node, each thread gets to do 1 integer op every other cycle, since four threads share a dual issue integer ALU. –  Geoffrey Irving Feb 20 '13 at 17:30