Autor Tema: matlab, más lento que C Fortran...

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

25 Julio, 2010, 05:14 am
Leído 1721 veces

mathtruco

  • Moderador Global
  • Mensajes: 4,922
  • País: cl
  • Karma: +0/-0
  • Sexo: Masculino
  • El gran profesor inspira
Hola,

 me pregunto por qué matlab parece ser más lento que C o Fortran.

25 Julio, 2010, 06:38 am
Respuesta #1

physlord

  • nonses fuf
  • Junior
  • Mensajes: 47
  • Karma: +0/-0
  • Sexo: Masculino
    • My Blog | Un simple blog sobre Mates
Es algo normal de los lenguajes interpretados respecto a los lenguajes compilados. Para ejecutar un programa en matlab el interprete le "traduce" a la computadora que hacer instrucción por instrucción y la computadora la ejecuta al momento (y por eso a veces aparecen errores en tiempo de ejecución que aún con un depurador no encuentras). Mientras que un lenguaje compilado, como C o Fortran, traduce todo el programa a código máquina y por lo tanto al momento de correrlo, como no hay que "traducir", es más rápido, y los errores usualmente aparecen durante la compilación, no cuando ya tienes el programa compilado.

La ventaja de los lenguajes interpretados es que son más flexibles y por ello más fáciles (aprender python es un juego de niños).

Saludos!

25 Julio, 2010, 03:45 pm
Respuesta #2

mathtruco

  • Moderador Global
  • Mensajes: 4,922
  • País: cl
  • Karma: +0/-0
  • Sexo: Masculino
  • El gran profesor inspira
Gracias physlord,

 muy clara tu explicación.

 Entonces ¿compilando matlab, el programa resultante debiera ser tan rápido como cualquier lenguaje compilado?

(No he probado como mejora la velocidad de un programa compilando algún programa en matlab)

25 Julio, 2010, 09:21 pm
Respuesta #3

physlord

  • nonses fuf
  • Junior
  • Mensajes: 47
  • Karma: +0/-0
  • Sexo: Masculino
    • My Blog | Un simple blog sobre Mates
Pues matlab fue concebido para ser ejecutado por un interprete. No sé si existe un compilador ni para que sistema y plataforma.

25 Julio, 2010, 09:35 pm
Respuesta #4

mathtruco

  • Moderador Global
  • Mensajes: 4,922
  • País: cl
  • Karma: +0/-0
  • Sexo: Masculino
  • El gran profesor inspira
Sí claro, matlab se puede compilar, o por lo menos, crear un ejecutable. No sé si este proceso de compilación es el mismo concepto de compilación de fortran o C, pero permite tener un "punto exe" y que corre en una máquina sin tener matlab instalado, aunque el ejecutable queda sumamente pesado. Quizás este proceso igual utilice a matlab como intérprete, no sé.

Gracias nuevamente.