Matlab 客户端并发分布式任务支持
1. 引言
Matlab 是一款广受欢迎的交互式计算环境,为科学家提供了强大且易用的分析和可视化工具集。然而,它在处理计算密集型和内存密集型应用时存在性能局限,且单线程处理模型会使长时间运行的进程阻碍用户在计算期间执行其他任务。
为解决这些问题,我们探讨了一种在 Matlab 环境中进行远程并发任务执行的框架,通过将任务异步分配到专用的高性能计算服务器来解决上述不足。我们采用基于 Web 标准以及 Matlab 内置脚本和 Java 环境的客户端 - 服务器模型。
2. 现有方法分析
- 消息传递扩展 :一些项目通过扩展 Matlab 以支持消息传递,如使用 MPI 接口。
- 分布式系统和计算网格 :部分项目让 Matlab 能在分布式系统或计算网格中运行。
- 语法和函数重载 :像 pMatlab、Matlab*G 和 StarP 系统运用语法和函数重载来提供隐式的数据和任务并行性。
不过,这些方法大多仅在 Matlab 层面有效,难以对非 Matlab 例程进行并行化,且无法满足我们在分布式客户端 - 服务器环境中支持并发任务处理的需求。
3. 模型
我们的并发分布式系统基于标准的客户端 - 服务器模型,如下图所示:
graph LR
classDef process fill:#E
超级会员免费看
订阅专栏 解锁全文
32

被折叠的 条评论
为什么被折叠?



