10 Commits

Author SHA1 Message Date
d4fde0ad57 Merge branch 'main' of http://alex-freenas.ddns.net:3000/M/VisualSapfor 2026-04-28 19:42:15 +03:00
1b6d53ee9e ++
новый проход и директива.
2026-04-28 19:04:32 +03:00
ALEXks
fb726ef439 instruction updated: added new clause MERGE_ARRAYS 2026-04-22 11:27:57 +03:00
f3b29d8d7e no message 2026-04-19 21:25:15 +03:00
9dbf72ece2 no message 2026-03-05 17:45:17 +03:00
e6321cbdb6 исправление аутентификации в git 2026-02-25 15:19:09 +03:00
8af5acbecd planner ++ 2026-02-24 17:06:33 +03:00
bc24507487 Merge pull request 'planner' (#8) from planner into main 2026-02-24 16:38:35 +03:00
ALEXks
a8b15d0eeb fixed version 2026-02-24 16:38:17 +03:00
ALEXks
0e9404982f remaned 2026-02-24 16:37:56 +03:00
16 changed files with 44 additions and 64 deletions

13
.idea/workspace.xml generated
View File

@@ -7,13 +7,16 @@
</component>
<component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SPF_MergeRegions.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/icons/Transformations/SPF_MergeRegions.png" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMTasks/DVMCompilationTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMTasks/DVMCompilationTask.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMTasks/DVMRunTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMTasks/DVMRunTask.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMTasks/DVMTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMTasks/DVMTask.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/RemoteDVMTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/RemoteDVMTestingPlanner.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/json/RunTask_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/json/RunTask_json.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/Component/Sapfor/Sapfor.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ComponentsServer/Component/Sapfor/Sapfor.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Constants.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Constants.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Files/UI/Editor/AutoComplete/SAPFOR/Directives/DirectiveName.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Files/UI/Editor/AutoComplete/SAPFOR/Directives/DirectiveName.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Files/UI/Editor/AutoComplete/SAPFOR/Directives/Spec3Directive.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Files/UI/Editor/AutoComplete/SAPFOR/Directives/Spec3Directive.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Files/UI/Editor/AutoComplete/SAPFOR/Providers/Spec3Provider.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/Files/UI/Editor/AutoComplete/SAPFOR/Providers/Spec3Provider.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

@@ -4,15 +4,15 @@
"ServerUserPassword": "mprit_2011",
"OfferRegistrationOnStart": true,
"Workspace": "E:\\Tests",
"ProjectsSearchDirectory": "E:\\Tests\\Downloads\\1331\\EP\\v1\\v1\\v4",
"ProjectsSearchDirectory": "E:\\Tests",
"DocumentsDirectory": "C:\\Users\\misha\\Documents\\_testing_system",
"VisualiserPath": "C:\\Users\\misha\\Downloads",
"Sapfor_FPath": "E:\\_sapfor_x64\\Components\\Sapfor_F",
"Visualizer_2Path": "C:\\Users\\misha\\Documents",
"InstructionPath": "C:\\Users\\misha\\Documents",
"PerformanceAnalyzerPath": "C:\\Users\\misha\\Documents",
"AutoBugReportsLoad": true,
"AutoTestsLoad": true,
"AutoBugReportsLoad": false,
"AutoTestsLoad": false,
"ConfirmPassesStart": true,
"ShowPassesDone": true,
"FocusPassesResult": false,
@@ -27,15 +27,15 @@
"LocalMakePathWindows": "C:\\MinGW\\msys\\1.0\\bin\\make.exe",
"PrecompilationFlags": " ",
"CheckTestingIntervalSeconds": 10,
"AutoCheckTesting": true,
"AutoCheckTesting": false,
"EmailOnTestingProgress": true,
"CompleteCompilationOptions": true,
"CompleteRunEnvironments": true,
"CreateEthalonTasks": true,
"ErasePackageWorkspace": false,
"lastMachineId": 1,
"lastUserId": 17,
"lastCompilerId": 15,
"lastMachineId": 14,
"lastUserId": 25,
"lastCompilerId": 56,
"RegisterOn": false,
"SpacesOn": false,
"EmptyLinesOn": false,

View File

@@ -1,42 +0,0 @@
package Common.Visual.Windows.Dialog;
import Common.MainModule_;
import Common.Visual.Fonts.VisualiserFonts;
import javax.swing.*;
import java.awt.*;
public class DialogWrapText extends JTextPane implements DialogFields {
public DialogWrapText() {
setOpaque(true);
setBackground(Color.WHITE);
setFont(MainModule_.instance.getUI().getTheme().Fonts.get(VisualiserFonts.TreeBold));
setEditable(false);
}
@Override
public Component getContent() {
return this;
}
/*
public void setTextW(String text_in){
String[] lines = text_in.split("\n");
String labelText = "";
if (lines.length == 1) {
labelText = text_in;
} else {
int i = 0;
for (String line : lines) {
String fline = "";
if (i == 0) {
fline = "<html><body>" + line + "<br>";
} else if (i == lines.length - 1) {
fline = line + "</body></html>";
} else {
fline = line + "<br>";
}
++i;
labelText += fline;
}
}
setText(labelText);
}
*/
}

View File

@@ -102,7 +102,8 @@ public abstract class Sapfor extends OSDComponent {
return new PassCode[]{
PassCode.SPF_ResolveParallelRegionConflicts,
PassCode.SPF_InsertDvmhRegions,
PassCode.SPF_RemoveDistArraysFromIO
PassCode.SPF_RemoveDistArraysFromIO,
PassCode.SPF_MergeRegions
};
}
public static PassCode[] getPreparationTransformationsCodes() {
@@ -160,6 +161,7 @@ public abstract class Sapfor extends OSDComponent {
res.add(PassCode.SPF_ResolveParallelRegionConflicts);//+
res.add(PassCode.SPF_RemoveDistArraysFromIO);
res.add(PassCode.SPF_ResolveCommonBlockConflicts);//+
res.add(PassCode.SPF_MergeRegions); //+
//-
res.add(PassCode.SPF_InsertDvmhRegions);//+
res.add(PassCode.SPF_SharedMemoryParallelization);//+

View File

@@ -13,7 +13,9 @@ public class Sapfor_F extends Sapfor {
public String getAssemblyCommand() {
return "cd Repo/SAPFOR/install\n" +
"cmake ../\n" +
"make -j 4\n";
"make -j " +
Global.normalProperties.Kernels +
"\n";
}
@Override
public File getAssemblyFile() {

View File

@@ -3,8 +3,8 @@ import Common.Utils.Vector_;
import java.util.Vector;
public class Constants {
public static final int version = 1266;
public static final int planner_version = 26;
public static final int version = 1268;
public static final int planner_version = 27;
public static final int testingMaxKernels = 64;
//--
public static final String ApplicationFileName = "VisualSapfor.jar";

View File

@@ -0,0 +1,4 @@
package _VisualDVM.Passes.All;
import _VisualDVM.Passes.Sapfor.SapforTransformation;
public class SPF_MergeRegions extends SapforTransformation {
}

View File

@@ -363,12 +363,15 @@ public enum PassCode implements PassCode_ {
CompareDVMRunTaskToEthalon,
DropSapforConfigurationEthalon,
RefreshSapforPackageResults,
SPF_MoveOperators
SPF_MoveOperators,
SPF_MergeRegions
;
//--
@Override
public String getDescription() {
switch (this) {
case SPF_MergeRegions:
return "Объединение областей";
case SPF_MoveOperators:
return "Оптимальный порядок операторов";
case SPF_InsertPrivateArrayDirectives:
@@ -963,6 +966,9 @@ public enum PassCode implements PassCode_ {
case SPF_MoveOperators:
name = "MOVE_OPERATORS";
break;
case SPF_MergeRegions:
name = "MERGE_REGIONS";
break;
}
return p + " " + name;
}

View File

@@ -36,12 +36,12 @@ public class DownloadRepositoryPass extends ProcessPass {
if (pull) {
System.out.println("PULL");
scriptLines.add("cd " + dst.getAbsolutePath());
scriptLines.add("git pull");
scriptLines.add("GIT_SSL_NO_VERIFY=true git pull");
} else {
Utils.CleanDirectory(dst);
System.out.println("CLONE");
scriptLines.add("cd " + Utils_.DQuotes(Global.RepoDirectory.getAbsolutePath()));
scriptLines.add("git clone " + Utils_.DQuotes(url) + " " + Utils_.DQuotes(dst.getAbsolutePath()));
scriptLines.add("GIT_SSL_NO_VERIFY=true git clone " + Utils_.DQuotes(url) + " " + Utils_.DQuotes(dst.getAbsolutePath()));
}
if (hasSubmodules()) {
scriptLines.add("cd " + Utils_.DQuotes(dst));

View File

@@ -42,7 +42,8 @@ public enum DirectiveName {
UNROLL,
PROCESS_PRIVATE,
COVER,
MERGE;
MERGE,
MERGE_ARRAYS;
public String getDescription() {
switch (this) {
case SPF:
@@ -125,6 +126,8 @@ public enum DirectiveName {
return "Клауза, ограничивающая действие директивы на N тесно-вложенных циклов";
case MERGE:
return "Клауза для объединения циклов";
case MERGE_ARRAYS:
return "Клауза для объединения массивов-копий в областях распараллеливания";
default:
return "?";
}

View File

@@ -12,6 +12,7 @@ public class Spec3Directive extends SpecDirective {
&& getOwner().nearestGroup.equals(DirectiveName.TRANSFORM)
&& !getOwner().flags.contains(DirectiveName.NOINLINE)
&& !getOwner().flags.contains(DirectiveName.MERGE)
&& !getOwner().flags.contains(DirectiveName.MERGE_ARRAYS)
&& !getOwner().flags.contains(DirectiveName.FISSION)
&& !getOwner().flags.contains(DirectiveName.SHRINK)
&& !getOwner().flags.contains(DirectiveName.EXPAND)

View File

@@ -11,5 +11,6 @@ public class Spec3Provider extends PrefixWordProvider {
addDirective(new Spec3Directive(this, DirectiveName.EXPAND));
addDirective(new Spec3Directive(this, DirectiveName.UNROLL));
addDirective(new Spec3Directive(this, DirectiveName.MERGE));
addDirective(new Spec3Directive(this, DirectiveName.MERGE_ARRAYS));
}
}

View File

@@ -56,7 +56,7 @@ public:
environments = Utils::getValue<string>(data, "environments");
usr_par = Utils::getValue<string>(data, "usr_par");
args = Utils::getValue<string>(data, "args");
kernels = Utils::getValue<int>(data, "kernels");
kernels = Utils::getValue<int>(data, "cores");
//todo setStartCommand
}

View File

@@ -1 +1 @@
26
27

Binary file not shown.

After

Width:  |  Height:  |  Size: 946 B