Intel 系の CPU では、まだ double-double については調査中だが、Cell(PlayStation3 : PowerPC G5 互換)では以下のように double-double でも double と比較してかなり良い精度が出るようだ。
long double 31桁
double-double 28桁
double 14桁
float-float 14桁
float 5桁
IEEE754 では Double-Extened は仮数部 53bit 以上、指数部 15bit 以上と定義されていて Intel 系の long double はこれに相当するが、要するに float や double のように仮数部や指数部の bit 数が定数として規定されているわけではないので、CPU によって異なり使いにくい変数型になっている。
gcc のコンパイルオプションで -m128bit-long-double などと指定しても計算結果が変わらないのは不思議である。
long double 31桁
double-double 28桁
double 14桁
float-float 14桁
float 5桁
IEEE754 では Double-Extened は仮数部 53bit 以上、指数部 15bit 以上と定義されていて Intel 系の long double はこれに相当するが、要するに float や double のように仮数部や指数部の bit 数が定数として規定されているわけではないので、CPU によって異なり使いにくい変数型になっている。
gcc のコンパイルオプションで -m128bit-long-double などと指定しても計算結果が変わらないのは不思議である。