2013-09-23 6 views
0

текущий доступный процессор не может обеспечить производительность одного потока, в котором я нуждаюсь. Итак, я хотел бы знать, есть ли способы улучшить производительность одного потока. программное обеспечение? У меня есть приложение Java, которое в настоящий момент нуждается в мощности на 160%. Знаете ли вы что-нибудь, что могло бы улучшить использование процессора для java-приложения? Я был бы так рад, если бы вы могли дать мне несколько ключевых слов, которые могут увеличить его на несколько процентов.Улучшение производительности одного потока в Java - со стороны программного обеспечения

+0

Не использует ли 160% использование ЦП многопоточность? – Thilo

+0

sry, я имел в виду, мне понадобится + 60% мощности процессора, что приложение работает в режиме реального времени. – user2693017

+0

Может ли переключение с Debian 6 на Ubuntu 12 тоже немного повысить? – user2693017

ответ

0

Программа с одним потоком не может использовать процессор более 100%, поэтому 160% означает, что вы используете два потока. улучшить перфорирование из одной нити, следует обратить внимание на логику, включает в себя, алгоритме выделения памяти/релиз глубину стеки вызовов

, но предположит, что вы используете по крайней мере, два потока, вам также необходимо обратите внимание на замок

+0

Извините, я имел в виду, что мне потребуется 60% больше мощности процессора, которое приложение работает в режиме реального времени. – user2693017

0

Вы можете улучшить производительность однопоточных программ (или многопоточных программ), используя профилирование CPU и памяти для идентификации кода, который необходимо оптимизировать и улучшить.

Поскольку вы используете более 100% процессора, это может быть связано с тем, что сборщик мусора работает значительную часть времени (поскольку он многопоточен). Уменьшая количество мусора, которое вы производите, вы можете значительно улучшить как с точки зрения пропускной способности, так и согласованности.