mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2026-10-26 22:10:18 +00:00
Hydrology pool host cap
- Hydrology planner pool minimum never exceeds the host core count (floor 2)
This commit is contained in:
1 parent
ae1a84702c
commit
b712cbf93d
2 files changed
+14
-6
No files matched your search
@@ -144,11 +144,11 @@ public class MultiBurst extends MultiBurstSupport {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int plannerParallelism() {
|
static int plannerParallelism() {
|
||||||
return plannerParallelism(MultiBurstSupport.performanceProcessors());
|
return plannerParallelism(MultiBurstSupport.performanceProcessors(), Runtime.getRuntime().availableProcessors());
|
||||||
}
|
}
|
||||||
|
|
||||||
static int plannerParallelism(int performanceProcessors) {
|
static int plannerParallelism(int performanceProcessors, int availableProcessors) {
|
||||||
return Math.max(4, performanceProcessors);
|
return Math.max(2, Math.min(Math.max(4, performanceProcessors), availableProcessors));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -63,9 +63,17 @@ public class HydrologyBurstTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void plannerPoolFollowsThePerformanceCores() {
|
public void plannerPoolFollowsThePerformanceCores() {
|
||||||
assertEquals(12, MultiBurst.HydrologyBurst.plannerParallelism(12));
|
assertEquals(12, MultiBurst.HydrologyBurst.plannerParallelism(12, 16));
|
||||||
assertEquals(4, MultiBurst.HydrologyBurst.plannerParallelism(1));
|
assertEquals(4, MultiBurst.HydrologyBurst.plannerParallelism(1, 8));
|
||||||
assertEquals(32, MultiBurst.HydrologyBurst.plannerParallelism(32));
|
assertEquals(32, MultiBurst.HydrologyBurst.plannerParallelism(32, 32));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void plannerPoolNeverOutgrowsASmallHost() {
|
||||||
|
assertEquals(2, MultiBurst.HydrologyBurst.plannerParallelism(1, 1));
|
||||||
|
assertEquals(2, MultiBurst.HydrologyBurst.plannerParallelism(2, 2));
|
||||||
|
assertEquals(3, MultiBurst.HydrologyBurst.plannerParallelism(3, 3));
|
||||||
|
assertEquals(4, MultiBurst.HydrologyBurst.plannerParallelism(2, 4));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
Reference in new issue
Block a user