Skip to content
This repository was archived by the owner on Sep 23, 2024. It is now read-only.

Commit 4cbb4e1

Browse files
authored
Merge pull request #235 from FIRST-Tech-Challenge/pr_fix_retrieveSummaryItems_timeout
Fix issue with retrieveSummaryItems timing out
2 parents c6bc57a + 24ac008 commit 4cbb4e1

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

server/src/js/monitorTraining.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ fmltc.MonitorTraining = function(util, modelUuid, modelEntitiesByUuid, datasetEn
8282
this.trainingScalars.jobType = 'train';
8383
this.trainingScalars.valueType = 'scalar';
8484
this.trainingScalars.maxItemsPerRequest = 50;
85+
this.trainingScalars.parallelization = 2;
8586
this.trainingScalars.scalarsHeading = this.trainingScalarsHeading;
8687
this.trainingScalars.parentDiv = this.trainingScalarsDiv;
8788
this.trainingScalars.mapTagToSteps = {}; // map<tag, sortedArray<step>>
@@ -97,6 +98,7 @@ fmltc.MonitorTraining = function(util, modelUuid, modelEntitiesByUuid, datasetEn
9798
this.evalScalars.jobType = 'eval';
9899
this.evalScalars.valueType = 'scalar';
99100
this.evalScalars.maxItemsPerRequest = 50;
101+
this.evalScalars.parallelization = 2;
100102
this.evalScalars.scalarsHeading = this.evalScalarsHeading;
101103
this.evalScalars.parentDiv = this.evalScalarsDiv;
102104
this.evalScalars.mapTagToSteps = {}; // map<tag, sortedArray<step>>
@@ -111,7 +113,8 @@ fmltc.MonitorTraining = function(util, modelUuid, modelEntitiesByUuid, datasetEn
111113
this.evalImages = {};
112114
this.evalImages.jobType = 'eval';
113115
this.evalImages.valueType = 'image';
114-
this.evalImages.maxItemsPerRequest = 20;
116+
this.evalImages.maxItemsPerRequest = 10;
117+
this.evalImages.parallelization = 2;
115118
this.evalImages.parentDiv = this.evalImagesDiv;
116119
this.evalImages.mapTagToSteps = {}; // map<tag, sortedArray<step>>
117120
this.evalImages.sortedTags = [];
@@ -426,7 +429,7 @@ fmltc.MonitorTraining.prototype.xhr_retrieveTagsAndSteps_onreadystatechange = fu
426429
requestStepAndTagPairs.push(newStepAndTagPairs[i]);
427430
}
428431
}
429-
this.retrieveSummaryItemsInParallel(o, requestStepAndTagPairs, 2);
432+
this.retrieveSummaryItemsInParallel(o, requestStepAndTagPairs);
430433

431434
this.decrementRetrieveDataInProgressCounter(o.valueType);
432435

@@ -471,7 +474,8 @@ fmltc.MonitorTraining.prototype.addToMapTagToSteps = function(stepAndTagPairs, m
471474
}
472475
};
473476

474-
fmltc.MonitorTraining.prototype.retrieveSummaryItemsInParallel = function(o, requestStepAndTagPairs, parallelization) {
477+
fmltc.MonitorTraining.prototype.retrieveSummaryItemsInParallel = function(o, requestStepAndTagPairs) {
478+
const parallelization = Math.min(o.parallelization, requestStepAndTagPairs.length / o.maxItemsPerRequest);
475479
let requestStepAndTagPairsLater = requestStepAndTagPairs.slice(parallelization * o.maxItemsPerRequest);
476480
for (let i = 0; i < parallelization; i++) {
477481
const requestStepAndTagPairsNow = requestStepAndTagPairs.slice(o.maxItemsPerRequest * i, o.maxItemsPerRequest * (i + 1));
@@ -535,7 +539,7 @@ fmltc.MonitorTraining.prototype.xhr_retrieveSummaryItems_onreadystatechange = fu
535539

536540
// Request the next batch of summary items.
537541
if (requestStepAndTagPairsLater.length > 0) {
538-
this.retrieveSummaryItemsInParallel(o, requestStepAndTagPairsLater, 2);
542+
this.retrieveSummaryItemsInParallel(o, requestStepAndTagPairsLater);
539543
}
540544

541545
this.decrementRetrieveDataInProgressCounter(o.valueType);
@@ -1205,7 +1209,7 @@ fmltc.MonitorTraining.prototype.currentPageIndexChanged = function() {
12051209
}
12061210
}
12071211
}
1208-
this.retrieveSummaryItemsInParallel(o, requestStepAndTagPairs, 2);
1212+
this.retrieveSummaryItemsInParallel(o, requestStepAndTagPairs);
12091213
};
12101214

12111215
fmltc.MonitorTraining.prototype.tab_onclick = function(tabContentId) {

0 commit comments

Comments
 (0)