OpenModelica pull request 17139 against wasm-jit

The two runs were produced on different machines (r7945-1 against ryzen-9950x), so the timings compare the hardware as much as the pull request. The phases a model reaches are still comparable.

7 of the 102 libraries were not tested in the same version, or not with the same configuration and reference files, in the two runs; see Library Changes below.

The baseline is the newest run of wasm-jit, not the commit the pull request is based on, so a difference can also come from something merged into wasm-jit since the pull request was branched.

The two runs

BranchRunCompilerMachine
Baselinewasm-jit2026-10-06 18:05:05v1.28.0-dev.1294+gfd4849f190.rustryzen-9950x
Pull requestpr/171392026-10-06 18:28:37v1.28.0-dev.1296+g827ca45b7b.rustr7945-1

Summary

Models compared20037
Number of Improvements28
Number of Regressions22
Number of Performance Improvements7
Number of Performance Regressions14
Models only in the pull request run0
Models only in the baseline run0

Time

Time spent on the 20037 models both runs have. The last column counts only the 19987 that reached the same phase in both: a model that fails earlier stops paying for the phases it no longer reaches.

Phasewasm-jitpr/17139ChangeChange, same phase
frontend1:17:160:59:45-22.7%-22.7%
backend1:48:101:20:59-25.1%-25.1%
simcode0:22:320:17:05-24.2%-24.2%
templates0:12:130:10:49-11.5%-11.6%
compile1:18:471:23:36+6.1%+6.1%
simulate7:48:379:04:44+16.2%+12.5%
verify0:14:420:15:21+4.5%+4.5%
total19:10:4820:00:57+4.4%+2.8%

Library Changes

LibraryChange
Buildings_latestConfiguration hash (OMC settings, the testing script or a reference file changed)
ModelicaTest_4.0.0Configuration hash (OMC settings, the testing script or a reference file changed)
ModelicaTest_4.1.0Configuration hash (OMC settings, the testing script or a reference file changed)
ModelicaTest_trunkConfiguration hash (OMC settings, the testing script or a reference file changed)
Modelica_4.0.0Configuration hash (OMC settings, the testing script or a reference file changed)
Modelica_4.1.0Configuration hash (OMC settings, the testing script or a reference file changed)
Modelica_trunkConfiguration hash (OMC settings, the testing script or a reference file changed)

Models Affected

LibraryModelChange
BLDCBLDC.Examples.DemoBLDCwithPWM (sim) (wasm-jit)Simulate → Compile
BuildingSystemsBuildingSystems.Buildings.Zones.Examples.SingleZoneThermal3x3x3WithOpenings (sim) (wasm-jit)SimCode performance 18.07 → 8.99
Buildings_11Buildings.ThermalZones.EnergyPlus_9_6_0.Examples.SingleFamilyHouse.RadiantHeatingCooling_TRoom (sim) (wasm-jit)Simulate → Verify
Buildings_11Buildings.ThermalZones.EnergyPlus_9_6_0.Examples.SingleFamilyHouse.RadiantHeatingCooling_TSurface (sim) (wasm-jit)Simulate → Verify
Buildings_11Buildings.ThermalZones.EnergyPlus_9_6_0.Examples.SingleFamilyHouse.ShadeControl (sim) (wasm-jit)Simulate → Verify
Buildings_12Buildings.Fluid.HeatPumps.ModularReversible.Controls.Safety.Examples.Safety (sim) (wasm-jit)Verify → Simulate
Buildings_12Buildings.ThermalZones.EnergyPlus_24_2_0.Examples.SingleFamilyHouse.ShadeControl (sim) (wasm-jit)Simulate → Verify
Buildings_latestBuildings.DHC.ETS.Combined.Examples.HeatRecoveryHeatPump (sim) (wasm-jit)Verify → Simulate
Buildings_latestBuildings.DHC.Examples.Combined.SeriesVariableFlowAgentControl (sim) (wasm-jit)Simulate performance 16.81 → 47.12
Buildings_latestBuildings.Fluid.FixedResistances.Validation.PlugFlowPipes.PlugFlowAIT (sim) (wasm-jit)Verify → Compile
Buildings_latestBuildings.ThermalZones.EnergyPlus_24_2_0.Examples.SmallOffice.Guideline36Winter_Autosizing (sim) (wasm-jit)BackEnd performance 11.78 → 5.85
ClaRaClaRa.Components.VolumesValvesFittings.Pipes.Check.FlowReversal.Test_Pipe_L4_Advanced (sim) (wasm-jit)Simulate performance 22.54 → 39.69
ClaRa_devClaRa.Components.VolumesValvesFittings.Pipes.Check.FlowReversal.Test_Pipe_L4_Advanced (sim) (wasm-jit)Simulate performance 23.15 → 40.17
DynawoDynawo.Examples.RVS.TestCases.TestB.TestBNoSvcLoadReset (sim) (wasm-jit)Simulate performance 0:01:24 → 0:02:23
DynawoDynawo.Examples.RVS.TestCases.TestB.TestBNoSvcNoLoadReset (sim) (wasm-jit)Simulate performance 0:01:08 → 0:02:04
DynawoDynawo.Examples.RVS.TestCases.TestB.TestBSvcLoadReset (sim) (wasm-jit)Simulate performance 0:01:12 → 0:02:12
DynawoDynawo.Examples.RVS.TestCases.TestB.TestBSvcNoLoadReset (sim) (wasm-jit)Simulate performance 0:01:06 → 0:02:15
Dynawo_devDynawo.Examples.RVS.TestCases.TestA.TestAAlphaBetaLoadNoRestorative (sim) (wasm-jit)Simulate performance 50.59 → 0:03:03
Dynawo_devDynawo.Examples.RVS.TestCases.TestA.TestAAlphaBetaLoadRestorative (sim) (wasm-jit)Simulate performance 0:01:35 → 0:03:22
Dynawo_devDynawo.Examples.RVS.TestCases.TestB.TestBNoSvcLoadReset (sim) (wasm-jit)Verify → Compile
Dynawo_devDynawo.Examples.RVS.TestCases.TestB.TestBNoSvcNoLoadReset (sim) (wasm-jit)Verify → Compile
Dynawo_devDynawo.Examples.RVS.TestCases.TestB.TestBSvcLoadReset (sim) (wasm-jit)Simulate performance 0:01:44 → 0:03:27
Dynawo_devDynawo.Examples.Wind.IEC.Neplan.WPP4ACurrentSource2015 (sim) (wasm-jit)Compile → Simulate
Dynawo_devDynawo.Examples.Wind.IEC.Neplan.WT4BCurrentSource2015 (sim) (wasm-jit)Verify → Compile
HelmholtzMediaHelmholtzMedia.Examples.ConvergenceTest.SinglePhase_setState_pramp_Tsine (sim) (wasm-jit)Compile → Simulate
IBPSA_latestIBPSA.Fluid.FixedResistances.Validation.PlugFlowPipes.PlugFlowAIT (sim) (wasm-jit)Simulate → Compile
IndustrialControlSystemsIndustrialControlSystems.Controllers.AutoTuning.Examples.Test_ATPIrelayNCdigital (sim) (wasm-jit)Compile → Simulate
MEVMEV.Simulations.LinearControl.Scenario1 (sim) (wasm-jit)Simulate performance 4.51 → 28.40
ModelicaTest_3.2.3ModelicaTest.Fluid.TestComponents.Machines.TestWaterPumpVariableSpeed (sim) (wasm-jit)Simulate → Verify
ModelicaTest_3.2.3ModelicaTest.Fluid.TestPipesAndValves.DynamicPipeClosingValve (sim) (wasm-jit)Verify → Compile
ModelicaTest_3.2.3ModelicaTest.MultiBody.Joints.JointUSP2 (sim) (wasm-jit)Verify → Compile
ModelicaTest_3.2.3ModelicaTest.Tables.CombiTimeTable.Test14 (sim) (wasm-jit)Compile → Verify
ModelicaTest_4.0.0ModelicaTest.Fluid.TestComponents.Machines.TestWaterPumpVariableSpeed (sim) (wasm-jit)Simulate → Verify
ModelicaTest_4.0.0ModelicaTest.Fluid.TestPipesAndValves.DynamicPipeClosingValve (sim) (wasm-jit)Verify → Compile
ModelicaTest_4.0.0ModelicaTest.MultiBody.Joints.JointUSP2 (sim) (wasm-jit)Verify → Compile
ModelicaTest_4.0.0ModelicaTest.Tables.CombiTimeTable.Test14 (sim) (wasm-jit)Compile → Verify
ModelicaTest_4.1.0ModelicaTest.Fluid.TestComponents.Machines.TestWaterPumpVariableSpeed (sim) (wasm-jit)Simulate → Verify
ModelicaTest_4.1.0ModelicaTest.Fluid.TestPipesAndValves.DynamicPipeClosingValve (sim) (wasm-jit)Verify → Compile
ModelicaTest_4.1.0ModelicaTest.MultiBody.Joints.JointUSP2 (sim) (wasm-jit)Verify → Compile
ModelicaTest_4.1.0ModelicaTest.Tables.CombiTimeTable.Test14 (sim) (wasm-jit)Compile → Verify
ModelicaTest_trunkModelicaTest.Fluid.TestComponents.Machines.TestWaterPumpVariableSpeed (sim) (wasm-jit)Simulate → Verify
ModelicaTest_trunkModelicaTest.Fluid.TestPipesAndValves.DynamicPipeClosingValve (sim) (wasm-jit)Verify → Compile
ModelicaTest_trunkModelicaTest.MultiBody.Joints.JointUSP2 (sim) (wasm-jit)Verify → Compile
ModelicaTest_trunkModelicaTest.Tables.CombiTimeTable.Test14 (sim) (wasm-jit)Compile → Verify
Modelica_3.2.3Modelica.Blocks.Examples.Rectifier12pulseFFT (sim) (wasm-jit)BackEnd performance 16.40 → 7.88
Modelica_3.2.3Modelica.Blocks.Examples.Rectifier6pulseFFT (sim) (wasm-jit)BackEnd performance 16.59 → 8.62
Modelica_3.2.3Modelica.Magnetic.QuasiStatic.FundamentalWave.Examples.BasicMachines.InductionMachines.IMC_YD (sim) (wasm-jit)Simulate → Verify
Modelica_4.0.0Modelica.Blocks.Examples.Rectifier12pulseFFT (sim) (wasm-jit)BackEnd performance 16.31 → 8.17
Modelica_4.0.0Modelica.Blocks.Examples.Rectifier6pulseFFT (sim) (wasm-jit)BackEnd performance 16.38 → 8.27
Modelica_4.1.0Modelica.Blocks.Examples.DemonstrateContinuousSignalExtrema (sim) (wasm-jit)Simulate → Verify
Modelica_trunkModelica.Blocks.Examples.DemonstrateContinuousSignalExtrema (sim) (wasm-jit)Simulate → Verify
OpenIPSL_2.0.0OpenIPSL.Examples.TwoAreas.Two_Areas_PSSE (sim) (wasm-jit)Simulate → Compile
PNlibPNlib.Examples.DisTest.TFDoutputConflict (sim) (wasm-jit)Verify → Simulate
PowerGridsPowerGrids.Electrical.Test.TestTapChangerLogicMax (sim) (wasm-jit)Simulate → Verify
PowerGrids_devPowerGrids.Electrical.Test.TestTapChangerLogicMax (sim) (wasm-jit)Simulate → Verify
PowerGrids_symb_jacPowerGrids.Electrical.Test.TestTapChangerLogicMax (sim) (wasm-jit)Simulate → Verify
ScalableTestSuiteScalableTestSuite.Electrical.DistributionSystemDC.ScaledExperiments.DistributionSystemModelicaActiveLoads_N_80_M_80 (sim) (wasm-jit)Simulate performance 8.65 → 15.67
ScalableTestSuite_nooptScalableTestSuite.Electrical.DistributionSystemAC.ScaledExperiments.DistributionSystemLinearIndividual_N_56_M_56 (sim) (wasm-jit)SimCode performance 13.38 → 7.32
TAeZoSysProTAeZoSysPro.HeatTransfer.Functions.ExchangerEffectiveness.Tests.test_counterCurrent (sim) (wasm-jit)Compile → Simulate
TAeZoSysPro_testsuiteTAeZoSysPro_testsuite.HeatTransfer.Functions.ExchangerEffectiveness.Inverse.test_NTU_counter (sim) (wasm-jit)Compile → Simulate
TAeZoSysPro_testsuiteTAeZoSysPro_testsuite.HeatTransfer.Functions.ExchangerEffectiveness.test_counterCurrent (sim) (wasm-jit)Compile → Simulate
ThermofluidStreamThermofluidStream.HeatExchangers.Tests.ElementTwoPhase (sim) (wasm-jit)Simulate performance 9.31 → 19.70
ThermofluidStreamThermofluidStream.Idealized.Tests.Processes.Adiabatic.Prescribed3 (sim) (wasm-jit)Verify → Simulate
ThermofluidStreamThermofluidStream.Idealized.Tests.Processes.Isobaric.Prescribed3 (sim) (wasm-jit)Simulate → Verify
ThermofluidStreamThermofluidStream.Idealized.Tests.Processes.Isochoric.Prescribed2 (sim) (wasm-jit)Simulate → Verify
ThermofluidStreamThermofluidStream.Idealized.Tests.Processes.PolytropicPerfectGas.Prescribed1and3Flow (sim) (wasm-jit)Verify → Simulate
ThermofluidStream_devThermofluidStream.HeatExchangers.Tests.ElementTwoPhase (sim) (wasm-jit)Simulate performance 9.92 → 18.57
ThermofluidStream_devThermofluidStream.Idealized.Tests.Processes.Adiabatic.Prescribed3 (sim) (wasm-jit)Verify → Simulate
ThermofluidStream_devThermofluidStream.Idealized.Tests.Processes.Isobaric.Prescribed3 (sim) (wasm-jit)Simulate → Verify
ThermofluidStream_devThermofluidStream.Idealized.Tests.Processes.Isochoric.Prescribed2 (sim) (wasm-jit)Simulate → Verify
ThermofluidStream_devThermofluidStream.Idealized.Tests.Processes.PolytropicPerfectGas.Prescribed1and3Flow (sim) (wasm-jit)Verify → Simulate

Models Only in One of the Runs

LibraryModelWhere