Problema com Dual Core

8 respostas
V

Pessoal,

Tenho um aplicativo desktop que ao ser executado gera um processo javaw.exe que tenta executar em um pentium dual core utilizando os dois processadores.

Esta aplicação utiliza o producer.exe da Helix que só fucniona corretamente utilizando 1 processador.

Quando o javaw. exe já esta rodando e eu mudo para utilizar apenas um processador o producer.exe funciona bem, mas sempre que iniciado o aplicativo ele tenta novamente utilizar os dois.

Alguém na programação se tem como vc escolher em utilizar apenas um processador?

Obrigado,
vinicius.

8 Respostas

nbluis

Cara, acho mais fácil tu mudar essa tua aplicação de integração.
Na Web devem ter mais ferramentas para isso.

Mas sei la, nunca vi sobre utilizar apenas um processado.

Valeu…

V

Fica meio complicar mudar agora.

Fico aguardando se alguém já teve esse problema.

Obrigado.

T

Dica: se usar algo como "cmd /c start /affinity 1 seuprograma.exe" como parâmetro para o Runtime.exec, deve forçar a usar 1 processador só.

Veja se sua versão do Windows suporta /affinity (use "start /?" para checar se existe esse parâmetro para start).

/affinity 1 --&gt Processador #0
/affinity 2 --&gt Processador #1
/affinity 4 --&gt Processador #2

e assim por diante.

Edufa

Aproveitando o tópico, existe algum problema usar Java - Duo Core?
[]s

T

Não, muito pelo contrário - o Java é feito para aproveitar os recursos de seu processador ao máximo.

Chulao

Um problema que eu encontrei com a utilização de dual core, foi questões referentes a Delay e Threads, mas acredito que esse problema não é exclusivo do Java.

Basicamente o problema é que eu precisava saber o tempo que uma determinada Thread levou para ser processada (por loop) e mediante esse tempo fazer alguns ajuste de sincronização, um exemplo disso é o processamento em tempo pré-determinados, como render de imagens em 60 FPS.

O que eu observei é algumas vezes os tempos de processamento apresentados eram negativos, e isso ocorria devido ao tempo entre as CPU’s serem diferentes.

Problema esse resolvido com o uso do affinity como apresentado pelo Thingol.

T+

Chulao

urubatan

isto é problema de lógica e não do dual core …
se a propria thread medisse o tempo de execução, não teria este problema …
qual a forma de medir o tempo que você estava utilizando? timeInMillis? se for isto, no proprio javadoc esta escrito que não é uma forma precisa de medir o tempo :smiley:

V

Não estou conseguindo rodar aplicações com este affinity, alguém poderia me dar um exemplo qualquer para que eu poça ver no processo se realmente ele está usando apenas o processador q eu escolhi.

Poderia ser rodar o javaw.exe com affinity.

Estou usando xp professional pt_br.

Obrigado.

Criado 26 de fevereiro de 2007
Ultima resposta 26 de fev. de 2007
Respostas 8
Participantes 6