Con una nueva especificación, ejecute una aplicación en todos los dispositivos

La potencia bruta siempre ha sido importante para medir el rendimiento de dispositivos móviles y PC, pero también es importante determinar si las aplicaciones se escriben para explotar todas las características de hardware disponibles.

A través de una nueva especificación anunciada el lunes, la Fundación de Arquitectura de Sistema Heterogéneo (HSA) quiere proporcionar un marco común a través del cual los desarrolladores puedan escribir una aplicación una vez y luego ejecutarla en servidores, dispositivos móviles, consolas de juegos, dispositivos y PC que se ejecutan en diferentes procesadores.

La especificación HSA 1.0 proporciona pautas subyacentes para que las aplicaciones también puedan aprovechar eficazmente la potencia informática conjunta de las unidades de procesamiento disponibles en los dispositivos informáticos. Es la primera especificación lanzada por la Fundación HSA desde que se estableció en 2012.

El objetivo de HSA 1.0 es no solo garantizar que los programas se ejecuten más rápido, sino también más eficientemente. Algunas aplicaciones, como el software de gráficos, pueden consumir mucha energía, y el procesamiento equilibrado en GPU, CPU y chips especializados podría ayudar a extender la vida útil de la batería en los dispositivos.

El beneficio se limita a los programas escritos con la especificación HSA 1.0 y al hardware que lo respalda. También depende de los proveedores de sistemas operativos admitir la especificación y construir controladores para que los programas compilados puedan explotar las características del hardware.

El hardware en dispositivos móviles y PC se está volviendo cada vez más complejo, y es un desafío cada vez mayor para los programadores escribir aplicaciones para múltiples dispositivos. La nueva especificación permitiría a los desarrolladores escribir aplicaciones que sean independientes de la arquitectura, lo que significa que un solo programa funcionará en CPU x86 y ARM.

La programación multinúcleo también ha sido un desafío desde los días de Windows, ya que la mayor parte del procesamiento se realiza a través de la CPU. Pero las GPU se están volviendo importantes en el procesamiento de video, y los procesadores de señales digitales manejan tareas como el reconocimiento de voz, el procesamiento de audio y la recepción de llamadas. La especificación HSA 1.0 asigna automáticamente tareas a núcleos relevantes, aliviando el estrés de los desarrolladores de programación para tareas de ejecución de tareas en núcleos específicos.

Hay otros estándares abiertos de programación paralela como OpenCL que intentan resolver el mismo problema, pero se usan principalmente en la supercomputación. Algunas de las supercomputadoras más rápidas del mundo aprovechan la potencia informática conjunta de las CPU, GPU y aceleradores para realizar cálculos científicos y matemáticos. La Fundación HSA ha expresado su deseo de tener éxito en OpenCL con soporte para una gama más amplia de dispositivos.

Algunos grandes nombres que respaldan el nuevo estándar incluyen AMD, Qualcomm, ARM, Imagination Technologies, MediaTek y Samsung. AMD está diseñando sus chips para que sean compatibles con los estándares HSA al romper el dominio de las CPU, que generalmente han desempeñado un papel importante en la programación de la ejecución de programas, y proporcionar acceso directo a la memoria y otros núcleos de procesamiento. A través del diseño del chip HSA, AMD en particular quiere que las CPU y GPU sean jugadores iguales en la ejecución del programa, particularmente con mayor importancia en los gráficos en PC, dispositivos móviles y supercomputadoras..

Pero compañías clave como Intel y Nvidia no participan en la HSA, lo que podría obstaculizar la adopción de la especificación. El estándar CUDA patentado de Nvidia está diseñado para sus chips gráficos de supercomputación Tesla y chips móviles Tegra, e Intel proporciona su propio conjunto de programación paralela para usar con sus chips. Las compañías tienen mucho en sus estándares de programación patentada, lo que podría ayudar a mejorar las ventas de chips..

HSA 1.0 admitirá inicialmente lenguajes de programación populares como Java, C ++, OpenMP, Python y otros. Las empresas también deberán asegurarse de que su hardware sea compatible con las especificaciones. Qualcomm, que es uno de los proveedores de chips móviles más grandes del mundo, ha dicho que las CPU personalizadas, las GPU Adreno y los procesadores de señales digitales serán compatibles con HSA. Imagination Technologies, MediaTek y el diseñador de chips ARM también dijeron que traerán compatibilidad HSA en chips y diseños de procesadores en el futuro.

Otros miembros clave de la Fundación HSA incluyen Oracle, Sony, LG Electronics, Marvell, Toshiba, Broadcom y Texas Instruments.

Únase a las comunidades de Network World en Facebook y LinkedIn para comentar temas que son lo más importante.