Потоки JVM и переключение контекста с точки зрения памяти
Я не уверен, что это неясный вопрос, если это так, то я был бы более чем счастлив, если бы мне указали направление, чтобы получить некоторую ясность.
У меня есть куча тестов Java (30, если быть точным), которые запускаются с помощью Parallel Runner (он использует Threadpool).
Каждый тест занимает около 1 минуты (если они должны выполняться изолированно, это тесты конца концов). Однако, когда они запускаются параллельно, это занимает около 10 минут. Я не установил размер кучи в качестве аргумента JVM.
Используя команду top, я вижу, что мой процессор используется более чем на 110% при параллельной работе. Также наблюдается несколько переключений контекста, когда они запускаются (иногда десятками, иногда сотнями и редко тысячами).
Хотите знать, если увеличение размера кучи JVM немного улучшит ситуацию, или это совершенно не связанный параметр, чтобы решить эту проблему? Если это не связано, то я хотел бы услышать почему. Благодарю.