Unum (formato de número)


Los unums ( números universales [1] ) son una familia de formatos y aritmética, similar al punto flotante , propuesta por John L. Gustafson . [2] Están diseñados como una alternativa al omnipresente estándar de punto flotante IEEE 754 y la última versión (conocida como posits [3] ) se puede usar como un reemplazo directo para programas que no dependen de características específicas de IEEE. 754.

La primera versión de unums, ahora conocida oficialmente como Type I unum , se presentó en su libro The End of Error como un superconjunto del formato de punto flotante IEEE-754. [2] Las dos características definitorias del formato unum Tipo I son:

Para realizar cálculos con el formato, Gustafson propone utilizar la aritmética de intervalos con un par de unums, lo que él llama ubound , lo que proporciona la garantía de que el intervalo resultante contiene la solución exacta.

Los Unums tipo II se introdujeron a finales de 2016 [8] como un rediseño total de los Unums que rompió la compatibilidad con IEEE-754.

En febrero de 2017, Gustafson presentó oficialmente las unums de Tipo III, que consisten en postulados para valores fijos de coma flotante y válidos para la aritmética de intervalos . [3]

Posits [3] [9] [10] son una versión compatible con el hardware de unum en la que se resuelven las dificultades encontradas en el unum de tipo I original debido a su tamaño variable. Las posiciones de tamaño similar en comparación con los flotadores ofrecen un rango dinámico más grande y más bits de fracción para mayor precisión. En un estudio independiente, Lindstrom, Lloyd y Hittinger del Laboratorio Nacional Lawrence Livermore [11] confirmaron que las posiciones superan en precisión a los flotadores. [ dudoso ]Las posiciones tienen una precisión particularmente superior en el rango cercano a uno, donde ocurren la mayoría de los cálculos. Esto lo hace muy atractivo para la tendencia actual en el aprendizaje profundo de minimizar la cantidad de bits utilizados. Potencialmente, ayuda a cualquier aplicación a lograr una aceleración al permitir el uso de menos bits (ya que tiene más bits de fracción para mayor precisión), lo que reduce el ancho de banda de la red y la memoria, y los requisitos de energía, y nos acerca un paso más a la exaescala .