Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
M
moobench
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
SustainKieker
moobench
Commits
aa505f13
Commit
aa505f13
authored
4 years ago
by
Reiner Jung
Browse files
Options
Downloads
Patches
Plain Diff
Fixed compile results.
parent
cbe0f96e
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
tools/compile-results/src/main/java/moobench/tools/compile/results/CompileResultsMain.java
+27
-14
27 additions, 14 deletions
...va/moobench/tools/compile/results/CompileResultsMain.java
with
27 additions
and
14 deletions
tools/compile-results/src/main/java/moobench/tools/compile/results/CompileResultsMain.java
+
27
−
14
View file @
aa505f13
...
@@ -41,11 +41,15 @@ public class CompileResultsMain {
...
@@ -41,11 +41,15 @@ public class CompileResultsMain {
private
static
final
String
NO_INSTRUMENTATION
=
"No instrumentation"
;
private
static
final
String
NO_INSTRUMENTATION
=
"No instrumentation"
;
private
static
final
String
PARTIAL_RESULT_FILENAME
=
"partial-results.json"
;
private
static
final
String
PARTIAL_RESULT_FILENAME
=
"partial-results.json"
;
private
static
final
String
RELATIVE_RESULT_FILENAME
=
"relative-results.json"
;
private
static
final
String
RELATIVE_RESULT_FILENAME
=
"relative-results.json"
;
private
static
final
int
WINDOW_LENGTH
=
100
;
private
static
final
String
BUILD_LABEL
=
"build"
;
private
static
final
String
TIME_LABEL
=
"time"
;
private
static
final
String
RESULTS_LABEL
=
"results"
;
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
try
{
try
{
final
JsonNode
rootNode
;
final
JsonNode
rootNode
;
File
jsonMainFile
=
Paths
.
get
(
args
[
1
]).
toFile
();
File
jsonMainFile
=
Paths
.
get
(
args
[
1
]).
toFile
();
if
(
jsonMainFile
.
exists
())
{
if
(
jsonMainFile
.
exists
())
{
...
@@ -58,7 +62,7 @@ public class CompileResultsMain {
...
@@ -58,7 +62,7 @@ public class CompileResultsMain {
File
jsonPartialFile
=
new
File
(
jsonMainFile
.
getParentFile
().
getPath
()
+
File
.
separator
+
PARTIAL_RESULT_FILENAME
);
File
jsonPartialFile
=
new
File
(
jsonMainFile
.
getParentFile
().
getPath
()
+
File
.
separator
+
PARTIAL_RESULT_FILENAME
);
File
jsonRelativeFile
=
new
File
(
jsonMainFile
.
getParentFile
().
getPath
()
+
File
.
separator
+
RELATIVE_RESULT_FILENAME
);
File
jsonRelativeFile
=
new
File
(
jsonMainFile
.
getParentFile
().
getPath
()
+
File
.
separator
+
RELATIVE_RESULT_FILENAME
);
JsonNode
resultsNode
=
rootNode
.
get
(
"results"
);
JsonNode
resultsNode
=
rootNode
.
get
(
RESULTS_LABEL
);
if
(!(
resultsNode
instanceof
ArrayNode
))
{
if
(!(
resultsNode
instanceof
ArrayNode
))
{
System
.
exit
(
1
);
System
.
exit
(
1
);
...
@@ -78,8 +82,8 @@ public class CompileResultsMain {
...
@@ -78,8 +82,8 @@ public class CompileResultsMain {
/** Put CSV data in main JSON. */
/** Put CSV data in main JSON. */
for
(
CSVRecord
record
:
csvParser
.
getRecords
())
{
for
(
CSVRecord
record
:
csvParser
.
getRecords
())
{
Map
<
String
,
JsonNode
>
recordMap
=
new
HashMap
<>();
Map
<
String
,
JsonNode
>
recordMap
=
new
HashMap
<>();
recordMap
.
put
(
"time"
,
new
LongNode
(
new
Date
().
getTime
()));
recordMap
.
put
(
TIME_LABEL
,
new
LongNode
(
new
Date
().
getTime
()));
recordMap
.
put
(
"build"
,
new
LongNode
(
build
++));
recordMap
.
put
(
BUILD_LABEL
,
new
LongNode
(
build
++));
for
(
int
i
=
0
;
i
<
record
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
record
.
size
();
i
++)
{
recordMap
.
put
(
header
.
get
(
i
).
trim
(),
new
DoubleNode
(
Double
.
parseDouble
(
record
.
get
(
i
))));
recordMap
.
put
(
header
.
get
(
i
).
trim
(),
new
DoubleNode
(
Double
.
parseDouble
(
record
.
get
(
i
))));
}
}
...
@@ -88,7 +92,7 @@ public class CompileResultsMain {
...
@@ -88,7 +92,7 @@ public class CompileResultsMain {
/** Produce alternative outputs. */
/** Produce alternative outputs. */
JsonNode
partialRootNode
=
createPartialResultList
(
arrayResultsNode
);
JsonNode
partialRootNode
=
createPartialResultList
(
arrayResultsNode
);
JsonNode
relativeRootNode
=
createRelativeResultList
((
ArrayNode
)
partialRootNode
.
get
(
"results"
));
JsonNode
relativeRootNode
=
createRelativeResultList
((
ArrayNode
)
partialRootNode
.
get
(
RESULTS_LABEL
));
/** Write JSON files. */
/** Write JSON files. */
new
ObjectMapper
().
writeValue
(
jsonMainFile
,
rootNode
);
new
ObjectMapper
().
writeValue
(
jsonMainFile
,
rootNode
);
...
@@ -116,12 +120,14 @@ public class CompileResultsMain {
...
@@ -116,12 +120,14 @@ public class CompileResultsMain {
ObjectNode
objectNode
=
(
ObjectNode
)
node
;
ObjectNode
objectNode
=
(
ObjectNode
)
node
;
Iterator
<
Entry
<
String
,
JsonNode
>>
iterator
=
objectNode
.
fields
();
Iterator
<
Entry
<
String
,
JsonNode
>>
iterator
=
objectNode
.
fields
();
while
(
iterator
.
hasNext
())
{
Map
<
String
,
JsonNode
>
map
=
new
HashMap
<>();
while
(
iterator
.
hasNext
())
{
Entry
<
String
,
JsonNode
>
entry
=
iterator
.
next
();
Entry
<
String
,
JsonNode
>
entry
=
iterator
.
next
();
objectNode
.
remove
(
entry
.
getKey
());
map
.
put
(
entry
.
getKey
().
trim
(),
entry
.
getValue
());
objectNode
.
set
(
entry
.
getKey
().
trim
(),
entry
.
getValue
());
}
}
objectNode
.
removeAll
();
objectNode
.
setAll
(
map
);
JsonNode
buildValue
=
objectNode
.
get
(
"build"
);
JsonNode
buildValue
=
objectNode
.
get
(
"build"
);
if
(
buildValue
!=
null
)
{
if
(
buildValue
!=
null
)
{
if
(
build
<=
buildValue
.
asLong
())
{
if
(
build
<=
buildValue
.
asLong
())
{
...
@@ -147,12 +153,17 @@ public class CompileResultsMain {
...
@@ -147,12 +153,17 @@ public class CompileResultsMain {
Iterator
<
Entry
<
String
,
JsonNode
>>
elementValueIterator
=
element
.
fields
();
Iterator
<
Entry
<
String
,
JsonNode
>>
elementValueIterator
=
element
.
fields
();
while
(
elementValueIterator
.
hasNext
())
{
while
(
elementValueIterator
.
hasNext
())
{
Entry
<
String
,
JsonNode
>
value
=
elementValueIterator
.
next
();
Entry
<
String
,
JsonNode
>
value
=
elementValueIterator
.
next
();
valueMap
.
put
(
value
.
getKey
(),
new
DoubleNode
((
value
.
getValue
().
asDouble
()-
baseline
)/
baseline
));
if
(
BUILD_LABEL
.
equals
(
value
.
getKey
())
||
TIME_LABEL
.
equals
(
value
.
getKey
()))
{
valueMap
.
put
(
value
.
getKey
(),
value
.
getValue
());
}
else
{
valueMap
.
put
(
value
.
getKey
(),
new
DoubleNode
(
value
.
getValue
().
asDouble
()/
baseline
));
}
}
}
relativeResultsNode
.
add
(
new
ObjectNode
(
factory
,
valueMap
));
}
}
Map
<
String
,
JsonNode
>
map
=
new
HashMap
<>();
Map
<
String
,
JsonNode
>
map
=
new
HashMap
<>();
map
.
put
(
"results"
,
relativeResultsNode
);
map
.
put
(
RESULTS_LABEL
,
relativeResultsNode
);
return
new
ObjectNode
(
factory
,
map
);
return
new
ObjectNode
(
factory
,
map
);
}
}
...
@@ -162,7 +173,8 @@ public class CompileResultsMain {
...
@@ -162,7 +173,8 @@ public class CompileResultsMain {
ArrayNode
partialResultsNode
=
new
ArrayNode
(
factory
);
ArrayNode
partialResultsNode
=
new
ArrayNode
(
factory
);
for
(
int
i
=
0
;
i
<
arrayNode
.
size
();
i
++)
{
int
start
=
arrayNode
.
size
()>
WINDOW_LENGTH
?
arrayNode
.
size
()-
WINDOW_LENGTH:
0
;
for
(
int
i
=
start
;
i
<
arrayNode
.
size
();
i
++)
{
JsonNode
element
=
arrayNode
.
get
(
i
);
JsonNode
element
=
arrayNode
.
get
(
i
);
Map
<
String
,
JsonNode
>
valueMap
=
new
HashMap
<>();
Map
<
String
,
JsonNode
>
valueMap
=
new
HashMap
<>();
Iterator
<
Entry
<
String
,
JsonNode
>>
elementValueIterator
=
element
.
fields
();
Iterator
<
Entry
<
String
,
JsonNode
>>
elementValueIterator
=
element
.
fields
();
...
@@ -170,10 +182,11 @@ public class CompileResultsMain {
...
@@ -170,10 +182,11 @@ public class CompileResultsMain {
Entry
<
String
,
JsonNode
>
value
=
elementValueIterator
.
next
();
Entry
<
String
,
JsonNode
>
value
=
elementValueIterator
.
next
();
valueMap
.
put
(
value
.
getKey
(),
value
.
getValue
());
valueMap
.
put
(
value
.
getKey
(),
value
.
getValue
());
}
}
partialResultsNode
.
add
(
new
ObjectNode
(
factory
,
valueMap
));
}
}
Map
<
String
,
JsonNode
>
map
=
new
HashMap
<>();
Map
<
String
,
JsonNode
>
map
=
new
HashMap
<>();
map
.
put
(
"results"
,
partialResultsNode
);
map
.
put
(
RESULTS_LABEL
,
partialResultsNode
);
return
new
ObjectNode
(
factory
,
map
);
return
new
ObjectNode
(
factory
,
map
);
}
}
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment