Respuesta

15

extraño, había una similar question on the scala-user group:

Rex Kerr respondidas en el momento (mayo):

nunca he encontrado un caso en el que el código de producción se aceleró significativamente por usando -optimise, al menos cuando se usa Sun JVM. Admito que en algunos casos podría suceder, pero parece aplicar optimizaciones similares a lo que hace la JVM. Quizás si hay límites en la profundidad de optimización, usando -optimise eliminaría algunas capas y luego permitiría a la JVM obtener un un poco más. Pero la mayoría de las veces ni siquiera me molesto en probarlo, dado que muchos casos (docenas) lo he probado donde el tiempo de ejecución no ha cambiado mensurablemente.

Espero que tenga un impacto en las máquinas virtuales que son más conservadoras (por ejemplo, JRockit) o ​​menos sofisticadas (por ejemplo, Dalvik).


Ismael Juma añadido:

La distribución Scala es en realidad compilado con -optimise, pero de hecho no está en no ser que el argumento se pasa a scalac.

¿No es lo suficientemente maduro, o podría provocar errores, cambiar la semántica, etc.?

Por lo que yo entiendo, el equipo decidió ser conservador y permitir sólo para la distribución Scala como un paso inicial (en Scala 2.8.0). Tal vez sea una buena idea considerar ampliar eso en la próxima versión principal de .


Por la influencia de '-optimise' (entre otros factores) en Scala2.9, vea este scala-language thread called "Scala2.9 slower?".

Estoy un poco preocupado. Después de ver que -optimize realmente optimiza "para las comprensiones" en 2.9.0, luego comparaté el código, y descubrí que era aproximadamente 2.5 veces más lento que 2.8.1.

Los resultados dejan un ... sentimiento mixto.

+13

Sería bueno tener una respuesta definitiva de los escritores del compilador scala sobre el estado de esta bandera para scala 2.11 –

Cuestiones relacionadas