Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Open sidebar
monticore
EmbeddedMontiArc
generators
CNNArch2Gluon
Commits
29d922ab
Commit
29d922ab
authored
Jun 14, 2018
by
Carlos Alfredo Yeverino Rodriguez
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Adaptation for generator interface
parent
aaa745b1
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
21 additions
and
13 deletions
+21
-13
pom.xml
pom.xml
+1
-1
src/main/java/de/monticore/lang/monticar/cnnarch/generator/CNNArch2MxNet.java
...ticore/lang/monticar/cnnarch/generator/CNNArch2MxNet.java
+10
-2
src/main/java/de/monticore/lang/monticar/cnnarch/generator/CNNArch2MxNetCli.java
...ore/lang/monticar/cnnarch/generator/CNNArch2MxNetCli.java
+3
-3
src/test/java/de/monticore/lang/monticar/cnnarch/GenerationTest.java
...va/de/monticore/lang/monticar/cnnarch/GenerationTest.java
+7
-7
No files found.
pom.xml
View file @
29d922ab
...
...
@@ -127,7 +127,7 @@
<configuration>
<archive>
<manifest>
<mainClass>
de.monticore.lang.monticar.cnnarch.generator.CNNArch
Generator
Cli
</mainClass>
<mainClass>
de.monticore.lang.monticar.cnnarch.generator.CNNArch
2MxNet
Cli
</mainClass>
</manifest>
</archive>
<descriptorRefs>
...
...
src/main/java/de/monticore/lang/monticar/cnnarch/generator/CNNArch
Generator
.java
→
src/main/java/de/monticore/lang/monticar/cnnarch/generator/CNNArch
2MxNet
.java
View file @
29d922ab
...
...
@@ -21,10 +21,12 @@
package
de.monticore.lang.monticar.cnnarch.generator
;
import
de.monticore.io.paths.ModelPath
;
import
de.monticore.lang.monticar.cnnarch.CNNArchGenerator
;
import
de.monticore.lang.monticar.cnnarch._cocos.CNNArchCocos
;
import
de.monticore.lang.monticar.cnnarch._symboltable.ArchitectureSymbol
;
import
de.monticore.lang.monticar.cnnarch._symboltable.CNNArchCompilationUnitSymbol
;
import
de.monticore.lang.monticar.cnnarch._symboltable.CNNArchLanguage
;
import
de.monticore.lang.monticar.cnntrain._symboltable.ConfigurationSymbol
;
import
de.monticore.symboltable.GlobalScope
;
import
de.monticore.symboltable.Scope
;
import
de.se_rwth.commons.logging.Log
;
...
...
@@ -34,14 +36,15 @@ import java.io.FileWriter;
import
java.io.IOException
;
import
java.nio.file.Path
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Optional
;
public
class
CNNArchGenerator
{
public
class
CNNArch2MxNet
implements
CNNArchGenerator
{
private
String
generationTargetPath
;
public
CNNArch
Generator
()
{
public
CNNArch
2MxNet
()
{
setGenerationTargetPath
(
"./target/generated-sources-cnnarch/"
);
}
...
...
@@ -79,6 +82,11 @@ public class CNNArchGenerator {
}
}
@Override
public
Map
<
String
,
String
>
generateTrainer
(
List
<
ConfigurationSymbol
>
configurations
,
List
<
String
>
instanceNames
)
{
return
null
;
}
//check cocos with CNNArchCocos.checkAll(architecture) before calling this method.
public
Map
<
String
,
String
>
generateStrings
(
ArchitectureSymbol
architecture
){
Map
<
String
,
String
>
fileContentMap
=
new
HashMap
<>();
...
...
src/main/java/de/monticore/lang/monticar/cnnarch/generator/CNNArch
Generator
Cli.java
→
src/main/java/de/monticore/lang/monticar/cnnarch/generator/CNNArch
2MxNet
Cli.java
View file @
29d922ab
...
...
@@ -25,7 +25,7 @@ import org.apache.commons.cli.*;
import
java.nio.file.Path
;
import
java.nio.file.Paths
;
public
class
CNNArch
Generator
Cli
{
public
class
CNNArch
2MxNet
Cli
{
public
static
final
Option
OPTION_MODELS_PATH
=
Option
.
builder
(
"m"
)
.
longOpt
(
"models-dir"
)
...
...
@@ -48,7 +48,7 @@ public class CNNArchGeneratorCli {
.
required
(
false
)
.
build
();
private
CNNArch
Generator
Cli
()
{
private
CNNArch
2MxNet
Cli
()
{
}
public
static
void
main
(
String
[]
args
)
{
...
...
@@ -84,7 +84,7 @@ public class CNNArchGeneratorCli {
Path
modelsDirPath
=
Paths
.
get
(
cliArgs
.
getOptionValue
(
OPTION_MODELS_PATH
.
getOpt
()));
String
rootModelName
=
cliArgs
.
getOptionValue
(
OPTION_ROOT_MODEL
.
getOpt
());
String
outputPath
=
cliArgs
.
getOptionValue
(
OPTION_OUTPUT_PATH
.
getOpt
());
CNNArch
Generator
generator
=
new
CNNArch
Generator
();
CNNArch
2MxNet
generator
=
new
CNNArch
2MxNet
();
if
(
outputPath
!=
null
){
generator
.
setGenerationTargetPath
(
outputPath
);
}
...
...
src/test/java/de/monticore/lang/monticar/cnnarch/GenerationTest.java
View file @
29d922ab
...
...
@@ -20,7 +20,7 @@
*/
package
de.monticore.lang.monticar.cnnarch
;
import
de.monticore.lang.monticar.cnnarch.generator.CNNArch
Generator
Cli
;
import
de.monticore.lang.monticar.cnnarch.generator.CNNArch
2MxNet
Cli
;
import
de.se_rwth.commons.logging.Log
;
import
freemarker.template.TemplateException
;
import
org.junit.Before
;
...
...
@@ -45,7 +45,7 @@ public class GenerationTest extends AbstractSymtabTest{
public
void
testCifar10Classifier
()
throws
IOException
,
TemplateException
{
Log
.
getFindings
().
clear
();
String
[]
args
=
{
"-m"
,
"src/test/resources/valid_tests"
,
"-r"
,
"CifarClassifierNetwork"
,
"-o"
,
"./target/generated-sources-cnnarch/"
};
CNNArch
Generator
Cli
.
main
(
args
);
CNNArch
2MxNet
Cli
.
main
(
args
);
assertTrue
(
Log
.
getFindings
().
isEmpty
());
checkFilesAreEqual
(
...
...
@@ -62,7 +62,7 @@ public class GenerationTest extends AbstractSymtabTest{
public
void
testAlexnetGeneration
()
throws
IOException
,
TemplateException
{
Log
.
getFindings
().
clear
();
String
[]
args
=
{
"-m"
,
"src/test/resources/architectures"
,
"-r"
,
"Alexnet"
,
"-o"
,
"./target/generated-sources-cnnarch/"
};
CNNArch
Generator
Cli
.
main
(
args
);
CNNArch
2MxNet
Cli
.
main
(
args
);
assertTrue
(
Log
.
getFindings
().
isEmpty
());
checkFilesAreEqual
(
...
...
@@ -78,7 +78,7 @@ public class GenerationTest extends AbstractSymtabTest{
public
void
testGeneratorVGG16
()
throws
IOException
,
TemplateException
{
Log
.
getFindings
().
clear
();
String
[]
args
=
{
"-m"
,
"src/test/resources/architectures"
,
"-r"
,
"VGG16"
,
"-o"
,
"./target/generated-sources-cnnarch/"
};
CNNArch
Generator
Cli
.
main
(
args
);
CNNArch
2MxNet
Cli
.
main
(
args
);
assertTrue
(
Log
.
getFindings
().
isEmpty
());
checkFilesAreEqual
(
...
...
@@ -95,7 +95,7 @@ public class GenerationTest extends AbstractSymtabTest{
public
void
testThreeInputCNNGeneration
()
throws
IOException
,
TemplateException
{
Log
.
getFindings
().
clear
();
String
[]
args
=
{
"-m"
,
"src/test/resources/architectures"
,
"-r"
,
"ThreeInputCNN_M14"
};
CNNArch
Generator
Cli
.
main
(
args
);
CNNArch
2MxNet
Cli
.
main
(
args
);
assertTrue
(
Log
.
getFindings
().
size
()
==
1
);
}
...
...
@@ -103,7 +103,7 @@ public class GenerationTest extends AbstractSymtabTest{
public
void
testResNeXtGeneration
()
throws
IOException
,
TemplateException
{
Log
.
getFindings
().
clear
();;
String
[]
args
=
{
"-m"
,
"src/test/resources/architectures"
,
"-r"
,
"ResNeXt50"
};
CNNArch
Generator
Cli
.
main
(
args
);
CNNArch
2MxNet
Cli
.
main
(
args
);
assertTrue
(
Log
.
getFindings
().
isEmpty
());
}
...
...
@@ -111,7 +111,7 @@ public class GenerationTest extends AbstractSymtabTest{
public
void
testMultipleOutputs
()
throws
IOException
,
TemplateException
{
Log
.
getFindings
().
clear
();
String
[]
args
=
{
"-m"
,
"src/test/resources/valid_tests"
,
"-r"
,
"MultipleOutputs"
};
CNNArch
Generator
Cli
.
main
(
args
);
CNNArch
2MxNet
Cli
.
main
(
args
);
assertTrue
(
Log
.
getFindings
().
size
()
==
3
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment