主要内容

Simulink®Reim-Time™上的并发执金宝app行

此示例显示了如何应用显式分区,以增强通过使用Simulink实时生成的实时应用程序的并发执行。金宝app

金宝appsimulink实时支持通过金宝app使用模型的隐式分区或显式分区来支持并发执行。此示例显示了模型子系统中的任务的显式分区与使用Simulink实时分析工具的执行之间的关系。金宝app

示例模型slrt_ex_mds_and_tasks.以0.001秒的样品速率运行。

要使用调整后的采样率运行模型,请在运行示例之前更改样品额定值。在MATLAB命令窗口中,键入:

ts = 0.01;

打开,构建和下载模型

顶级模型中的显式分区发生在子系统1中。

open_system(fullfile(matlabroot,'工具箱''slrealtime''例子''slrt_ex_mds_subsystem1'));

顶级模型中的显式分区发生在子系统2中。

open_system(fullfile(matlabroot,'工具箱''slrealtime''例子''slrt_ex_mds_subsystem2'));

打开模型slrt_ex_mds_and_tasks.。该模型映射到七个线程:model1_r1.model1_r2.model1_r3.model1_r4.model2_r1.model2_r3., 和model2_r4.

这些线程以采样率运行TS.2 * TS3 * TS4 * TSTS.3 * TS, 和4 * TS

mdl ='slrt_ex_mds_and_tasks';open_system(fullfile(matlabroot,'工具箱''slrealtime''例子',mdl));

要在Simulink编辑器中应用显式分区,请参阅金宝app即时的选项卡,单击硬件设置,然后选择求解器>配置任务。选择任务和映射节点。

构建,下载和运行模型。

set_param(mdl,'rtwverbose''离开');SLBUILD(MDL);tg = slrealtime;负载(TG,MDL);%打开Tet监视器slrttetmonitor;%启动目标计算机上的ProfilerStartProfiler(TG);开始(TG);暂停(2);停止(TG);
###开始串行模型参考模拟模拟构建### SLRT_EX_MDS_SUBSYSTEM1的模型参考仿真目标是最新的。### SLRT_EX_MDS_SUBSYSTEM2的模型参考仿真目标是最新的。###启动串行模型参考代码生成Build ###成功完成构建过程:SLRT_EX_MDS_SUBSYSTEM1 ###成功完成构建过程:SLRT_EX_MDS_SUBSYSTEM2 ###生成的“SLRT_EX_MDS_AND_AND_AND_ANDSK”的代码是最新的,因为没有结构,参数或找到代码替换库更改。###成功完成构建过程:SLRT_EX_MDS_AND_TASKS ###创建MLDATX .. \ SLRT_EX_MDS_AND_TASKS.MLDATX构建摘要0中构建的3个模型(已最新的3个型号)构建持续时间:0H 0M 14.687S

显示分析数据

分析数据显示了多核目标计算机上每个线程的执行时间。

profdata = tg.getprofilerdata;Profdata.plot;
处理目标计算机上的数据...从目标计算机传输数据...处理主机上的数据...

查看模型在Tet Monitor上的Tet信息

关闭模型

bdclose('全部');