Picos de FLOP por ciclo para núcleos ARM11 y Cortex-A7 en Raspberry Pi 1 y 2

Me gustaría saber los FLOP máximos por ciclo para el núcleo ARM1176JZF-S en los núcleos Raspberry Pi 1 y Cortex-A7 en Raspberry Pi 2.

Desde elARM1176JZF-S Manual de referencia técnica parece que VFPv2 puede hacer un SP MAC en cada ciclo de reloj y un DP MAC en cada ciclo de reloj. Además, hay tres tuberías que pueden operar en paralelo: una tubería MAC (FMAC), una tubería de división y sqrt (DS), y una tubería de carga / almacenamiento (LS). Basado en esto, parece que el ARM1176JZF-S de Raspberry PI 1 puede hacer al menos (desde la tubería FMAC)

1 DP FLOP / ciclo: un MAC / 2 ciclos2 SP FLOPs / ciclo: un MAC / ciclo

Wikipedia afirma que el FLOPS de la frambuesa PI 1 es0.041 DP GFLOPS. Dividir por 0.700 GHz da menos de 0.06 DP FLOPs / ciclo. Eso es aproximadamente 17 veces menos que mi estimación de 1 DP FLOP / ciclo que obtengo.

Entonces, ¿cuál es la respuesta correcta?

Para el procesador Cortex-A7 en Raspberry Pi 2, creo que es lo mismo que el Cortex-A9.Los FLOP / ciclo / núcleo para el Cortex-A9 es:

1.5 DP FLOPs / ciclo: adición escalar + multiplicación escalar cada otro ciclo4 SP FLOPs / ciclo: adición de NEON de 4 anchos cada dos ciclos + multiplicación de NEON de 4 anchos cada dos ciclos.

¿Los FLOPs / cycle / core para Raspberry Pi 2 son los mismos que para Corrtex-A9? Si no, ¿cuál es la respuesta correcta?

Editar:

Las principales diferencias entre el Cortex-A9 y el Cortex-A7 (cuando se trata de picos flops / ciclo) son:

el Cortex-A9 es de doble problema (dos instrucciones por reloj) y el Cortex-A7 essolo parcialmente doble problema "el A7 no puede emitir dos puntos flotantes o instrucciones NEON".el Cortex-A9 es un procesador fuera de servicio (OoO) y el Cortex-A7 no lo es.

No estoy seguro de por qué OoO afectaría el pico FLOPS. La doble cuestión ciertamente debería. Creo que eso reduciría el pico FLOPS a la mitad.

Editar: basado en la tablahttp://hardwarebug.org/2014/05/15/cortex-a7-instruction-cycle-timings/ Stephen Canon dio un comentario aquí están mis nuevos flops máximos para el Cortex-A7

0.5 DP FLOPs / ciclo: un VMLA.F64 (VFP) cada cuatro ciclos.1.0 DP FLOPs / ciclo: un VADD.F64 (VFP) cada ciclo.2.0 SP FLOPs / ciclo: un VMLA.F32 (VFP) cada ciclo.2.0 SP FLOPs / ciclo: un VMLA.F32 (NEON) en dos flotadores de 32 bits cada dos ciclos.

Respuestas a la pregunta(1)

Su respuesta a la pregunta