Я запускаю программу на Java, которую я написал, которая называет Gurobi (программное обеспечение для оптимизации линейных программ). Когда я запускаю большую программу, выполнение которой занимает ~ 20 часов, даже простые задачи (например, открытие новой вкладки в Chrome) занимают 5-10 секунд. Ява-программа, которую я написал, представляет собой однопоточное приложение, но Gurobi использует несколько ядер. Мой компьютер - iMac под управлением OS X 10.7, который имеет 4 ядра процессора.
Я хотел бы иметь возможность выполнять большие вычисления, в то же время имея возможность выполнять обычную работу на компьютере.
Вопросы:
- Как проверить, что является узким местом: процессор или память?
- Можно ли заставить java работать с одним процессором, чтобы компьютер не сильно тормозил?
- Как уменьшить влияние больших вычислений на обычное удобство использования компьютера?
Обновление: я смог заставить большие вычисления работать гладко в фоновом режиме, сказав Gurobi использовать только одно ядро процессора, и используя nice
чтобы дать ему низкий приоритет.