Tens um Multi core 64 bits e queres ter máxima perfomance no folding? Ve como aqui

_zZz_

Professional Folder
Tens um Multi core 64 bits e queres ter máxima perfomance no folding?

O objectivo deste guia é explicar de uma maneira genérica o necessário para por a correr um cliente SMP numa máquina virtual, em Linux 64 bits. Espera-se portanto que o utilizador tenha conhecimentos básicos de computadores e da nomenclatura usada. Alguma dúvida especifica, poderá ser respondida no tópico.

Desta maneira será possivel aumentar bastante os ppd do folding (no meu caso passou de à volta de 1600 ppd para 4600)!


Prerequisitos:
Tri ou Quad Core CPU com X64 e Virtualização
Vmware workstation 6.5 (www.vmware.com)
ubuntu-9.04-desktop-amd64.iso ( http://www.ubuntu.com/getubuntu/download) - fazer download da versao 64 bits

Step1: Instalar o Vmware

Step2:Criar uma VM baseada em Ubuntu
A parte boa do Ubuntu, é que o Vmware faz um easy-install deste SO. Para isso, basta abrir o Vmware e criar uma nova Virtual Machine e dizer a localizacao do .iso do linux. Os settings podem ser os default, alterando so a Virtual machine memory para mais que 512 (1024 é um bom valor).
No meu caso o vmware configorou tudo correcto, sem intervencao minha.

hint: Durante a criacao da VM, irá ser preciso definir um user e password. É importante definir algo que nao se esquecam, pois vai ser sempre necessário os usar.

Ao iniciar a 1a vez a VM, o ubuntu irá perguntar se quer fazer os updates automaticos. Sao 150 megas, aconselho a o fazer.


Step3: enganar o Vmare, tirando a restricao de poder só usar 2 cores:


O problema maior do VMware, é que por default só usa 2 cores, o que limita bastante a perfomance do cliente de folding. Uma das solucoes seria instalar duas VM, cada uma a correr o seu cliente SMP.
Mas essa solucao é do passado, visto que alguem encontrou uma maneira de "enganar" o VMWARE:

retirado de (o link tem imagens, para quem necessitar):
http://en.fah-addict.net/articles/articles-1-2+vmware-optimizations.php

Fazer power off da VM, e fechar o VMWARE.
Ir à pasta onde se guarda as VM (por defeito é nos "meus documentos" -> virtual machines
Ai irá se encontrar um ficheiro .vmx, que corresponde ao nome que deram à vossa VM criada.
e.g:
\Ubuntu 64-bit \ Ubuntu 64-bit.vmx" ( "VMWare virtual machine configuration" in the file type displayed in Windows Explorer, if windows is not set to display the file extension).

Editar este ficheiro com o notepad, e alterar o seguinte parametro para 4:
"numvcpus"
(se nao existir este parametro, é possivel adiciona-lo e.g numvcpus = "4" )

confirmar que o parametro “maxvcpus" é 4 tambem.

Para quem tem um tri core, pode usar tb este processo e alterar para 3 em vez de 4 o parametro "numvcpus"



Step4: Instalar o folding na máquina linux
Retirado /traduzido de http://folding.stanford.edu/English/LinSMPGuide


Abrir um Terminal de linux - encontra-se em "Applications->Accessories->Terminal".

No Terminal vai-se ler um prompt semelhante a isto:

yourusername@yourcomputername ~ $

Executar os seguintes comandos neste terminal:

sudo apt-get install curl


mkdir -p ~/folding
cd ~/folding
curl -O http://www.stanford.edu/group/pandegroup/folding/release/FAH6.29-Linux.tgz
tar xzf FAH6.29-Linux.tgz

Agora o cliente de FAH já está na pasta folding, e é preciso o configurar com o seguinte comando:

./fah6 -configonly

As configuracoes necessárias saem do scope deste tutorial, para quem nao souber pode ler aqui:
http://folding.stanford.edu/English/WinSMPGuideMPICH
nota: ler só a parte de "CLIENT CONFIGURATION"


Iremos agora criar um script, para facilitar o inicio do cliente com os parametros avancados já embutidos . (-smp)

Mais uma vez, usando o terminal escrever os seguintes comandos:

echo "./fah6 -smp $* &" > fah
chmod +x fah

Agora, para iniciar o cliente de folding, basta correr dentro da pasta /folding o seguinte comando:

./fah


Step 5; instalar o Fahmon.

O Fahmon pode ser instalado de 2 formas: compilado ou atráves de um binário. No site oficial só existe a versao para compilar, que por sua vez nao consegui fazer neste UBuntu.

A alternativa existente funciona bem, e é a seguinte:
Alguem compilou por nós o fahmon para Ubuntu 9.04, e basta seguir o seguinte procedimento para o ter a correr:

- No UBuntu abrir: System > Administration > Software Sources.

- Clicar na Third Party Software tab.


- Clicar no button de add

- Fazer paste de:
deb http://ppa.launchpad.net/tsunetomo/ppa/ubuntu jaunty main

Quando pedido, fazer o reload de "software sources information". Nao te preocupes se vires um aviso de "unverified software", iremos corrigir isso de seguida.

Num terminal, executar o seguinte comando :
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DDC93004

No meu caso, observei que os servidores do ubuntu estavam bastante lentos.. Deu varias vezes communication time out. O que fiz foi repetir o comando acima mencionado, até funcionar.

Isto faz que as aplicacoes deste developer sejam consideras seguras para o Ubuntu. Nao se preocupem, este procedimento nao tem nada de mal (ver aqui: https://launchpad.net/~tsunetomo/+archive/ppa)

Agora instalar o Fahmon é super simples!!
Num terminal escrever os seguintes comandos:
sudo apt-get update
sudo apt-get install fahmon


Podem depois encontrar a aplicacao fahmon num dos menus do Ubuntu:
Applications ->system tools ->Fahmon


E pronto, por agora este guia está concluido.. Com as duvidas / problemas que surgirem, será actualizado. Peco desculpa pela forma / template, mas a minha ideia inicial era mesmo fazer um guia rápido, em que o conteudo era mais importante que a forma.

Espero que gostem / usem, e deste modo aumentem bastante a producao diária da nossa equipa.

edit1: falta uma parte neste tutorial, que é ajustar as prioridades do uso do cpu e GPU, para impedizer que haja uma perca de performance significativa do cliente GPU. Assim que puder acrescento aqui. até lá, ler as instrucoes em ingles, que se podem encontrar aqui:

edit2:
Para parar a aplicacao folding, que está a correr em linux, podemos fazer o seguinte:

Primeiro, precisamos de saber qual o pid (process identifier) da aplicacao folding, usando num Terminal o comando: ps -a

O resultado será algo do genero,
ps -a

PID TTY TIME CMD
1944 pts/0 00:00:00 fah6

Anotando a PID 1944, basta executar o seguinte comando:
kill 1944

E pronto, iremos observar no ecra a informacao que o folding recebeu a instrucao para fechar.


edit: removido a configuracao com VERBOSITY 9, visto que pode causar problemas nas WU.

edit: Actualizado com nova versao do folding 6.29 para Linux smp
 
Última edição:
tenho um problema .. não consigo usar os 4 cores .. por exemplo no ficheiro vmx .. nao tem la o " numvcpus " apenas tem o " maxvcpus " eu adicionei o " numvcpus " e no vmware aparece la na quantidade de CPUS : " other ( 4 ) ... mas nao consigo ...
 
que vmware usas?

como sabes que nao esta a usar os 4 cores? Podes por um screenshot do vmware, onde aparece o no de cores usados?

nao esquecer que depois é preciso correr o cliente de folding com a flag -smp, que é o que o script faz!
 
a versao que tenho do vmware é a mais recente ...6.5.3.1185404 e quanto aos cores acho que ja esta a funcionar o unico problema agora é o fah arrancar com a WU .. vou meter aqui uma Print ...




edit: ja consegui hehehe ... eliminei a pasta work e todos os outros ficheiros menos o script o mpi e o config e reiniciei a maquina virtual ao entrar tentei executar novamente e ja funcionou :D vou agora instalar o fahmon


edit 2 : ehhehe fahmon instalado e a funfar 5* :D , tutorial bombastico :D thanks .. ate ja noto a diferença em linux... o pc fica muito mais lento até o ponteiro do rato encrava com a potencia com que esta a puxar o CPU ..

edit 3 : no entanto notei um acentuado decrescimo de rendimento do cliente GPU ... :(

edit 4 : Confirmadissimos os pontos :D:D :

http://img182.imageshack.us/i/ubuntu64bit904200909162.png/
 
Última edição:
parabens, por teres sido o 1o a seguir o tutorial :)!

mas eu aqui nao notei perca de performance nenhuma no uso geral do pc... seguiste as regras para baixar a prioridade da vm?

e outra coisa, no meu caso tou a usar WIn7... acho que pode tar tb ai a diferenca, em que a distribuicao de trabalho pelos cpus teja mais optimizada.

nao sei se tens isto configurada no cliente grafico, mas deve ter a opcao de cpu usage como low (em vez de idle). isso ajuda tb

edit: li no perfil que tens tb o win 7. Logo nao pode ser por ai... confirma a opcao do cliente grafico. No meu caso nao perdi mesmo nada acentuado....
edit2: se falas em rato mais lento só na VM em linux, isso pode ser normal em vm! nao tando relacionado directamente com o folding :)
 
Última edição:
parabens, por teres sido o 1o a seguir o tutorial :)!

mas eu aqui nao notei perca de performance nenhuma no uso geral do pc... seguiste as regras para baixar a prioridade da vm?

e outra coisa, no meu caso tou a usar WIn7... acho que pode tar tb ai a diferenca, em que a distribuicao de trabalho pelos cpus teja mais optimizada.

nao sei se tens isto configurada no cliente grafico, mas deve ter a opcao de cpu usage como low (em vez de idle). isso ajuda tb

edit: li no perfil que tens tb o win 7. Logo nao pode ser por ai... confirma a opcao do cliente grafico. No meu caso nao perdi mesmo nada acentuado....
edit2: se falas em rato mais lento só na VM em linux, isso pode ser normal em vm! nao tando relacionado directamente com o folding :)

como faço para baixar a prioridade da vm ? isso nao vai fazer perder rendimento do cliente SMP que esta a correr nela ? quanto ao cliente GPU ..no separador advanced ...no core priority esta em : " lowest possible ( recomended ) "
 
estas a usar o cliente gpu grafico? eh eh..big mistake, a consola de comandos é mt mais rapida...:)

o core priority poe em low...

checka este tutorial, se souberes ingles. Assim que puder, irei actualizar o meu tutorial com esta parte. esqueci-me e é bastante importante

Set the priority of the virtual machine.

The second stage of optimization is to set the priority of VM. Remember to set your GPU clients to low (console) or slightly higher (systray) and the SMP client in the VM to idle in the advanced configuration section of the client.

To create a global priority setting (applied to all virtual machines by default), go to the Edit menu> Preferences> Priorities tab. Adjust the settings as the following screenshot:


Click to enlarge the image.

vmwarepriority.png



For simplicity, Grabbed means that your VM is selected or displayed, and Ungrabbed means it is not selected or displayed. To have a priority low enough not to affect the GPU client, you need to the VM to be in the Ungrabbed, for example by minimising VMWare to the taskbar.
http://en.fah-addict.net/articles/articles-1-2+vmware-optimizations.php
 
Última edição:
estas a usar o cliente gpu grafico? eh eh..big mistake, a consola de comandos é mt mais rapida...:)

o core priority poe em low...

checka este tutorial, se souberes ingles. Assim que puder, irei actualizar o meu tutorial com esta parte. esqueci-me e é bastante importante


http://en.fah-addict.net/articles/articles-1-2+vmware-optimizations.php

sim estou a usar um cliente GPU grafico .. ate porque tenho muitos mais pontos que um cliente cpu normal ...e eu tinha o cliente GPU + SMP no windows a fazer uns meros 7500-7600 PPD's ... sim sei ingles...vou entao fazer isso mais logo que tenho que sair ..

edit . mas ja agora este clientes GPU consola e nao systray ? agora fikei na duvida ...
 
ha 2 tipos de clientes de folding que usam a grafica:

este: (que é um instalavel, e que tens um icon so systray)
Windows XP/2003/Vista GPU System tray client with special viewer for NVIDIA GPU's (installer msi) 6.23

e este:
Windows Vista GPU Console client (note running as a service does not work in Vista). Uninstall any existing FAH services made with pre 6.20 clients before updating. 6.23


O 2, versao GPU consola, é mais rapido a processar.

Que versao tens instalada?
 
ha 2 tipos de clientes de folding que usam a grafica:

este: (que é um instalavel, e que tens um icon so systray)
Windows XP/2003/Vista GPU System tray client with special viewer for NVIDIA GPU's (installer msi) 6.23

e este:
Windows Vista GPU Console client (note running as a service does not work in Vista). Uninstall any existing FAH services made with pre 6.20 clients before updating. 6.23


O 2, versao GPU consola, é mais rapido a processar.

Que versao tens instalada?

a systray que da para ver a molecula a ser processada ...
 
a systray que da para ver a molecula a ser processada ...

creio que se usares a outra, é mais rápido

porque esperar pelo ubuntu 9.10? A partir de ter o vmware instalado, e ter os isos.. este processo demora para ai 30m! E as vantagens estao à vista :)
 
Última edição:
Há outra necessidade que nunca falam nos tutoriais da internet, que é a do processador ter de suportar Virtualização.

Por exemplo E5xx e E7xx não dão para fazer isso.
 
Há outra necessidade que nunca falam nos tutoriais da internet, que é a do processador ter de suportar Virtualização.

Por exemplo E5xx e E7xx não dão para fazer isso.

pois .. tambem lembrei me disso... lol .. por acaso o meu suporta e a motherboard tambem ..so que estou a ter problemas na mesma com o cliente GPU mesmo fazendo a cena das prioridades não fica bem ...

edit: tenho outro problema na maquina virtual quando a desligo ou reinicio .. a proteina que está a ser foldada nao recomeça onde parou o client saca outra ...será que é por nao fechar o client e desligar logo o PC ? ja agora como fecho uma aplicação no linux ? ai k dores de cabeça ...lol
 
Última edição:
pois .. tambem lembrei me disso... lol .. por acaso o meu suporta e a motherboard tambem ..so que estou a ter problemas na mesma com o cliente GPU mesmo fazendo a cena das prioridades não fica bem ...

edit: tenho outro problema na maquina virtual quando a desligo ou reinicio .. a proteina que está a ser foldada nao recomeça onde parou o client saca outra ...será que é por nao fechar o client e desligar logo o PC ? ja agora como fecho uma aplicação no linux ? ai k dores de cabeça ...lol

tens que desligar o linux antes de desligares o pc! senao claro que ele nao salva o estado do cliente..nao precisas fechar a aplicacao do linux, a unica coisa que tens que fazer é um "power off" no linux (exactamente o mesmo que em windows :P)

Ou seja.. primeiro desligas o SO da maquina virtual, depois fechas o vmware. E só de seguida deves desligar o pc.

Sei que dá mais trabalho do que o normal, mas a diferenca nos resultados diários compensa! :)

Quanto ao problema das prioridades.. Tenta instalar a versao cliente GPU consola, e faz lá o set da prioridade para low.

Cumps
 
tens que desligar o linux antes de desligares o pc! senao claro que ele nao salva o estado do cliente..nao precisas fechar a aplicacao do linux, a unica coisa que tens que fazer é um "power off" no linux (exactamente o mesmo que em windows :P)

Ou seja.. primeiro desligas o SO da maquina virtual, depois fechas o vmware. E só de seguida deves desligar o pc.

Sei que dá mais trabalho do que o normal, mas a diferenca nos resultados diários compensa! :)

Quanto ao problema das prioridades.. Tenta instalar a versao cliente GPU consola, e faz lá o set da prioridade para low.

Cumps

eu falei na maquina virtual .. eu desliguei a maquina virtual linux .. e iniciei novamente ...so que despois eu fazer o comando ./fah para abrir a aplicaçao supoostamente , nao guardou o projecto que ja tava a 16% .. sacou outro ...
 
Back
Topo