Monday 13 November 2017

Lmbench Arm Binary Options


Benchmarks Linpack Nota: Los resultados de linpack sugieren que el rendimiento flotante del núcleo Cortex A7 en el A20 es considerablemente más rápido (hasta 3 veces más KFLOPS) que el Cortex A8 utilizado en el A10. La ejecución de una aplicación intensiva de flioating point (procesamiento de geometría 3D) parece confirmar que el A20 es significativamente más rápido. Lmbench lmbench (lmbench-3.0-a9) es un punto de referencia más antiguo y no muy conocido, pero puede proporcionar algunos interesantes detalles arquitectónicos de bajo nivel, así como puntos de referencia de velocidad de memoria. La latencia y el paralelismo indicados no son consistentes entre las ejecuciones, pero el caché de datos L1 y el tamaño de la caché L2 probablemente son correctos. El tamaño de la caché L2 no es grande, pero eso no es sorprendente para un SoC fabricado en 55nm (los socs ARM de gama alta modernos fabricados a 28nm para smartphones y tabletas tienen hasta 2MB de caché L2 RK3188 tiene 512KB de caché L2). Esto da información interesante sobre las características de la instrucción de la CPU del ARM Cortex A7 núcleo utilizado en el A20. Como ocurre con la mayoría de las arquitecturas ARM, la división entera es lenta. La multiplicación de números enteros es relativamente rápida. El rendimiento flotante es aceptable, y la precisión simple (flotador) es más rápida que la doble precisión (doble). Esto confirma el tamaño de caché de la A20, el tamaño de la caché L1 (datos) es de 32 KB, la latencia parece ser alrededor de 3ns, y como el tamaño del búfer se acerca a 32 KB la latencia informada por la prueba comienza a aumentar debido a los efectos de asociatividad de caché . Se observa una transición similar para el caché L2, la latencia es de aproximadamente 9,3ns y la latencia comienza a aumentar a medida que el tamaño del búfer se aproxima a 256KB. La latencia DRAM es de unos 60ns en la configuración de prueba (CPU de 1008 MHz, reloj DRAM de 432 MHz, reloj MBUS de 432 MHz, sincronización CAS de 6 ciclos). Con 9 ciclos la latencia de temporización CAS a un tamaño de búfer de 16 MB es 63.8ns. Cada núcleo tiene su propio caché de datos L1, por lo que el ancho de banda de caché L1 se duplica con dos núcleos activos. Con dos núcleos activos, el ancho de banda de antememoria de L2 compartida (resultado de buffer de 64K anterior) aumenta en comparación con cuando se utiliza sólo un núcleo excepto en el caso de copiar cuando un núcleo ya satura el ancho de banda de antememoria L2. Con el acceso DRAM (buffer 16M), dos núcleos activos son capaces de utilizar más ancho de banda DRAM en comparación con el uso de un solo núcleo (puede depender de la implementación lmbench, pero es probablemente una buena señal para el rendimiento multitarea). Con una temporización CAS de 9 ciclos en lugar de 6, el rendimiento es sólo un poco más lento. Sin embargo, con menor DRAM o reloj MBUS, el rendimiento será menor. GPU La GPU Mali-400MP2 en el A20 tiene dos procesadores de píxeles en lugar de uno solo en el A10 (Mali-400MP). Debido a que especialmente el relleno (es decir, de alta resolución) el rendimiento debe ser mayor con los controladores adecuados. Necesita los nuevos controladores Mali r3p2 (estándar es r3p0) para aprovechar realmente las características mejoradas del Mali-400MP2. Consulte la sección Optimización del rendimiento del sistema para obtener instrucciones avanzadas sobre el uso de los controladores r3p2 Mali. Los siguientes puntos de referencia se realizaron con salida HDMI de 1280x720 60 Hz (32bpp). El tamaño de la ventana de glmark2 es el predeterminado 800x600. El dispositivo tiene el reloj de memoria configurado a 408 MHz (que es inferior a algunos otros dispositivos que pueden afectar al rendimiento). El regulador de la CPU se ajustó a ondemand con ajustes personalizados. La opción SwapbuffersWait se estableció en false en el archivo xorg. conf para eliminar el efecto de vsync. El fb0framebuffernum en script. bin se estableció en 3 para que xf86-video-fbturbo pueda proporcionar de forma óptima la integración de Mali GLES. La versión de glmark2 (glmark2-es2) utilizada es 2013.08.07. Fuente: github / ssvb / glmark2.git. Configure with Quizá sea necesario aplicar un parche como éste a los archivos de encabezado de GLES para una compilación limpia: Rendimiento con los controladores / kernel Mali r3p0 estándar: Rendimiento con los controladores Mali r3p2 / kernel: Tenga en cuenta que varios subpreferenciales muestran un rendimiento duplicado o mejor. Esto incluye la composición en 2D y las pruebas limitadas por llenado. Después de ajustar los parámetros del controlador de memoria (frecuencia DRAM 432 MHz, frecuencia MBUS 432 MHz, sincronización CAS 6 ciclos), el puntaje gl2mark2 aumenta a 189. Otro punto de referencia de los controladores r3p2, hecho en Cubietruck, con módulo kernel r3p2, controladores binarios y xf86- Video-fbturbo: Evaluación de técnicas dinámicas de traducción binaria para la virtualización del sistema completo en ARMv7-A Proponemos varias técnicas de traducción binaria dinámica a nivel de sistema para ARMv7-A. Evaluamos nuestras técnicas en hardware real y obtenemos números de sobrecarga aceptables. Resumen Presentamos el hipervisor STAR, el primer hipervisor de software libre de código abierto para la arquitectura ARMv7-A que ofrece la virtualización completa del sistema mediante la traducción binaria dinámica (DBT). Analizamos las técnicas de DBT de espacio de usuario en ARM y proponemos varias soluciones para adaptarlas a la virtualización completa del sistema. Evaluamos el rendimiento de una configuración ingenua de nuestro hipervisor en una plataforma de hardware incrustado real y proponemos técnicas para reducir la sobrecarga basada en DBT. Analizamos el impacto de nuestras optimizaciones utilizando tanto micro-benchmarks como aplicaciones reales. Mientras que la versión ingenua de nuestro hipervisor puede conseguir varias veces más lento que nativo, nuestras optimizaciones reducen la sobrecarga en tiempo de ejecución de las aplicaciones reales como máximo 16. Palabras clave Traducción binaria Hipervisor Arquitectura del conjunto de instrucciones Virtualización Monitor de máquina virtual Autor correspondiente. Tel. 32 (0) 51 303045. copy 2016 Elsevier B. V. Todos los derechos reservados. Niels Penneman recibió su título de M. Sc. Licenciado en Ingeniería Informática por la Vrije Universiteit Brussel, Bélgica, en 2009. Ha obtenido un Ph. D. En Informática de la Universidad de Gante, Bélgica, en 2017. Su investigación se centra en la virtualización completa de los sistemas embebidos a través de la traducción binaria dinámica para la emulación de legado y la optimización del código binario. Danielius Kudinskas es un Doctor en Ciencias de la Computación. Estudiante de la Universidad de Manchester. Anteriormente obtuvo una licenciatura de primer nivel en Ciencias de la Computación en la misma universidad. Además, ha ganado una sólida formación en traducción binaria dinámica mientras trabajaba en Transitive Ltd, y en la virtualización de sistemas durante el tiempo que pasó en IBM. Él comenzó un Ph. D. En 2010 para investigar soluciones de virtualización de próxima generación, capaces de traducir binarios dinámicos y optimizar el código dinámico, principalmente dirigidos a arquitecturas de procesadores móviles. Alasdair Rawsthorne ha pasado su carrera en informática en la interfaz de investigación y desarrollo comercial. Ha publicado en las áreas de arquitectura de computadoras, programación paralela, tiene 14 patentes, y fundó Transitive para comercializar su investigación en traducción binaria dinámica. Transitive suministró la tecnología en el corazón de la adopción de Applersquos de los procesadores de Intel en 2005, y fue adquirida por IBM en 2009. Alasdair Rawsthorne es miembro de la Real Academia de Ingeniería y de la British Computer Society. Bjorn De Sutter es profesor en la Universidad de Gante en el Computer Systems Lab. Obtuvo su título de M. Sc. Y Ph. D. En 1997 y 2002. Su investigación se centra en el uso de técnicas de compilación para ayudar a los programadores con aspectos no funcionales de su software, como el rendimiento, el tamaño del código, la fiabilidad y la protección del software. Koen De Bosschere es profesor de la Escuela de Ingeniería de la Universidad de Gante, Bélgica, donde imparte cursos sobre arquitectura de la computadora y sistemas operativos. Sus intereses de investigación actuales son la traducción binaria, la virtualización y la protección del software. Fue autor y coautor de más de 170 artículos en revistas y conferencias. Es coordinador de HiPEAC, la Red Europea de Excelencia en Arquitectura y Compilación de Alto Rendimiento y Embedded y de la escuela anual de verano ACACES. Está coordinando el programa de emprendimiento estudiantil en la Universidad de Gante. Virtualización de ARM VFP (vector de punto flotante) con Xen-ARM Resumen VFP es una unidad de punto flotante vectorial en procesadores ARM. Permite a los procesadores ARM manejar operaciones auxiliares de punto flotante con hardware, que se ha convertido en una parte esencial para el rendimiento en dispositivos móviles recientes. Sin embargo, la virtualización móvil como Xen-ARM no admite VFP virtual, por lo que las operaciones de punto flotante son muy lentas en la máquina virtual móvil. Para superar la limitación de rendimiento de las operaciones de punto flotante en virtualización Xen-ARM, este documento presenta un nuevo VFP virtual para que las aplicaciones puedan aprovechar el hardware VFP. Con nuestro VFP virtual, Xen-Linux reduce la latencia de operación de punto flotante hasta un octavo de la versión de emulación de software existente. Además, el resultado de mibench con VFP virtual presenta 3ndash4 veces mayor rendimiento que el de emulación de software. Además, el VFP virtual reduce el tamaño de los códigos y mejora la eficiencia energética. Palabras clave Máquina virtual Vector Floating-Point Performance Autor correspondiente. Tel. 82 2 3290 3639. Copia de copyright 2013 Elsevier B. V. Todos los derechos reservados. Seehwan Yoo recibió el B. S. Y los M. S. Licenciatura en ciencias de la computación de la Universidad de Corea, Seúl, Corea, en 2002 y 2004, respectivamente. Actualmente es Ph. D. Candidato en la Universidad de Corea, Seúl, Corea. Sus intereses actuales de investigación se encuentran en la virtualización de sistemas embebidos y móviles y la programación en tiempo real. SungBae Yoo recibió el B. S. Licenciado en ciencias de la computación por la Universidad de Konkuk, Seúl, Corea, en 2012. Actualmente es un estudiante de M. S en la Universidad de Corea, Seúl, Corea. Sus intereses de investigación actuales se encuentran en la virtualización de sistemas móviles y en sistemas y en la arquitectura de sistemas. Chuck Yoo recibió el B. S. Grado de la Universidad Nacional de Seúl, Seúl, Corea y M. S. Y Ph. D. En informática de la Universidad de Michigan, Ann Arbor. Trabajó como investigador en Sun Microsystems Laboratory, de 1990 a 1995. Actualmente es vicedecano de la escuela de posgrado de convergencia IT, Korea University, Seúl, Corea. Sus intereses de investigación incluyen la virtualización de dispositivos móviles y la virtualización de sistemas en red. Fue miembro del comité organizador de NOSSDAV2001 y comité técnico de EMSOFT 2008.

No comments:

Post a Comment