мелочи. название p для версии общей памяти, фильтр задач по матрицам, отображение числа завершившихся задач в статусе, отображение размерности матрицы и числа процессов в таблице задач
This commit is contained in:
2025-03-06 17:59:03 +03:00
parent 20aef1f340
commit 7b81a8bdd0
26 changed files with 190 additions and 83 deletions

View File

@@ -6,7 +6,6 @@ import Common.Utils.Utils_;
import _VisualDVM.TestingSystem.Common.Configuration.Configuration;
import _VisualDVM.TestingSystem.Common.Configuration.Json.ConfigurationsJson;
import _VisualDVM.TestingSystem.Common.TasksPackageState;
import _VisualDVM.Utils;
import com.sun.org.glassfish.gmbal.Description;
import java.io.File;
@@ -14,6 +13,8 @@ import java.util.Vector;
public abstract class TestingPackage<J> extends riDBObject {
public String PID = "";
public int tasksCount = 0; //Общее число задач
@Description("DEFAULT 0")
public int doneTasksCount = 0;
//--
public int kernels = 1;
public int needsEmail = 0;
@@ -24,8 +25,8 @@ public abstract class TestingPackage<J> extends riDBObject {
public int progress = 0; //прогресс выполнения
public long StartDate = 0;
public long ChangeDate = 0;
public long getMilliseconds(){
return ((StartDate!=0)&&(ChangeDate!=0))?ChangeDate-StartDate:0;
public long getMilliseconds() {
return ((StartDate != 0) && (ChangeDate != 0)) ? ChangeDate - StartDate : 0;
}
@Description("DEFAULT 0")
public int connectionErrosCount = 0;
@@ -47,6 +48,7 @@ public abstract class TestingPackage<J> extends riDBObject {
TestingPackage tp = (TestingPackage) src;
//--
tasksCount = tp.tasksCount;
doneTasksCount = tp.doneTasksCount;
needsEmail = tp.needsEmail;
version = tp.version;
drv = tp.drv;

View File

@@ -75,8 +75,10 @@ public class DVMPackage extends TestingPackage<DVMPackage_json> {
//---
for (Pair<String, String> p: params) {
//--
String options_ = completeOptions(p.getKey());
String environments_ = completeEnvironments(p.getValue());
String options_ = Global.normalProperties.CompleteCompilationOptions ?
completeOptions(p.getKey()) : p.getKey();
String environments_ = Global.normalProperties.CompleteRunEnvironments ?
completeEnvironments(p.getValue()) : p.getValue();
//--
DVMCompilationTask compilationTask =
new DVMCompilationTask(configuration, options_, group, test);

View File

@@ -1,17 +1,26 @@
package _VisualDVM.TestingSystem.DVM.DVMPackage.UI;
import Common.Database.Tables.DataSet;
import Common.Passes.PassCode_;
import Common.Utils.Utils_;
import Common.Visual.Controls.MenuBarButton;
import Common.Visual.Controls.StableMenuItem;
import Common.Visual.DataSetControlForm;
import Common.Visual.DataSetFiltersMenu;
import Common.Visual.FilterFlag;
import Common.Visual.FilterMenuFlag;
import Common.Visual.Menus.DataMenuBar;
import Common.Visual.Tables.*;
import Common.Visual.Tables.ColumnInfo;
import Common.Visual.Tables.RendererDate;
import Common.Visual.Tables.RendererMilliseconds;
import Common.Visual.Tables.RendererProgressBar;
import _VisualDVM.Global;
import _VisualDVM.GlobalData.Tasks.TaskState;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.ServerObjectsCache.PackageCache;
import _VisualDVM.ServerObjectsCache.VisualCaches;
import _VisualDVM.TestingSystem.Common.TasksPackageState;
import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackage;
import _VisualDVM.TestingSystem.DVM.DVMTasks.DVMRunTask;
import _VisualDVM.Visual.Tables.RendererTestingPackageStatus;
import javax.swing.*;
import java.util.Comparator;
@@ -107,11 +116,11 @@ public class DVMPackagesForm extends DataSetControlForm<DVMPackage> {
new ColumnInfo<DVMPackage>("статус") {
@Override
public Object getFieldAt(DVMPackage object) {
return object.state;
return object;
}
@Override
public Class getRendererClass() {
return RendererStatusEnum.class;
return RendererTestingPackageStatus.class;
}
}
);
@@ -178,7 +187,19 @@ public class DVMPackagesForm extends DataSetControlForm<DVMPackage> {
protected boolean validate(DVMPackage object) {
return object.state.isActive();
}
});
},
new FilterFlag<DVMPackage>(dataSource, new MenuBarButton() {
{
setText("С ошибками");
setToolTipText("Отображать только пакеты тестов с ошибками");
}
}, false) {
@Override
protected boolean validate(DVMPackage object) {
return object.state.equals(TasksPackageState.DoneWithErrors);
}
}
);
}
@Override
protected Comparator<DVMPackage> getDefaultComparator() {

View File

@@ -17,40 +17,6 @@ public class DVMCompilationTask extends DVMTask {
super(configuration, group, test, flags_in);
maxtime = configuration.c_maxtime;
}
/*
public DVMCompilationTask(DVMConfiguration configuration, DVMSettings dvmSettings, Group group, Test test, int kernels_in) {
super(configuration, group, test, checkFlags(dvmSettings.flags));
maxtime = configuration.c_maxtime;
Vector<String> matrixes = dvmSettings.getMatrixes(test.max_dim);
String checkedEnvironments = checkEnvironments(dvmSettings.environments);
if (dvmSettings.flags.trim().equalsIgnoreCase("-s")) {
runTasks.add(new DVMRunTask(
configuration,
dvmSettings,
group,
test,
"",
flags,
checkedEnvironments,
kernels_in
));
} else kill
for (String matrix : matrixes) {
runTasks.add(new DVMRunTask(
configuration,
dvmSettings,
group,
test,
matrix,
flags,
checkedEnvironments,
kernels_in));
}
}
*/
//--
@Override
public Vector<String> pack(Object arg) {

View File

@@ -29,10 +29,6 @@ public class DVMRunTask extends DVMTask {
@Expose
public int cube = 1;
@Expose
public int min_dim = 1;
@Expose
public int max_dim = 1;
@Expose
public String environments = "";
@Expose
public String usr_par = "";
@@ -55,8 +51,6 @@ public class DVMRunTask extends DVMTask {
compilation_state = TaskState.Waiting;
//инфа о запуске
cube = settings.cube;
min_dim = settings.max_dim_proc_count;
max_dim = settings.max_dim_proc_count;
maxtime = configuration.maxtime;
environments = environments_in;
usr_par = settings.getParamsText();
@@ -81,8 +75,6 @@ public class DVMRunTask extends DVMTask {
progress = rt.progress;
language = rt.language;
cube = rt.cube;
min_dim = rt.min_dim;
max_dim = rt.max_dim;
maxtime = rt.maxtime;
environments = rt.environments;
usr_par = rt.usr_par;

View File

@@ -14,6 +14,7 @@ import _VisualDVM.GlobalData.Tasks.TaskState;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.ProjectData.LanguageName;
import _VisualDVM.TestingSystem.DVM.DVMTasks.DVMRunTask;
import _VisualDVM.Utils;
import javax.swing.*;
import java.util.Comparator;
@@ -68,6 +69,18 @@ public class DVMRunTasksForm extends DataSetControlForm<DVMRunTask> {
return object.matrix;
}
},
new ColumnInfo<DVMRunTask>("dim") {
@Override
public Object getFieldAt(DVMRunTask object) {
return Utils.getMatrixDimension(object.matrix);
}
},
new ColumnInfo<DVMRunTask>("CPU") {
@Override
public Object getFieldAt(DVMRunTask object) {
return Utils.getMatrixProcessors(object.matrix);
}
},
new ColumnInfo<DVMRunTask>("Окружение") {
@Override
public Object getFieldAt(DVMRunTask object) {
@@ -118,6 +131,7 @@ public class DVMRunTasksForm extends DataSetControlForm<DVMRunTask> {
protected void createFilters() {
AddFilters(
new HeaderTextFilter<>(dataSource, 2, 70),
new HeaderTextFilter<>(dataSource, 7, 100, false),
new DataSetFiltersMenu<DVMRunTask>("Язык", dataSource) {
@Override
public void fill() {

View File

@@ -165,6 +165,7 @@ public class RemoteDVMTestingPlanner extends DVMTestingPlanner {
}
}
testingPackage.progress = 100;
testingPackage.doneTasksCount = good;
testingPackage.saveJson(); //запись обновленных результатов пакета в json!
Print("analysis done, ct_count=" + ct_count + " rt count=" + rt_count);
testingPackage.state = hasErrors ? TasksPackageState.DoneWithErrors : TasksPackageState.Done;

View File

@@ -150,7 +150,7 @@ public class SapforPackage_json implements Serializable {
String.valueOf(task.sapfor_configuration_id)
).toFile());
root.add(taskNode);
if (task.state.equals(TaskState.DoneWithErrors))
if (!task.state.equals(TaskState.Done))
root.errors_count++;
}
}

View File

@@ -60,7 +60,7 @@ public class PerformSapforTask extends Pass<SapforTask> {
}
//слегка изменить подход.
protected boolean transformation(PassCode code) throws Exception {
task = new File(parentTask, "v1");
task = new File(parentTask, code.equals(PassCode.SPF_SharedMemoryParallelization)?"p1":"v1" );
Utils_.CheckAndCleanDirectory(task); //папка для преобразования.
//если версия пустая, это тоже результат тестирования. Поэтому должна учитываться в древе.
target.versions.add(version_json = new SapforVersion_json(

View File

@@ -107,6 +107,7 @@ public class SapforPackage extends TestingPackage<SapforPackage_json> {
double percent = (((double) (good)) / tasksCount) * 100.0;
description = "Выполнено на " + ((int) percent) + "%\n" +
"Всего задач: " + tasksCount + ", из них с ошибками " + bad;
doneTasksCount= good;
}
public boolean canCompare(SapforPackage package2, TextLog log){
if (package_json.tasks.size() != package2.package_json.tasks.size()) {

View File

@@ -10,7 +10,10 @@ import _VisualDVM.Global;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.ServerObjectsCache.PackageCache;
import _VisualDVM.ServerObjectsCache.VisualCaches;
import _VisualDVM.TestingSystem.Common.TasksPackageState;
import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackage;
import _VisualDVM.TestingSystem.SAPFOR.SapforPackage.SapforPackage;
import _VisualDVM.Visual.Tables.RendererTestingPackageStatus;
import javax.swing.*;
import java.util.Comparator;
@@ -100,11 +103,11 @@ public class SapforPackagesForm extends DataSetControlForm<SapforPackage> {
new ColumnInfo<SapforPackage>("статус") {
@Override
public Object getFieldAt(SapforPackage object) {
return object.state;
return object;
}
@Override
public Class getRendererClass() {
return RendererStatusEnum.class;
return RendererTestingPackageStatus.class;
}
}
);
@@ -163,6 +166,20 @@ public class SapforPackagesForm extends DataSetControlForm<SapforPackage> {
protected boolean validate(SapforPackage object) {
return object.state.isActive();
}
});
},
new FilterFlag<SapforPackage>(dataSource, new MenuBarButton() {
{
setText("С ошибками");
setToolTipText("Отображать только пакеты тестов с ошибками");
}
}, false) {
@Override
protected boolean validate(SapforPackage object) {
return object.state.equals(TasksPackageState.DoneWithErrors);
}
}
);
}
}