diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index f5659161..77c0a09d 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -7,9 +7,25 @@
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/properties b/properties
index b9ac4e15..2de37e80 100644
--- a/properties
+++ b/properties
@@ -34,7 +34,7 @@
"InstructionPath": "",
"PerformanceAnalyzerPath": "",
"ComponentsBackUpsCount": 10,
- "TestingKernels": 28,
+ "TestingKernels": 64,
"AutoCheckTesting": true,
"CheckTestingIntervalSeconds": 10,
"EmailOnTestingProgress": false,
diff --git a/src/TestingSystem/Common/Configuration/Configuration.java b/src/TestingSystem/Common/Configuration/Configuration.java
index 168df4c2..2748be2b 100644
--- a/src/TestingSystem/Common/Configuration/Configuration.java
+++ b/src/TestingSystem/Common/Configuration/Configuration.java
@@ -20,6 +20,10 @@ public class Configuration extends riDBObject {
public int maxtime = 300;
@Description("DEFAULT 0")
public int autoTesting = 0;
+
+ @Description("DEFAULT 1")
+ public int kernels = 1; //ядра
+ //----
public String printAuto() {
return autoTesting > 0 ? "Да" : "Нет";
}
@@ -56,6 +60,7 @@ public class Configuration extends riDBObject {
//--
maxtime = c.maxtime;
autoTesting = c.autoTesting;
+ kernels = c.kernels;
//-
packedGroupsJson = c.packedGroupsJson;
packedTestsJson = c.packedTestsJson;
diff --git a/src/TestingSystem/Common/TestingBar.java b/src/TestingSystem/Common/TestingBar.java
index 7b12b5ab..66722946 100644
--- a/src/TestingSystem/Common/TestingBar.java
+++ b/src/TestingSystem/Common/TestingBar.java
@@ -11,16 +11,17 @@ import Visual_DVM_2021.Passes.PassCode_2021;
import javax.swing.*;
import java.awt.*;
public class TestingBar extends VisualiserMenuBar {
- public JLabel KernelsLabel;
+ // public JLabel KernelsLabel;
public JButton autorefreshButton;
JSpinner sCheckTime;
- JSpinner sKernels;
+ // JSpinner sKernels;
JLabel serverAdminLabel;
public TestingBar() {
//-
- KernelsLabel = addLabel("", "/icons/Kernels.png");
- KernelsLabel.setHorizontalTextPosition(JLabel.LEFT);
- KernelsLabel.setToolTipText("количество ядер, задействованное при тестировании");
+ // KernelsLabel = addLabel("", "/icons/Kernels.png");
+ // KernelsLabel.setHorizontalTextPosition(JLabel.LEFT);
+ // KernelsLabel.setToolTipText("количество ядер, задействованное при тестировании");
+ /*
add(sKernels = new JSpinner());
sKernels.setPreferredSize(new Dimension(60, 26));
sKernels.setMaximumSize(new Dimension(60, 26));
@@ -31,6 +32,7 @@ public class TestingBar extends VisualiserMenuBar {
UI.MakeSpinnerRapid(sKernels, e -> {
Global.properties.updateField("TestingKernels", sKernels.getValue());
});
+ */
addLabel(" ");
//--
add(new MenuBarButton() {
diff --git a/src/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java b/src/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java
index 09563c94..68f74fdf 100644
--- a/src/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java
+++ b/src/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java
@@ -39,10 +39,10 @@ public class DVMConfigurationDBTable extends iDBTable {
}
@Override
protected void AdditionalInitColumns() {
- columns.get(4).setMaxWidth(300);
- columns.get(6).setRenderer(TableRenderers.RendererMultiline);
+ columns.get(5).setMaxWidth(300);
columns.get(7).setRenderer(TableRenderers.RendererMultiline);
- columns.get(14).setRenderer(TableRenderers.RendererMultiline);
+ columns.get(8).setRenderer(TableRenderers.RendererMultiline);
+ columns.get(15).setRenderer(TableRenderers.RendererMultiline);
}
};
}
@@ -51,6 +51,7 @@ public class DVMConfigurationDBTable extends iDBTable {
return new String[]{
"имя",
"автор",
+ "ядра",
"группы",
"тестов",
"флаги",
@@ -73,28 +74,32 @@ public class DVMConfigurationDBTable extends iDBTable {
case 3:
return object.sender_name;
case 4:
- return cache.getGroupsDescriptions();
+ return object.kernels;
+
case 5:
+ return cache.getGroupsDescriptions();
+ case 6:
return cache.getTestsCount();
//todo упростить. и флаги и окружение будут просто одной строкой. мульти не актуально.
- case 6:
- return Utils.unpackStrings(object.flags, true);
case 7:
+ return Utils.unpackStrings(object.flags, true);
+ case 8:
return Utils.unpackStrings(object.environments, true);
//------------------------------------------------------------------------------------
- case 8:
- return object.c_maxtime;
+
case 9:
- return object.cube;
+ return object.c_maxtime;
case 10:
- return object.max_proc_count;
+ return object.cube;
case 11:
- return object.min_dim_proc_count;
+ return object.max_proc_count;
case 12:
- return object.max_dim_proc_count;
+ return object.min_dim_proc_count;
case 13:
- return object.maxtime;
+ return object.max_dim_proc_count;
case 14:
+ return object.maxtime;
+ case 15:
return Utils.unpackStrings(object.usr_par, true);
default:
return null;
@@ -138,6 +143,7 @@ public class DVMConfigurationDBTable extends iDBTable {
fields.sRunMaxtime.setValue(Result.maxtime);
//-
fields.sMaxProc.setValue(Result.max_proc_count);
+ fields.sKernels.setValue(Result.kernels);
}
@Override
public void ProcessResult() {
@@ -151,6 +157,7 @@ public class DVMConfigurationDBTable extends iDBTable {
Result.flags = ((VisualiserStringList) (fields.flagsList)).pack();
Result.environments = ((VisualiserStringList) (fields.environmentsList)).pack();
Result.usr_par = ((VisualiserStringList) (fields.parList)).pack();
+ Result.kernels= (int)fields.sKernels.getValue();
}
@Override
public void SetReadonly() {
diff --git a/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.form b/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.form
index 59c0be91..e19605d7 100644
--- a/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.form
+++ b/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.form
@@ -20,7 +20,7 @@
-
+
@@ -39,7 +39,7 @@
-
+
@@ -54,7 +54,7 @@
-
+
@@ -64,7 +64,7 @@
-
+
@@ -73,7 +73,7 @@
-
+
@@ -82,7 +82,7 @@
-
+
@@ -92,7 +92,7 @@
-
+
@@ -101,7 +101,7 @@
-
+
@@ -111,7 +111,7 @@
-
+
@@ -120,7 +120,7 @@
-
+
@@ -130,7 +130,7 @@
-
+
@@ -143,7 +143,7 @@
-
+
@@ -151,6 +151,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.java b/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.java
index 207a4137..e475cd6e 100644
--- a/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.java
+++ b/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.java
@@ -1,8 +1,10 @@
package TestingSystem.DVM.DVMConfiguration.UI;
import Common.Current;
+import Common.Global;
import Common.UI.VisualiserStringList;
import Common.UI.TextField.StyledTextField;
import Common.UI.Windows.Dialog.DialogFields;
+import Common.Utils.Utils;
import Visual_DVM_2021.Passes.PassCode_2021;
import Visual_DVM_2021.Passes.Pass_2021;
@@ -35,7 +37,7 @@ public class ConfigurationFields implements DialogFields {
private JToolBar environmentsTools;
public JButton bAddEnvironments;
public JButton bDeleteEnvironment;
-
+ public JSpinner sKernels;
@Override
public Component getContent() {
return content;
@@ -101,6 +103,8 @@ public class ConfigurationFields implements DialogFields {
}
}
});
+ sKernels.setModel(new SpinnerNumberModel(1, 1,
+ Utils.getTestingMaxKernels(),
+ 1));
}
-
}
diff --git a/src/TestingSystem/DVM/DVMPackage/DVMPackage.java b/src/TestingSystem/DVM/DVMPackage/DVMPackage.java
index e04f6af7..5b7f5233 100644
--- a/src/TestingSystem/DVM/DVMPackage/DVMPackage.java
+++ b/src/TestingSystem/DVM/DVMPackage/DVMPackage.java
@@ -27,7 +27,7 @@ public class DVMPackage extends TestingPackage {
//---
public DVMPackage() {
}
- public DVMPackage(Account account, Machine machine, User user, Compiler compiler){
+ public DVMPackage(Account account, Machine machine, User user, Compiler compiler, int kernels_in){
id = Constants.Nan;
//-
sender_name = account.name;
@@ -44,7 +44,7 @@ public class DVMPackage extends TestingPackage {
drv = compiler.call_command;
version = compiler.getVersionInfo();
//-
- kernels = Global.properties.TestingKernels;
+ kernels = kernels_in; //Global.properties.TestingKernels;
needsEmail = Global.properties.EmailOnTestingProgress ? 1 : 0;
//--
package_json = new DVMPackage_json();
diff --git a/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java b/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java
index be728eef..b0d97a27 100644
--- a/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java
+++ b/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java
@@ -37,11 +37,11 @@ public class SapforConfigurationDBTable extends iDBTable {
}
@Override
protected void AdditionalInitColumns() {
- columns.get(4).setRenderer(TableRenderers.RendererAutoConfiguration);
- columns.get(4).setEditor(TableEditors.EditorAutoConfiguration);
- columns.get(4).setMinWidth(25);
- columns.get(4).setMaxWidth(25);
- columns.get(5).setMaxWidth(300);
+ columns.get(5).setRenderer(TableRenderers.RendererAutoConfiguration);
+ columns.get(5).setEditor(TableEditors.EditorAutoConfiguration);
+ columns.get(5).setMinWidth(25);
+ columns.get(5).setMaxWidth(25);
+ columns.get(6).setMaxWidth(300);
}
};
}
@@ -50,10 +50,11 @@ public class SapforConfigurationDBTable extends iDBTable {
return new String[]{
"имя",
"автор",
+ "ядра",
"",
"группы",
"тестов",
- "флаги"
+ "флаги",
};
}
@Override
@@ -65,13 +66,16 @@ public class SapforConfigurationDBTable extends iDBTable {
case 3:
return object.sender_name;
case 4:
- return object.printAuto();
+ return object.kernels;
case 5:
- return cache.getGroupsDescriptions();
+ return object.printAuto();
case 6:
- return cache.getTestsCount();
+ return cache.getGroupsDescriptions();
case 7:
+ return cache.getTestsCount();
+ case 8:
return object.getFlags();
+
default:
return null;
}
@@ -99,6 +103,7 @@ public class SapforConfigurationDBTable extends iDBTable {
fields.cbKEEP_SPF_DIRECTIVES.setSelected(Result.KEEP_SPF_DIRECTIVES != 0);
fields.cbSTATIC_SHADOW_ANALYSIS.setSelected(Result.STATIC_SHADOW_ANALYSIS != 0);
fields.sMAX_SHADOW_WIDTH.setValue(Result.MAX_SHADOW_WIDTH);
+ fields.sKernels.setValue(Result.kernels);
}
@Override
public void ProcessResult() {
@@ -108,6 +113,7 @@ public class SapforConfigurationDBTable extends iDBTable {
Result.KEEP_SPF_DIRECTIVES = Utils.fromBoolean(fields.cbKEEP_SPF_DIRECTIVES.isSelected());
Result.STATIC_SHADOW_ANALYSIS = Utils.fromBoolean(fields.cbSTATIC_SHADOW_ANALYSIS.isSelected());
Result.MAX_SHADOW_WIDTH = fields.sMAX_SHADOW_WIDTH.getValue();
+ Result.kernels= (int)fields.sKernels.getValue();
}
@Override
public void SetReadonly() {
diff --git a/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.form b/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.form
index d7b5b46b..51cee554 100644
--- a/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.form
+++ b/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.form
@@ -8,7 +8,7 @@
-
+
@@ -29,7 +29,7 @@
-
+
@@ -46,7 +46,7 @@
-
+
@@ -59,7 +59,7 @@
-
+
@@ -72,7 +72,7 @@
-
+
@@ -83,7 +83,7 @@
-
+
@@ -96,7 +96,7 @@
-
+
@@ -109,7 +109,7 @@
-
+
@@ -123,6 +123,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.java b/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.java
index b6b5223b..18a42319 100644
--- a/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.java
+++ b/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.java
@@ -1,6 +1,7 @@
package TestingSystem.SAPFOR.SapforConfiguration.UI;
import Common.UI.TextField.StyledTextField;
import Common.UI.Windows.Dialog.DialogFields;
+import Common.Utils.Utils;
import javax.swing.*;
import java.awt.*;
@@ -13,6 +14,7 @@ public class SapforConfigurationFields implements DialogFields {
public JCheckBox cbSTATIC_SHADOW_ANALYSIS;
public JCheckBox cbKEEP_SPF_DIRECTIVES;
public JCheckBox cbKEEP_DVM_DIRECTIVES;
+ public JSpinner sKernels;
//--
@Override
public Component getContent() {
@@ -22,4 +24,9 @@ public class SapforConfigurationFields implements DialogFields {
// TODO: place custom component creation code here
tfName = new StyledTextField();
}
+ public SapforConfigurationFields(){
+ sKernels.setModel(new SpinnerNumberModel(1, 1,
+ Utils.getTestingMaxKernels(),
+ 1));
+ }
}
diff --git a/src/TestingSystem/SAPFOR/SapforPackage/SapforPackage.java b/src/TestingSystem/SAPFOR/SapforPackage/SapforPackage.java
index 6ec34796..bbe092d3 100644
--- a/src/TestingSystem/SAPFOR/SapforPackage/SapforPackage.java
+++ b/src/TestingSystem/SAPFOR/SapforPackage/SapforPackage.java
@@ -21,7 +21,7 @@ public class SapforPackage extends TestingPackage {
public SapforPackage(SapforPackage sapforPackage) {
SynchronizeFields(sapforPackage);
}
- public SapforPackage(Account account, ServerSapfor serverSapfor) {
+ public SapforPackage(Account account, ServerSapfor serverSapfor, int kernels_in) {
id = Constants.Nan;
//-
sender_name = account.name;
@@ -31,7 +31,7 @@ public class SapforPackage extends TestingPackage {
//-
drv = serverSapfor.call_command;
version = serverSapfor.version;
- kernels = Global.properties.TestingKernels;
+ kernels = kernels_in;//Global.properties.TestingKernels;
needsEmail = Global.properties.EmailOnTestingProgress ? 1 : 0;
///-------------------------------
package_json = new SapforPackage_json();
diff --git a/src/Visual_DVM_2021/Passes/All/CloneCurrentDVMConfiguration.java b/src/Visual_DVM_2021/Passes/All/CloneCurrentDVMConfiguration.java
new file mode 100644
index 00000000..088afb73
--- /dev/null
+++ b/src/Visual_DVM_2021/Passes/All/CloneCurrentDVMConfiguration.java
@@ -0,0 +1,5 @@
+package Visual_DVM_2021.Passes.All;
+import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
+import Visual_DVM_2021.Passes.Pass_2021;
+public class CloneCurrentDVMConfiguration extends Pass_2021 {
+}
diff --git a/src/Visual_DVM_2021/Passes/All/CloneDVMPackage.java b/src/Visual_DVM_2021/Passes/All/CloneDVMPackage.java
index ed079939..6caadf11 100644
--- a/src/Visual_DVM_2021/Passes/All/CloneDVMPackage.java
+++ b/src/Visual_DVM_2021/Passes/All/CloneDVMPackage.java
@@ -61,7 +61,7 @@ public class CloneDVMPackage extends AddObjectPass {
target.drv = Current.getCompiler().call_command;
target.version = Current.getCompiler().getVersionInfo();
//--
- target.kernels = Global.properties.TestingKernels;
+ target.kernels = 1; //Global.properties.TestingKernels;
target.needsEmail = Global.properties.EmailOnTestingProgress ? 1 : 0;
//--
target.tasksCount = 0;
diff --git a/src/Visual_DVM_2021/Passes/All/CloneSapforPackage.java b/src/Visual_DVM_2021/Passes/All/CloneSapforPackage.java
index c9157384..97f81672 100644
--- a/src/Visual_DVM_2021/Passes/All/CloneSapforPackage.java
+++ b/src/Visual_DVM_2021/Passes/All/CloneSapforPackage.java
@@ -135,12 +135,12 @@ public class CloneSapforPackage extends AddObjectPass {
//-
target.drv = Current.getServerSapfor().call_command;
target.version = Current.getServerSapfor().version;
- target.kernels = Global.properties.TestingKernels;
+ target.kernels = 1; //Global.properties.TestingKernels;
target.needsEmail = Global.properties.EmailOnTestingProgress ? 1 : 0;
//--
target.sapforId = Current.getServerSapfor().id;
//--
- target.kernels = Global.properties.TestingKernels;
+ target.kernels =1; // Global.properties.TestingKernels;
target.needsEmail = Global.properties.EmailOnTestingProgress ? 1 : 0;
//--
target.package_json = new SapforPackage_json();
diff --git a/src/Visual_DVM_2021/Passes/All/StartSelectedDVMConfigurations.java b/src/Visual_DVM_2021/Passes/All/StartSelectedDVMConfigurations.java
index a39fa4bb..5bc00192 100644
--- a/src/Visual_DVM_2021/Passes/All/StartSelectedDVMConfigurations.java
+++ b/src/Visual_DVM_2021/Passes/All/StartSelectedDVMConfigurations.java
@@ -135,13 +135,17 @@ public class StartSelectedDVMConfigurations extends PublishServerObject extends PublishServerObject {
+ public CloneConfiguration(Class d_in) {
+ super(Global.testingServer, d_in);
+ }
+}
diff --git a/src/Visual_DVM_2021/Passes/PassCode_2021.java b/src/Visual_DVM_2021/Passes/PassCode_2021.java
index 67b268df..87bd08fe 100644
--- a/src/Visual_DVM_2021/Passes/PassCode_2021.java
+++ b/src/Visual_DVM_2021/Passes/PassCode_2021.java
@@ -344,12 +344,16 @@ public enum PassCode_2021 {
ShowCurrentSAPFORConfigurationTests,
SaveCurrentSAPFORConfiguration,
StartSelectedSAPFORConfigurations,
+
+ CloneCurrentDVMConfiguration,
;
//--
public String getDescription() {
switch (this) {
case Undefined:
return "?";
+ case CloneCurrentDVMConfiguration:
+ return "Дублировать текущую конфигурацию тестирования DVM системы";
case StartSelectedSAPFORConfigurations:
return "Запустить отмеченные конфигурации тестирования системы SAPFOR";
case SaveCurrentSAPFORConfiguration: