SSE, AVX, and beyond
Eljay
eljay at adobe.com
Sun Aug 9 08:11:53 PDT 2009
As cent/ucent, should a keyword be reserved for 256? 512? 1024?
- - - - - - - - - - - - - - -
Most programming languages are loathe to add new keywords, because that has the chance to impact existing code.
So the time to add keywords for D 2.0(alpha) is now, since the language is in alpha.
For 128-bit signed/unsigned int, D has reserved cent and ucent. Perfect for working with UUIDs. But not implemented yet.
The next generation of SSE, called AVX, will support 256-bit data. Now, granted, those 256-bit registers and data-path is more like (u)byte[32], or (u)short[16], or (u)int[8], or float[8] arrays with specially optimized SIMD instructions.
The current generation of GPUs support 256-bit data. Some of which may be used for GPGPU work. (D Programming Language does not target those GPGPUs, yet. But with a little luck...)
It is within the realm of reason that there may be larger-than-64-bit integers in the near future. 128 is ready, with cent/ucent. Should larger sizes have reserved keywords? Or are those larger sizes just too ludicrously large to worry about?
Or maybe a language extension like int!256, int!512, int!1024 (and retrofit to int!128, int!64, int!32, int!16, int!8 ... much as MSVC++ has __int64, __int32, __int16, __int8, or FORTRAN has integer*8, integer*4, integer*2, integer*1).
Thoughts?
[My FORTRAN is very, very rusty, so my apologies if I misremembered.]
More information about the Digitalmars-d
mailing list