como criar uma renderfarm com ubuntu, java, blender e loki render

Upload: nelson-goncalves

Post on 30-May-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    1/12

    COMOCRIARUMARENDERFARMCOM UBUNTU, JAVA, BLENDERE LOKI RENDER

    + + +

    Renderfarm a designao atribuda a uma rede de computadores criada para distribuir a tarefa de

    renderizar por vrias mquinas. O principal objectivo das renderfarms acelerar o processo de criao de

    imagens geradas por computador (renderizao) utilizando em simultneo e para um mesmo fim os

    recursos de processamento de vrios computadores.

    Geralmente, as renderfarms so constitudas por um master, o computador que cria os jobs ou

    projectos de renderizao, e vrios slaves, os computadores que realizam as tasks ou tarefas de

    renderizao. Cada job (projecto) constitudo por vrias tasks (tarefas). Se o job for criar uma

    animao, o nmero de tasks semelhante ao nmero de frames da animao e cada slave ter como

    misso renderizar um dado nmero de frames, realizar um dado nmero de tasks. Se, por outro lado, o

    job for criar uma imagem nica, esta decomposta em vrias seces ou partes e cada slave ir ter

    como tarefas a renderizao de um dado nmero de seces ou partes da imagem. Este ltimo processo

    habitualmente designado por tile rendering ou bucket rendering.

    Pr-requisitos:

    Ter pelo menos 2 computadores... ligados em rede (ligados com cabo de rede a um router),

    com sistema operativo Ubuntu 9.10 (pode utilizar outro sistema operativo e at utilizar

    sistemas operativos diferentes em simultneo),

    com Java Runtime Environment instalado,

    com Blender 2.49b instalado.

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    2/12

    Parte 1 Instalar o Loki Render

    a) Descarregue o ficheiro compactado lokiRender_062.zip de http://loki-render.berlios.de

    b) Descompacte o ficheiro para uma pasta sua escolha.

    Parte 2 Iniciar a renderfarm

    a) Duplo clique no ficheiro launchLoki.sh (se estiver a utilizar sistema operativo Windows, duplo clique

    no ficheiro lokiRender_062.exe) e escolha a opo Run in Terminal ou Run.

    b) Na janela que ir surgir (ver imagem 1), pode escolher entre 3 papis diferentes para o computador

    desempenhar na renderfarm.

    Imagem 1

    Master and Grunt: o computador pode criar jobs e realiza tasks. Master: computador s cria os jobs, o master (mestre).

    Grunt: computador s realiza tasks, um slave/grunt (escravo).

    c) No computador onde est (adiante designado por PC1), escolha a opo Grunt. O computador ir

    assumir o papel de grunt (slave) e procurar um Master na rede para se conectar (imagem 2).

    Todos os grunts (slaves) da renderfarm iro apresentar uma janela semelhante.

    Imagem 2

    d) No outro computador (adiante designado por PC2), repita os passos anteriores e escolha a opo

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    3/12

    Master and Grunt ou Master. Se escolher a opo Master and Grunt, o computador ir

    desempenhar 2 papis em simultneo e iro surgir duas janelas (ver imagem 3). Se escolher a

    opo Master, s ir surgir a janela master.

    Imagem 3

    Na imagem acima, a janela grunt informa que o grunt est conectado a um master com o nome

    nelson-desktop. Na janela master surge a indicao que existe um grunt tambm com o nome nelson-

    desktop. Esta situao s possvel porque o mesmo computador est a desempenhar 2 papis: master

    e grunt.

    No seu caso, se o seu PC2 tiver sido configurado como Master and Grunt, a janela master

    dever identificar 2 grunts que correspondem aos PC1 e PC2. Se o PC2 tiver sido configurado como

    Master, a janela master dever identificar apenas 1 grunt que corresponde ao PC1.

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    4/12

    e) Entretanto, se observar agora a janela grunt do PC1 (ver imagem 4) ir verificar que esta informa

    que o seu grunt est agora conectado ao master e aguarda instrues.

    Imagem 4

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    5/12

    Parte 3 Preparar os ficheiros

    a) O primeiro passo preparar o ficheiro criado em Blender que pretende renderizar, o ficheiro com

    extenso .blend. Defina as opes de renderizao que pretende para o seu projecto (i.e.

    dimenso, resoluo, formato do ficheiro, etc.). O Loki Render gere a renderizao de imagens

    fixas, NO escolha formatos de sada como AVI ou MOV, opte por formatos de imagem fixa (i.e.

    Jpeg, PNG, etc.). Sugere-se a escolha do formato PNG.

    b) Se o job for do tipo tile rendering ou bucket rendering, a imagem renderizada ser sempre

    criada com o formato PNG, independentemente do formato que tiver sido definido dentro do ficheiro

    .blend.

    c) Se o ficheiro incluir simulao de fludos ou partculas, assegure-se que a cache criada pelo

    Bake est disponvel dentro de uma pasta na mesma localizao do ficheiro e com o prefixo

    blendcache_. Ou seja, se o ficheiro tiver o nome exemplo.blend, dever existir uma pasta na

    mesma localizao do ficheiro com o nome blendcache_exemplo.

    d) Depois de definir as opes desejadas e antes de gravar o seu ficheiro .blend, active as seguintes

    opes:

    pack into .blend file (menu File > External Data): para que todos os ficheiros externos

    utilizados sejam arquivados ou importados para dentro do prprio ficheiro .blend.

    Compress File (menu File): a compresso ir melhorar e aumentar a rapidez de

    comunicao entre master e grunts.

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    6/12

    Parte 4 Iniciar um job

    a) Na janela do master (ver imagem 5), clique no menu Jobs e depois na opo New (ou clique

    com o boto direito na rea Job Queue e depois escolha New Job).

    Imagem 5

    b) Na janela do New Job (ver imagem 6) atribua um nome ao seu projecto (Name), escolha o

    ficheiro .blend que pretende utilizar (Project file), defina uma pasta para armazenar o resultado da

    renderizao (Output Directory), identifique o nmero da primeira e ltima frames que pretende

    renderizar (First Frame e Last Frame). Opcionalmente, pode definir um prefixo para o nome das

    imagens renderizadas (exemplo: se escrever Cena23 no Output File Prefix, os ficheiros das

    imagens iro ser gravados com o nome Cena23_0001.png , Cena23_0002.png, etc.). Active a

    opo Tile rendering APENAS se pretender fazer um tile rendering ou bucket rendering. Cliqueem Save.

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    7/12

    Imagem 6

    c) Na janela master, seleccione com um clique do rato o job que pretende iniciar e clique em Start.Se desejar, pode adicionar vrios jobs, criando uma lista de espera. Atravs da janela master

    pode ir acompanhando todo o processo e ser informado de diversos detalhes (ver imagem 7).

    Se clicar com boto direito do rato no nome de um grunt ou de um projecto/job pode aceder a

    mais informaes (View Details), abortar projectos/jobs ou desligar grunts.

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    8/12

    Imagem 7

    Job Queue Grunts

    name: nome que definiu para o projecto/job

    failed: n de tasks que falharam, no foramprocessadas correctamente

    remain: n de tasks por processar

    running: n de tasks em processamento

    done: n de tasks concludas

    status: situao actual do projecto/job...

    ready aguarda incio do processamentodas tasks

    running a executar tasksdone todas as tasks foram concludas

    name: nome do computador

    OS: sistema operativo

    cores: n de processadores

    memory: memria utilizada/disponvel em GB

    last task: tempo utilizado para completar a ltimatask

    status: situao actual do computador...

    idle - paradobusy a renderizarfetching a descarregar ficheiro do projecto

    do mastersending a enviar renderizaes ao master

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    9/12

    Parte 5 Automatizar o processo no Ubuntu 9.10

    a) Crie uma renderfarm seguindo os passos descritos na Parte 1 e Parte 2 deste tutorial.

    b) Aceda janela Preferences de cada uma das suas mquinas.

    c) No computador que ir servir de Master, aceda ao separador general (ver imagem 8), escolha a

    opo Master ou Master and Grunt e faa Save.

    Imagem 8

    d) Nos computadores que iro servir de grunts, repita o processo acima descrito mas escolha aopo Grunt e faa Save. Ainda nestes computadores, verifique se o caminho para a aplicao

    Blender est correcto (ver imagem 9) e corrija se necessrio.

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    10/12

    Imagem 9

    e) Adicione o script launchLoki.sh ao arranque de cada um dos computadores que pertencem sua

    renderfarm (master e grunts). V ao menu System (Sistema), submenu Preferences(Preferncias) e Startup Applications (Aplicaes de Arranque).

    Imagem 10

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    11/12

    f) Clique em Add (Adicionar) e introduza um nome sua escolha. Na caixa Command, utilize o

    Browse para localizar o ficheiro lokiRender_062.jare adicione java -jar linha de comando. A

    caixa Command dever apresentar uma linha de comando semelhante a esta:

    java -jar /home/openlab/lokiRender_062/lokiRender_062.jar

    (Ateno: existe um espao entre -jar e o caminho para ficheiro)

    g) Clique em Add (Adicionar).

    Imagem 11

    Se desejar, pode ainda automatizar o incio do sistema. Utilize a janela System > Administration >

    Login Screen (Sistema > Administrao > Janela de Incio de Sesso) para remover a

    necessidade de introduzir a palavra-passe no incio da sesso.

    Agora, basta ligar os computadores que pertencem renderfarm para estes iniciaremautomaticamente em modo Master ou Grunt, consoante o caso.

    Boas renderizaes!

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

  • 8/14/2019 Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    12/12

    Ttulo: Como criar uma renderfarm com Ubuntu, Java, Blender e Loki Render

    Autor: Nelson A. F. Gonalves

    Data: 2009

    Edio/Publicao: Associao Ensino Livre e OpenLab ESEV (ESE Viseu)

    Esta obra est licenciada sob uma Licena Creative Commons Atribuio-Partilha 3.0

    Pode copiar, distribuir, exibir e criar obras derivadas a partir deste documento. As novas

    obras devem dar crdito ao autor original e se alterar, transformar, ou criar outra obra com

    base nesta, s poder distribuir a obra resultante atravs de uma licena idntica a esta.

    Mais informaes sobre a licena: http://creativecommons.org/licenses/by-sa/3.0/

    ASSOCIAO ENSINO LIVRE OPENLAB ESEVE.N. 111 PROJECTODE SOFTWARE LIVREDA ESEV3140 - 274 MONTEMOR-O-VELHO ESCOLA SUPERIORDE EDUCAODE VISEUHTTP://WWW.ENSINOLIVRE.PT/ HTTP://WWW.ESEV.IPV.PT/OPENLAB

    A Associao Ensino Livre tem como finalidade promover a utilizao de

    software livre e a produo de contedos livres nos processos de aprendizagem,

    nomeadamente ao nvel do sistema de ensino. Acreditamos que o

    conhecimento colectivo enriquecido pela partilha livre de saberes

    individuais e/ou organizacionais, tendo presente que o prprio software,

    tambm ele uma forma de conhecimento. Cremos tambm que esta atitude

    cultural contribui para o desenvolvimento e o interesse dos jovens pelas novastecnologias e pelo ensino, num mundo em que este binmio se assume

    determinante para o desenvolvimento de uma sociedade.

    Visite-nos emhttp://www.ensinolivre.pt

    E-mail: [email protected]

    Morada:Associao Ensino Livre, Estrada Nacional 111, s/n, 3140-274 Montemor-o-Velho

    Apoio:Associao Diogo de Azambuja

    http://www.ensinolivre.pt/http://www.ensinolivre.pt/http://www.ensinolivre.pt/