Discusión general en español sobre Maxwell Render.
#152738
Hola a todos,

Hace ya un tiempo, con Ernesto (compañero mío de trabajo) pensamos que bueno seria saber si pudiéramos predecir el comportamiento del motor de render.
Este problema se nos planteaba cuando tratábamos de usar el maxwell para trabajos cotidianos.
Muchas veces el tiempo que pensábamos necesario terminaba siendo inferior al que realmente necesitaríamos, o la resolución no llegaba a ser conveniente.
Luego de muchos intentos y muchas otras pruebas llegamos a producir esta tabla que resume mucha de la experiencia que fuimos adquiriendo. Quien quiera detenerse más en su observación no tardará en evidenciar los límites operativos actuales del producto.
Empleándola de manera correcta puede predecirse el comportamiento (pasos, tiempo y resolución) del motor y ajustar así los tiempos de acuerdo a las necesidades de los clientes.

Aclaración: No contamos con ningún dato de NL para construir nuestra regla de cálculo. Fue ajustada en base a nuestras continuas pruebas. Pero creemos que es lo suficientemente precisa y esperamos que pueda serles de gran ayuda.

Dada a la naturaleza tramposa del cálculo (nos referimos al hecho de subir un nivel de sampleado en MX significa duplicar el tiempo empleado hasta el momento) es sumamente difícil predecir el tiempo del render. El tamaño de la escena también influye en el tiempo de renderizado y el valor del benchmark puede llegar a hacer que su render sea prácticamente imposible. Cabe aclarar que los valores del benchmark no son constantes y pueden variar para otra cámara aun dentro de la misma escena.
En nuestro trabajo es imprescindible poder predecir el comportamiento del render así antes de realizarse pude llegar a saber:

-cuanto tiempo va a llevar?
-cual será la resolución a la cual podrá arribar en un tiempo razonable?
-Cuanto mejoraré el cálculo si mi benchmark hubiese sido mejor? (aumentar la capacidad de procesamiento renderizando con más maquinas).
-Verificar que el nivel de sampleado sea posible en base al benchmark. (hemos observado escenas en las no podríamos llegar con el comportamiento actual del motor).

Pasos:

1-Determinación del benchmark: Una vez elegido el punto de vista y la proporción de la imagen a renderizar debe realizar un render de prueba para determinar el Benchmark. Para poder realizar esta prueba es muy importante mantener la proporción pero reducir el tamaño de render muchísimo. (ejemplo, imagen final=1000x1000 Px => prueba 100x100 PX). No importa la calidad de la imagen, lo que es si importante es que esta prueba se realice hasta llegar al un nivel de sampleado=10. A una resolución baja esto la hace en muy poco tiempo. Llegado al SL=10 Anotar el valor de benchmark que arroja el MX.


Descargar la Tabla: http://www.4dempire.com/MXCalc.pdf

2-Datos necesarios para entrar a tabla: Para entrar en la tabla es necesario saber

a. SL
b. RESOLUCION DEL RENDER
c. VALOR DEL BENCHMARK
d. TIEMPO

3- MxCal: Marcar a, b e identificar c y d en el grafico. Ahora si proyecta ese punto siguiendo las líneas inclinadas hasta cortar la línea de tiempo ahí encontrará el tiempo aproximado de render para los valores elegidos.

Ejemplo:

SL=12
Resolución 2.3 MP (mega píxel)
Benchmark= 30
Tiempo= 5.5hs

A partir de ahora es cuando la tabla empieza a arrojar datos interesantes.

- Ejemplo 1a “más SL”:

SL=16

Si proyectamos el SL=16 sobre la misma curva de resolución (2.3MP) verán que si proyectamos esa intersección sobre la misma línea de benchmark=30, el tiempo se incrementa notablemente = 27 hs.

- Ejemplo 1b “aun más SL”:

SL=17 unas aproximadas 40hs

Sorprendente como los buenos resultados se hacen cada vez más lejanos.

La pregunta lógica sería, ¿Qué puedo hacer para realizar esto en el tiempo que yo creo lógico 12hs (una noche de render)?

Aumentar el benchmark, mas fuerza bruta te falta. Una opción es triplicar tu capacidad de procesamiento. Triplicar tu benchmark ( o sea B=90) permitiría realizar esta misma imagen en unas 13 hs y unos minutos.
Ahora si bien este considerable esfuerzo de procesado te daría una imagen con un sampleado de 17, la resolución no es muy buena aun. Veras que si a mismo sampleado pretendo cambiar de curva de resolución para llegar a unos 4MP veras que nos vamos de la tabla y podrás imaginarte el incremento que para este valor de benchmark obtendríamos.

Ayudas para usar la tabla:

-Las curvas de resolución son expresadas en mega píxeles para desvincularlas de las distintas proporciones que pueden adoptarse. Ten en cuanta que duplicar los MP no es lo mismo que duplicar los dos lados de la imagen.

-Si necesitas menos tiempo:

O aumentas el poder de calculo (render en red).
O reduces la resolución de la imagen. Las curvas hacia arriba bajan la resolución. Las curvas hacia abajo aumentan la resolución.

Conclusiones:
El valor del benchmark es muy relativo. Llegamos a encontrar escenas de iluminación intrincada en donde el benchmark nos dio 9. Estas escenas poco iluminadas necesitan más sampleado para reducir el ruido unos 18 como mínimo a una resolución 2.3MP con este benchmark y a mano alzada ya que se va de tabla daría unas 200 horas, o sea unos 8 días. Usando 8 máquinas 24hs. Amortizar estas imágenes con estos equipos seria algo aun mas complicado que esta tabla.
Hasta lo que comprobamos la tabla esta funcionando.
Hay escenas que dan altos niveles de benchmark y con ellas se pueden hacer renders en tiempos aceptables, resoluciones medianas ayudan también a bajar los tiempos.
El valor de la tabla radica en que con esta simple prueba inicial se pude saber cual el límite al que puedes llegar con tu hardware, con una resolución determinada en un tiempo determinado y a una calidad determinada.
Interpretar esta imagen les brindará información crucial al momento de predecir el resultado.
Espero que les sirva tanto como a nosotros.
Un saludo.


Ernesto Lacalle & Francisco Di Prospero
By mane162
#152862
Pues sí, muchas gracias por el esfuerzo :wink:

mane162
By smota
#152973
Impresionante. :D . Por curiosidad, ¿mas o menos cuantos puntos necesitasteis para realizar la tabla.
User avatar
By Ernesto
#153180
Aca les dejo el link con la tabla actualizada

http://www.zalm.com.ar/mxcal.pdf

y tambien este otro sobre el cual dibuje un ejemplo de compleja resolucion.

http://www.zalm.com.ar/mxcalc_ejem.pdf

pd. la tabla la realizamos en base a muchas escenas nuetras. Tambien participaron usuarios del foro en ingles. Renderizaron la escena que viene en MX 1 de ejemplo y nos enviaron los valores que arrojaban sus ordenadores.

Saludos
By dolmen
#153208
:shock: Increiblemente bueno, chicos vuestro trabajo de laboratorio es muy, muy util.
Gracias compis :wink:
Sketchup 2025 Released

Thank you Fernando!!!!!!!!!!!!!!!!!!!!!!!!!!! hwol[…]

I've noticed that "export all" creates l[…]

hmmm can you elaborate a bit about the the use of […]

render engines and Maxwell

Funny, I think, that when I check CG sites they ar[…]