elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda con rendimiento de C/C++ [SOLUCIONADO]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda con rendimiento de C/C++ [SOLUCIONADO]  (Leído 1,350 veces)
SARGE553413

Desconectado Desconectado

Mensajes: 176


Ver Perfil
Duda con rendimiento de C/C++ [SOLUCIONADO]
« en: 10 Enero 2014, 16:35 pm »

Hola a todos, en otro post que escribí se mencionó algo sobre esto, resumiendo: que los compiladores hoy día son tan avanzados que optimizan el código igual o mejor que un programador.
Escribo en un post nuevo porque este tema no tiene nada que ver con el post del que he hablado arriva.

Dicho esto, mi pregunta es:
1 - A parte del hecho de que lenguajes como C,C++ al compilarse pasan a lenguaje máquina, ¿Su "compelgidad extra" puede aportar alguna mejora significativa del rendimiento con respecto a otros lenguajes de mas alto nivel como Java?
Es decir, si no podemos optimizar el código de C++ utilizando todas su posibilidades de "mas bajo nivel", porque el compilador ya optimiza hasta tal punto que (casi) no se puede mejorar, no es lo mismo hacer el programa en otro lenguaje de mas alto nivel? Porque el algoritmo va a se el mismo para los dos...
Porque lo que hace el compilador de C++, lo puede hacer el de java, y lo puede hacer el de cualquier otro lenguaje (compilado), ¿cierto?

Gracias de antemano.

PD. si hay tiempo, una novedad de C++11 es la semántica de moviemientos. Quizá me equivoque pero por lo que he leído es bastante potente. Mi pregunta es si esto lo consigue solo C++ o también los lenguajes de mas alto nivel como java etc.


« Última modificación: 10 Enero 2014, 21:45 pm por SARGE553413 » En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Duda con rendimiento de C/C++
« Respuesta #1 en: 10 Enero 2014, 20:29 pm »

A ver, cuanto te hice esa respuesta lo que quería transmitirte esque no te preocuparas por detalles muy rebuscados porque la ganancia es mínima y la posibilidad de provocar bugs es muy alta. Pero tampoco es llegar al otro extremo.

Lo más importante es el algoritmo, pero usando el mismo algoritmo, C/C++ son más rapidos que Java al estar compilados en código maquina. No hace falta que lo diga yo, puedes medir que tarda en ejecutarse el mismo código.

Y entre C y C++, generalmente es más rápido C porque tienes más control sobre el código. En C++ con los encapsulamientos y tal olvidas el coste que tiene algunas operaciones (por ejemplo la clase string, que es muy cómoda pero te incita a hacer muchas asignaciones, que en realidad son operaciones costosas en un array dinámico).

Lo ideal para máxima eficiencia es C con las partes más duras hechas en ensamblador. Pero eso muchas veces es casi-innecesario con los procesadores de hoy en día. Para usos militares probablemente se use C y a correr.

1 - A parte del hecho de que lenguajes como C,C++ al compilarse pasan a lenguaje máquina, ¿Su "compelgidad extra" puede aportar alguna mejora significativa del rendimiento con respecto a otros lenguajes de mas alto nivel como Java?
Es decir, si no podemos optimizar el código de C++ utilizando todas su posibilidades de "mas bajo nivel", porque el compilador ya optimiza hasta tal punto que (casi) no se puede mejorar, no es lo mismo hacer el programa en otro lenguaje de mas alto nivel? Porque el algoritmo va a se el mismo para los dos...
Porque lo que hace el compilador de C++, lo puede hacer el de java, y lo puede hacer el de cualquier otro lenguaje (compilado), ¿cierto?
El compilador optimiza las cosas evidentes. Aquí hay una lista de las que hace el gcc:
http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.htmlt


En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
SARGE553413

Desconectado Desconectado

Mensajes: 176


Ver Perfil
Re: Duda con rendimiento de C/C++
« Respuesta #2 en: 10 Enero 2014, 21:45 pm »

Ok gracias por la respuesta, espero no haber molestado, en cualquier caso no era mi intención.

Saludos.
En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Duda con rendimiento de C/C++ [SOLUCIONADO]
« Respuesta #3 en: 10 Enero 2014, 21:55 pm »

Yo no estoy molesto por nada ^^
En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Consulta sobre rendimiento Windows 7 en una PC(Solucionado)
Windows
Roy-Mustang 9 7,246 Último mensaje 11 Octubre 2010, 06:56 am
por Randomize
(solucionado) duda jsp
Desarrollo Web
juni85 0 1,182 Último mensaje 31 Mayo 2011, 10:31 am
por juni85
Duda rendimiento GPU portatil... Esto es raro...
Hardware
XXXXXX 1 1,905 Último mensaje 10 Junio 2011, 14:38 pm
por imoen
Mejor rendimiento: GT 220 o integrada en placa (SOLUCIONADO) « 1 2 »
Hardware
WifliX 14 6,708 Último mensaje 15 Mayo 2012, 12:41 pm
por WifliX
Duda con la Ip 192.168.2.1(solucionado)
Redes
Senior++ 2 2,421 Último mensaje 24 Junio 2012, 14:13 pm
por Senior++
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines