Skip to content

Commit 17f9da8

Browse files
upradhan93vramanatMW
authored andcommitted
R2026a release!
1 parent 3bc6977 commit 17f9da8

7 files changed

Lines changed: 39 additions & 1314 deletions

File tree

packer/v1/release-config/R2026a.pkrvars.hcl

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,13 @@ BUILD_SCRIPTS = [
3131
"Initialize-MATLAB.ps1",
3232
"Initialize-Polyspace.ps1",
3333
"Optimize-MATLAB.ps1",
34-
"Remove-IE.ps1",
3534
"Disable-Popups.ps1"
3635
]
3736
PRODUCTS = "5G_Toolbox AUTOSAR_Blockset Aerospace_Blockset Aerospace_Toolbox Antenna_Toolbox Audio_Toolbox Automated_Driving_Toolbox Bioinformatics_Toolbox Bluetooth_Toolbox C2000_Microcontroller_Blockset Communications_Toolbox Computer_Vision_Toolbox Control_System_Toolbox Curve_Fitting_Toolbox DDS_Blockset DSP_HDL_Toolbox DSP_System_Toolbox Database_Toolbox Datafeed_Toolbox Deep_Learning_HDL_Toolbox Deep_Learning_Toolbox Econometrics_Toolbox Embedded_Coder Financial_Instruments_Toolbox Financial_Toolbox Fixed-Point_Designer Fuzzy_Logic_Toolbox GPU_Coder Global_Optimization_Toolbox HDL_Coder HDL_Verifier Image_Acquisition_Toolbox Image_Processing_Toolbox Industrial_Communication_Toolbox Instrument_Control_Toolbox LTE_Toolbox Lidar_Toolbox MATLAB MATLAB_Coder MATLAB_Compiler MATLAB_Compiler_SDK MATLAB_Parallel_Server MATLAB_Report_Generator MATLAB_Test MATLAB_Web_App_Server Mapping_Toolbox Medical_Imaging_Toolbox Mixed-Signal_Blockset Model_Predictive_Control_Toolbox Motor_Control_Blockset Navigation_Toolbox Optimization_Toolbox Parallel_Computing_Toolbox Partial_Differential_Equation_Toolbox Phased_Array_System_Toolbox Powertrain_Blockset Predictive_Maintenance_Toolbox RF_Blockset RF_PCB_Toolbox RF_Toolbox ROS_Toolbox Radar_Toolbox Reinforcement_Learning_Toolbox Requirements_Toolbox Risk_Management_Toolbox Robotics_System_Toolbox Robust_Control_Toolbox Satellite_Communications_Toolbox Sensor_Fusion_and_Tracking_Toolbox SerDes_Toolbox Signal_Integrity_Toolbox Signal_Processing_Toolbox SimBiology SimEvents Simscape Simscape_Battery Simscape_Driveline Simscape_Electrical Simscape_Fluids Simscape_Multibody Simulink Simulink_3D_Animation Simulink_Check Simulink_Coder Simulink_Compiler Simulink_Control_Design Simulink_Coverage Simulink_Design_Optimization Simulink_Design_Verifier Simulink_Desktop_Real-Time Simulink_Fault_Analyzer Simulink_PLC_Coder Simulink_Real-Time Simulink_Report_Generator Simulink_Test SoC_Blockset Stateflow Statistics_and_Machine_Learning_Toolbox Symbolic_Math_Toolbox System_Composer System_Identification_Toolbox Text_Analytics_Toolbox UAV_Toolbox Vehicle_Dynamics_Blockset Vehicle_Network_Toolbox Vision_HDL_Toolbox WLAN_Toolbox Wavelet_Toolbox Wireless_HDL_Toolbox Wireless_Testbench Wireless_Network_Toolbox Simulink_FMU_Builder Raspberry_Pi_Blockset STM32_Microcontroller_Blockset"
3837
POLYSPACE_PRODUCTS = "Polyspace_Bug_Finder Polyspace_Bug_Finder_Server Polyspace_Code_Prover Polyspace_Code_Prover_Server Polyspace_Test"
3938
SPKGS = "Deep_Learning_Toolbox_Model_for_AlexNet_Network Deep_Learning_Toolbox_Model_for_EfficientNet-b0_Network Deep_Learning_Toolbox_Model_for_GoogLeNet_Network Deep_Learning_Toolbox_Model_for_ResNet-101_Network Deep_Learning_Toolbox_Model_for_ResNet-18_Network Deep_Learning_Toolbox_Model_for_ResNet-50_Network Deep_Learning_Toolbox_Model_for_Inception-ResNet-v2_Network Deep_Learning_Toolbox_Model_for_Inception-v3_Network Deep_Learning_Toolbox_Model_for_DenseNet-201_Network Deep_Learning_Toolbox_Model_for_Xception_Network Deep_Learning_Toolbox_Model_for_MobileNet-v2_Network Deep_Learning_Toolbox_Model_for_Places365-GoogLeNet_Network Deep_Learning_Toolbox_Model_for_NASNet-Large_Network Deep_Learning_Toolbox_Model_for_NASNet-Mobile_Network Deep_Learning_Toolbox_Model_for_ShuffleNet_Network Deep_Learning_Toolbox_Model_for_DarkNet-19_Network Deep_Learning_Toolbox_Model_for_DarkNet-53_Network Deep_Learning_Toolbox_Model_for_VGG-16_Network Deep_Learning_Toolbox_Model_for_VGG-19_Network"
4039
NVIDIA_DRIVER_INSTALLER_URL = "https://us.download.nvidia.com/tesla/591.59/591.59-data-center-tesla-desktop-winserver-2022-2025-dch-international.exe"
41-
PYTHON_INSTALLER_URL = "https://www.python.org/ftp/python/3.10.5/python-3.10.5-amd64.exe"
40+
PYTHON_INSTALLER_URL = "https://www.python.org/ftp/python/3.14.4/python-3.14.4-amd64.exe"
4241
IMAGE_PUBLISHER = "MicrosoftWindowsServer"
4342
IMAGE_OFFER = "WindowsServer"
44-
IMAGE_SKU = "2022-Datacenter"
43+
IMAGE_SKU = "2025-Datacenter"

packer/v1/runtime/mwplatforminterfaces/mwplatforminterfaces/os_interface.py

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -144,10 +144,19 @@ def stop_workers_on_nodes(self, nodes_hostnames: Set[str]) -> Set[str]:
144144
Returns:
145145
nodes_stopped (Set[str]): Hostname of nodes that were stoppped.
146146
"""
147+
if not nodes_hostnames:
148+
return set()
149+
147150
hostnames = list(nodes_hostnames)
148-
tasks = [self._stop_workers_on_node(host) for host in hostnames]
151+
152+
async def _run():
153+
# async function to be wrapped under asyncio.run(). asyncio.gather()
154+
# needs a requires a running event loop to schedule the coroutines.
155+
# Using this wrapper with run() ensures that the loop is created first
156+
tasks = [self._stop_workers_on_node(host) for host in hostnames]
157+
return await asyncio.gather(*tasks, return_exceptions=True)
149158

150-
results = asyncio.get_event_loop().run_until_complete(asyncio.gather(*tasks))
159+
results = asyncio.run(_run())
151160

152161
# Make sure the workers actually stopped.
153162
current_hosts = self.get_worker_nodes()
@@ -157,6 +166,7 @@ def stop_workers_on_nodes(self, nodes_hostnames: Set[str]) -> Set[str]:
157166
for host, status in zip(hostnames, results)
158167
if status and (host not in current_hosts)
159168
}
169+
160170
return nodes_stopped
161171

162172
def is_mjs_running(self) -> bool:
@@ -334,10 +344,20 @@ def _get_workergroups_statuses(self, nodes_hostnames: Set[str]) -> Dict[str, str
334344
workergroup_status (Dict[str, str]): Mapping between hostname
335345
and status.
336346
"""
347+
# Return early if no hostnames provided
348+
if not nodes_hostnames:
349+
return {}
350+
337351
hostnames = list(nodes_hostnames)
338-
tasks = [self._get_workergroup_status(host) for host in hostnames]
339352

340-
results = asyncio.get_event_loop().run_until_complete(asyncio.gather(*tasks))
353+
async def _run():
354+
# async function to be wrapped under asyncio.run(). asyncio.gather()
355+
# needs a requires a running event loop to schedule the coroutines.
356+
# Using this wrapper with run() ensures that the loop is created first
357+
tasks = [self._get_workergroup_status(host) for host in hostnames]
358+
return await asyncio.gather(*tasks, return_exceptions=True)
359+
360+
results = asyncio.run(_run())
341361

342362
statuses = {host: status for host, status in zip(hostnames, results)}
343363

releases/R2026a/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Click the **Deploy to Azure** button below to deploy the cloud resources on Azur
66

77
<a href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fmathworks-ref-arch%2Fmatlab-parallel-server-on-azure%2Fmaster%2Freleases%2FR2026a%2Fazuredeploy-R2026a.json" target="_blank"><img src="https://aka.ms/deploytoazurebutton"/></a>
88

9-
> Cluster Platform: Windows Server 2022
9+
> Cluster Platform: Windows Server 2025 (MATLAB R2026a), Windows Server 2022 (MATLAB R2025b and earlier)
1010
1111
> MATLAB&reg; Release: R2026a
1212

releases/R2026a/azuredeploy-R2026a.json

Lines changed: 12 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -295,10 +295,6 @@
295295
"startPort": 27350,
296296
"finalPort": "[add(variables('startPort'), variables('totalPorts'))]",
297297
"storageAccountName": "[concat('mwstorage', variables('resourceGroupUniqueString'))]",
298-
"storageAccountSku": {
299-
"name": "Premium_LRS",
300-
"tier": "Premium"
301-
},
302298
"userDataScript": [
303299
"# Copyright 2023-2026 The MathWorks, Inc.",
304300
"",
@@ -419,37 +415,18 @@
419415
}
420416
},
421417
{
422-
"type": "Microsoft.Storage/storageAccounts",
423-
"apiVersion": "2025-06-01",
424-
"name": "[variables('storageAccountName')]",
425-
"location": "[resourceGroup().location]",
426-
"tags": "[variables('tagsForAll')]",
427-
"sku": "[variables('storageAccountSku')]",
428-
"kind": "FileStorage",
429-
"properties": {
430-
"dnsEndpointType": "Standard",
431-
"defaultToOAuthAuthentication": false,
432-
"publicNetworkAccess": "Enabled",
433-
"allowCrossTenantReplication": false,
434-
"minimumTlsVersion": "TLS1_2",
435-
"allowBlobPublicAccess": false,
436-
"allowSharedKeyAccess": true,
437-
"largeFileSharesState": "Enabled",
438-
"networkAcls": {
439-
"bypass": "AzureServices",
440-
"defaultAction": "Allow"
441-
},
442-
"supportsHttpsTrafficOnly": false,
443-
"encryption": {
444-
"requireInfrastructureEncryption": false,
445-
"services": {
446-
"file": {
447-
"keyType": "Account",
448-
"enabled": true
449-
}
450-
},
451-
"keySource": "Microsoft.Storage"
452-
}
418+
"type": "Microsoft.Storage/storageAccounts",
419+
"apiVersion": "2025-06-01",
420+
"name": "[variables('storageAccountName')]",
421+
"location": "[resourceGroup().location]",
422+
"sku": {
423+
"name": "Standard_LRS"
424+
},
425+
"kind": "StorageV2",
426+
"properties": {
427+
"minimumTlsVersion": "TLS1_2",
428+
"allowBlobPublicAccess": false,
429+
"supportsHttpsTrafficOnly": true
453430
}
454431
},
455432
{

0 commit comments

Comments
 (0)