Problema con ciclos (ejercicio de pi)

Iniciado por xuhipoint, 29 Marzo 2014, 01:48 AM

0 Miembros y 1 Visitante están viendo este tema.

amchacon

Cita de: yoel_alejandro en 30 Marzo 2014, 18:49 PMA pesar de ello yo hubiera supuesto que el manejo de leosansan, de sumar dos al contador n+=2 sería más eficiente que calcular 2*n+1 (suma y multiplicación incluida). Pero el ensayo demostró que fueron equivalentes, jeje, no se por qué.
La diferencia es de un ciclo, la diferencia de rendimiento es casi nula (cada segundo se hace más de 1.500.000.000 de ciclos en un procesador de 1,5 GHZ).
Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar

leosansan

Cita de: amchacon en 30 Marzo 2014, 20:10 PM
La diferencia es de un ciclo, la diferencia de rendimiento es casi nula (cada segundo se hace más de 1.500.000.000 de ciclos en un procesador de 1,5 GHZ).

Gracias, no por darme la razón, cosa que no has hecho, sino por la explicación del por qué algo que yo creía más eficiente no se ha traducido a los hechos, al menos a la escala que los hemos realizado.

Todo lo anterior me lleva a la conclusión de que lo que llamo "piques sanos" nos hacen más sabios cuando, sabios como tu más que estimado amchacon, nos sacan de las inevitables dudas surgidas en esos piques. Sencillamente, gracias. ;)

Además yo me lo he pasado bien. Ojalá se diera las circunstancias más a menudo ya que de la exposición de distintos puntos de vista suele surgir alguna verdad más o menos indiscutible y enriquecedora para todos.



¡¡¡¡ Saluditos! ..... !!!!



Yoel Alejandro

La diferencia es de un ciclo de procesador (una operación aritmética elemental) por cada repetición del "for". Eso en el último ejemplo con mil millones de repeticiones en el "for" ha debido producir una diferencia cercana a 1 segundo, que no ha sido así. Y he ahí la incógnita  :huh:, jaja.

Pero cuidado que si queremos adentrarnos en este mundo debemos sacar con exactitud las cuentas. Tengo en mente (no se si bien recuerdo) que la frecuencia de reloj de procesador no es exactamente igual a la frecuencia de las instrucciones de máquina, dependiendo del procesador una instrucción de máquina puede demorar 4 ciclos de reloj, en otros puede demorar 12 ciclos. O sea, que el procesador de 1.5Ghz en realidad computa menos de 1500 millones de operaciones por segundo. Claro, están las arquitecturas de doble núcleo que corren en paralelo, etc. En realidad, es algo difícil predecir cuánto demorará la ejecución de un programa en una máquina determinada, sólo podemos decir que son "muchos" millones por segundo  ;D
Saludos, Yoel.
P.D..-   Para mayores dudas, puedes enviarme un mensaje personal (M.P.)