Open
Description
As seen during previous dependency updates (see #2704 and #3018), there is a regression in CGMES conversion performances when the RDF4J dependency is upgraded.
We should investigate why that happens and if it's on powsybl side or if it is on RDF4J side.
Here are some performance comparison.
CGMES conversion test duration:
Computation | Duration on version 4.3.2 | Duration on version 5.1.2 | Difference |
---|---|---|---|
on local computer | 56.409 s | 01:45 min | +87% |
on GitHub | 01:31 min | 02:37 min | +72% |
Durations by test class (7 longest durations):
Test class | Before (ms) | After (ms) | Diff (ms) | Evolution (%) |
---|---|---|---|---|
Cgmes3ConversionTest | 11 590 | 14 078 | +2 488 | +21.46% |
CgmesConformity1ModifiedConversionTest | 6 001 | 14 347 | +8 346 | +139.06% |
TransformerConversionTest | 1 342 | 4 983 | +3 641 | +271.46% |
HvdcConversionTest | 7 646 | 10 046 | +2 400 | +31.38% |
EquipmentExportTest | 5 859 | 12 212 | +6 353 | +108.44% |
CgmesConformity1ConversionTest | 2 715 | 6 006 | +3 291 | +121.25% |
StateVariablesExportTest | 3 835 | 6 434 | +2 599 | +67.80% |
Total | 39 988 | 68 106 | +28 118 | +70.29% |
Durations by class and by test:
CgmesConformity1ModifiedConversionTest | Before (ms) | After (ms) | Diff (ms) | Evolution (%) |
---|---|---|---|---|
Test microBETieFlow() | 42 | 160 | 118 | 280.95% |
Test microAssembledSwitchAtBoundary() | 61 | 180 | 119 | 195.08% |
Test smallNodeBreakerHvdcDcLine2BothConvertersTargetPpcc1rectifier2inverter() | 492 | 608 | 116 | 23.58% |
Test microBEUsingSshForRtcPtcDisabled() | 34 | 160 | 126 | 370.59% |
Test smallNodeBreakerVscControllerRemotePccTerminal() | 442 | 580 | 138 | 31.22% |
Test microBEReactiveCapabilityCurveOnePoint() | 33 | 160 | 127 | 384.85% |
Test miniBusBranchExternalInjectionControl() | 33 | 165 | 132 | 400.00% |
Test microGridBaseCaseNLMultipleReferencePriorities() | 32 | 152 | 120 | 375.00% |
Test microBEMissingRegulatingControl() | 37 | 163 | 126 | 340.54% |
Test microAssembledEquivalentBranchAtBoundary() | 43 | 167 | 124 | 288.37% |
Test microBEPhaseTapChangerLinearTest() | 36 | 157 | 121 | 336.11% |
Test microBEConformNonConformLoads() | 32 | 159 | 127 | 396.88% |
Test microBEMissingShuntRegulatingControlId() | 32 | 156 | 124 | 387.50% |
Test microT4OffSvc() | 147 | 632 | 485 | 329.93% |
Test miniNodeBreakerMissingSubstationRegion() | 29 | 94 | 65 | 224.14% |
Test miniNodeBreakerSvInjection() | 58 | 181 | 123 | 212.07% |
Test microBEEquivalentShunt() | 31 | 153 | 122 | 393.55% |
Test microBEReactivePowerGen() | 33 | 153 | 120 | 363.64% |
Test microBEEquivalentBranchAtBoundary() | 35 | 154 | 119 | 340.00% |
Test smallNodeBreakerHvdcMissingDCLineSegment() | 429 | 563 | 134 | 31.23% |
Test smallNodeBreakerHvdcNanTargetPpcc() | 430 | 571 | 141 | 32.79% |
Test microGridBELineDisconnectedAtBoundaryNode() | 62 | 306 | 244 | 393.55% |
Test microGridBaseBEStationSupply() | 31 | 156 | 125 | 403.23% |
Test microGridBaseCaseBESingleFile() | 36 | 153 | 117 | 325.00% |
Test microBESvInjection() | 33 | 153 | 120 | 363.64% |
Test microBEFixedMinPMaxP() | 34 | 156 | 122 | 358.82% |
Test microT4InvalidSvcMode() | 78 | 325 | 247 | 316.67% |
Test smallBusBranchTieFlowWithoutControlArea() | 124 | 245 | 121 | 97.58% |
Test smallNodeBreakerHvdcVscReactiveQPcc() | 430 | 573 | 143 | 33.26% |
Test microGridBaseCaseAssembledEntsoeCategory() | 36 | 168 | 132 | 366.67% |
Test microBERatioPhaseFaultyTabularTest() | 31 | 157 | 126 | 406.45% |
Test miniBusBranchT3xTwoRegulatingControlsEnabled() | 30 | 150 | 120 | 400.00% |
Test microBEInvalidSvInjection() | 30 | 159 | 129 | 430.00% |
Test microT4SvcWithoutRegulatingControl() | 82 | 330 | 248 | 302.44% |
Test microT4ReactivePowerSvcWithMissingRegulatingControl() | 85 | 320 | 235 | 276.47% |
Test microGridBaseCaseNLShuntCompensatorGP() | 29 | 159 | 130 | 448.28% |
Test microBEEquivalentInjectionRegulatingVoltage() | 33 | 152 | 119 | 360.61% |
Test microBEPtcSide2() | 30 | 151 | 121 | 403.33% |
Test microBESwitchAtBoundary() | 31 | 154 | 123 | 396.77% |
Test smallNodeBreakerHvdcDcLine2Inverter1Rectifier2() | 428 | 571 | 143 | 33.41% |
Test miniNodeBreakerInvalidT2w() | 97 | 330 | 233 | 240.21% |
Test miniBusBranchRtcRemoteRegulation() | 30 | 154 | 124 | 413.33% |
Test microBETransformerAtBoundary() | 32 | 152 | 120 | 375.00% |
Test microT4ReactivePowerSvc() | 78 | 317 | 239 | 306.41% |
Test microAssembledTransformerAtBoundary() | 45 | 164 | 119 | 264.44% |
Test microBEInvalidRegulatingControl() | 30 | 152 | 122 | 406.67% |
Test microBERatioPhaseTabularTest() | 30 | 167 | 137 | 456.67% |
Test smallNodeBreakerHvdcNoSequenceNumbers() | 682 | 981 | 299 | 43.84% |
Test microBEDuplicateRegion() | 29 | 151 | 122 | 420.69% |
Test microGridBaseBETargetDeadbandNegative() | 28 | 150 | 122 | 435.71% |
Test microBEReactiveCapabilityCurve() | 30 | 154 | 124 | 413.33% |
Test microBEExplicitBase() | 29 | 153 | 124 | 427.59% |
Test microBEPtcCurrentLimiter() | 33 | 153 | 120 | 363.64% |
Test microBEUnmergedXnode() | 31 | 155 | 124 | 400.00% |
Test microBEIncorrectDate() | 32 | 154 | 122 | 381.25% |
Test microAssembledThreeLinesAtBoundary() | 56 | 178 | 122 | 217.86% |
Test smallNodeBreakerHvdcDcLine2BothConvertersTargetPpcc1inverter2rectifier() | 432 | 568 | 136 | 31.48% |
Test microBEEquivalentBranch() | 30 | 155 | 125 | 416.67% |
Cgmes3ConversionTest | Before (ms) | After (ms) | Diff (ms) | Evolution (%) |
---|---|---|---|---|
Test svedala() | 1280 | 1474 | +194 | +15.16% |
Test smallGrid() | 1153 | 1322 | +169 | +14.66% |
Test svedalaConvertBoundary() | 991 | 1200 | +209 | +21.09% |
Test miniGridConvertBoundary() | 104 | 239 | +135 | +129.81% |
Test throwsUncheckedIOExceptionOnImport() | 1 | 1 | 0 | 0.00% |
Test miniGrid() | 102 | 248 | +146 | +143.14% |
Test svedalaWithDifferentFictitiousSwitchesCreationModes() | 2016 | 2261 | +245 | +12.15% |
Test smallGridWithAndWithoutTpSv() | 2052 | 2346 | +294 | +14.33% |
Test microGrid() | 106 | 242 | +136 | +128.30% |
Test miniGridRatedS() | 97 | 220 | +123 | +126.80% |
Test svedalaWithAndWithoutTpSv() | 1742 | 2127 | +385 | +22.11% |
Test microGridConvertBoundary() | 95 | 222 | +127 | +133.68% |
Test smallGridConvertBoundary() | 1078 | 1230 | +152 | +14.10% |
Test microGridWithAndWithoutTpSv() | 185 | 476 | +291 | +157.30% |
Test miniGridWithAndWithoutTpSv() | 175 | 439 | +264 | +150.86% |
Test loadNetworkMicroGrid() | 116 | 235 | +119 | +102.59% |
EquipmentExportTest | Before (ms) | After (ms) | Diff (ms) | Evolution (%) |
---|---|---|---|---|
Test smallGridHvdc() | 1369 | 1473 | +104 | +7.60% |
Test miniGridCgmesExportPreservingOriginalClassesOfGenerators() | 311 | 483 | +172 | +55.31% |
Test microGridBaseCaseAssembledSwitchAtBoundary() | 121 | 435 | +314 | +259.50% |
Test smallNodeBreaker() | 912 | 1120 | +208 | +22.81% |
Test testLoadGroups() | 99 | 346 | +247 | +249.49% |
Test microGridWithTieFlowMappedToEquivalentInjection() | 101 | 331 | +230 | +227.72% |
Test nordic32SortTransformerEnds() | 89 | 200 | +111 | +124.72% |
Test smallBusBranch() | 320 | 556 | +236 | +73.75% |
Test tapChangerControlDefineControlTest() | 155 | 395 | +240 | +154.84% |
Test miniBusBranch() | 81 | 314 | +233 | +287.65% |
Test generatorRegulatingControlEQTest() | 29 | 24 | -5 | -17.24% |
Test equivalentShuntTest() | 70 | 306 | +236 | +337.14% |
Test tapChangerControlDefineRatioTapChangerAndPhaseTapChangerTest() | 157 | 398 | +241 | +153.50% |
Test twoWindingsTransformerCgmesExportTest() | 31 | 165 | +134 | +432.26% |
Test microGrid() | 116 | 358 | +242 | +208.62% |
Test bPerSectionTest() | 82 | 339 | +257 | +313.41% |
Test twoWindingsTransformerWithShuntAdmittanceCgmesExportTest() | 28 | 166 | +138 | +492.86% |
Test hydroPowerPlantExportAndImportTest() | 14 | 139 | +125 | +892.86% |
Test phaseTapChangerTapChangerControlEQTest() | 14 | 12 | -2 | -14.29% |
Test miniNodeBreaker() | 109 | 354 | +245 | +224.77% |
Test generatingUnitTypesTest() | 1 | 1 | 0 | 0.00% |
Test threeWindingsTransformerCgmesExportTest() | 15 | 137 | +122 | +813.33% |
Test shuntCompensatorRegulatingControlEQTest() | 12 | 11 | -1 | -8.33% |
Test synchronousMachineKindExportAndImportTest() | 16 | 147 | +131 | +818.75% |
Test tapChangerControlDefineRatioTapChangerAndPhaseTapChangerT3wLeg1Test() | 149 | 390 | +241 | +161.74% |
Test tapChangerControlDefineRatioTapChangerAndPhaseTapChangerT3wLeg2Test() | 152 | 396 | +244 | +160.53% |
Test tapChangerControlDefineRatioTapChangerAndPhaseTapChangerT3wLeg3Test() | 149 | 392 | +243 | +163.09% |
Test smallGridHvdcWithCapabilityCurve() | 865 | 1131 | +266 | +30.75% |
Test microGridCgmesExportPreservingOriginalClassesOfLoads() | 171 | 419 | +248 | +145.03% |
Test nordic32() | 74 | 204 | +130 | +175.68% |
Test ratioTapChangerTapChangerControlEQTest() | 22 | 30 | +8 | +36.36% |
Test equivalentShuntWithZeroSectionCountTest() | 69 | 305 | +236 | +342.03% |
Test testExportEquivalentInjectionBaseVoltage() | 1 | 1 | 0 | 0.00% |
Test threeWindingsTransformerTest() | 29 | 273 | +244 | +841.38% |
Test fossilFuelExportAndImportTest() | 15 | 138 | +123 | +820.00% |
Test staticVarCompensatorRegulatingControlEQTest() | 13 | 13 | 0 | 0.00% |
Test microGridCreateEquivalentInjectionAliases() | 96 | 339 | +243 | +253.13% |
HvdcConversionTest | Before (ms) | After (ms) | Diff (ms) | Evolution (%) |
---|---|---|---|---|
Test smallNodeBreakerHvdcDcLine2BothConvertersTargetPpcc1rectifier2inverter() | 448 | 595 | +147 | +32.81% |
Test smallNodeBreakerHvdcTwoAcDcConvertersTwoDcLineSegments() | 456 | 593 | +137 | +30.04% |
Test smallNodeBreakerHvdc() | 449 | 583 | +134 | +29.84% |
Test smallNodeBreakerHvdcMissingDCLineSegment() | 462 | 568 | +106 | +22.94% |
Test smallNodeBreakerHvdcNanTargetPpcc() | 454 | 584 | +130 | +28.63% |
Test smallNodeBreakerHvdcMissingAcDcConverters() | 445 | 578 | +133 | +29.89% |
Test smallNodeBreakerHvdcVscReactiveQPcc() | 442 | 589 | +147 | +33.26% |
Test smallNodeBreakerHvdcTwoDcLineSegmentsOneTransformer() | 448 | 593 | +145 | +32.37% |
Test smallNodeBreakerHvdcDcLine2Inverter1Rectifier2() | 450 | 582 | +132 | +29.33% |
Test smallNodeBreakerHvdcTwoAcDcConvertersOneDcLineSegment() | 464 | 593 | +129 | +27.80% |
Test smallNodeBreakerHvdcWithDifferentConverterTypes() | 453 | 593 | +140 | +30.90% |
Test smallNodeBreakerHvdcWithTwoTransformers() | 445 | 595 | +150 | +33.71% |
Test smallNodeBreakerHvdcWithVsCapabilityCurve() | 457 | 600 | +143 | +31.29% |
Test smallNodeBreakerHvdcTwoAcDcConvertersTwoDcLineSegmentsNoAcConnectionAtOneEnd() | 452 | 602 | +150 | +33.19% |
Test smallNodeBreakerHvdcWithOneTransformer() | 445 | 592 | +147 | +33.03% |
Test smallNodeBreakerHvdcDcLine2BothConvertersTargetPpcc1inverter2rectifier() | 443 | 603 | +160 | +36.12% |
Test smallNodeBreakerHvdcTwoDcLineSegments() | 442 | 586 | +144 | +32.58% |
TransformerConversionTest | Before (ms) | After (ms) | Diff (ms) | Evolution (%) |
---|---|---|---|---|
Test microGridBaseCaseBExfmr2ShuntDefault() | 104 | 215 | +111 | +106.73% |
Test microGridBaseCaseBExfmr2Ratio0End1() | 47 | 165 | +118 | +251.06% |
Test microGridBaseCaseBExfmr2Ratio0End2() | 41 | 162 | +121 | +295.12% |
Test microGridBaseCaseBExfmr2RatioPhaseX() | 47 | 162 | +115 | +244.68% |
Test miniBusBranchT2xPhaseAngleClock1NonZero() | 34 | 155 | +121 | +355.88% |
Test microGridBaseCaseBExfmr3ShuntSplit() | 44 | 164 | +120 | +272.73% |
Test microGridBaseCaseBExfmr3RatioPhaseStarBusSide() | 49 | 161 | +112 | +228.57% |
Test microGridBaseCaseBExfmr3Ratio0StarBusSide() | 45 | 161 | +116 | +257.78% |
Test microGridBaseCaseBExfmr3RatioPhaseNetworkSide() | 42 | 162 | +120 | +285.71% |
Test microGridBaseCaseBExfmr3Ratio0NetworkSide() | 40 | 161 | +121 | +302.50% |
Test microGridBaseCaseBExfmr2Ratio0X() | 43 | 164 | +121 | +281.40% |
Test miniBusBranchPhaseAngleClock() | 28 | 151 | +123 | +439.29% |
Test miniBusBranchPhaseAngleClockZero() | 30 | 154 | +124 | +413.33% |
Test microGridBaseCaseBExfmr2ShuntSplit() | 43 | 160 | +117 | +272.09% |
Test microGridBaseCaseBEPhaseTapChangerXMin() | 96 | 220 | +124 | +129.17% |
Test microGridBaseCaseBExfmr2ShuntEnd1End2() | 41 | 161 | +120 | +292.68% |
Test microGridBaseCaseBExfmr3ShuntStarBusSide() | 41 | 159 | +118 | +287.80% |
Test microGridBaseCaseBExfmr2RatioPhaseEnd1End2() | 39 | 161 | +122 | +312.82% |
Test microGridBaseCaseBExfmr3Ratio0End1() | 42 | 162 | +120 | +285.71% |
Test microGridBaseCaseBExfmr3Ratio0End2() | 44 | 167 | +123 | +279.55% |
Test microGridBaseCaseBExfmr3Ratio0End3() | 48 | 162 | +114 | +237.50% |
Test microGridBaseCaseBExfmr3ShuntNetworkSide() | 46 | 160 | +114 | +247.83% |
Test microGridBaseCaseBExfmr2RatioPhaseEnd1() | 39 | 161 | +122 | +312.82% |
Test microGridBaseCaseBExfmr2RatioPhaseEnd2() | 39 | 165 | +126 | +323.08% |
Test microGridBaseCaseBExfmr2RatioPhaseDefault() | 39 | 163 | +124 | +317.95% |
Test microGridBaseCaseDefault() | 39 | 159 | +120 | +307.69% |
Test microGridBaseCaseBExfmr2ShuntEnd1() | 39 | 160 | +121 | +310.26% |
Test microGridBaseCaseBExfmr2ShuntEnd2() | 38 | 159 | +121 | +318.42% |
Test miniBusBranchT3xAllPhaseAngleClockNonZero() | 30 | 156 | +126 | +420.00% |
Test microGridBaseCaseBExfmr2Ratio0Default() | 38 | 160 | +122 | +321.05% |