开发区域

高级软件开发与MATLAB

从MATLAB命令提示符到云

当我把目光从头顶的灰色云朵上移开时,一个熟悉的MATLAB命令提示符闪烁的光标向我致意。很高兴今年在加州得到了我们应得的降水。

一个更有趣的云是软件世界经常使用的流行词全方位这个术语是一种模糊墨迹,对不同的人来说,根据他们的个人经历、背景、技能等意味着不同的东西。

在这篇文章中,我提供了我的观点,试图揭开这项技术的神秘面纱,并通过一个试图利用基于云技术的进步的MATLAB开发人员的眼睛来看待它。

为了加深我们对云的理解,通过将其大致分类为以下类别来讨论为其提供动力的技术是很有用的私有的公共云产品。私有云是安装在计算机网络中的软件堆栈,可以是本地或私有数据中心。另一方面,公共云是由供应商管理的资源,这些供应商将其作为服务提供给付费公众。

这就引出了一个问题——这个软件堆栈,私有的还是公有的,实际上是做什么的?这是一个精明的问题,只能这样回答……“嗯,这取决于”。

提供X作为服务(X =无关紧要)

在最基本的层次上,虚拟化软件允许用户提供计算机并将它们连接在一起,以构建必要的计算、存储和网络基础设施来解决问题。不像修补玩具或砌砖头——只是软件版本。即使在这个层次上,对MATLAB用户的类比也应该很明显。

MathWorks大量的工具箱、区块集和技术组合提供了一个强有力的类比。我们是五金店。我们不卖厨房,但提供木材、工具、服务和几乎所有你需要的东西,在一个屋檐下,建造你梦想中的厨房。

利用云服务的真正价值在于,它使it组织能够支持工程师和科学家做他们通常做的事情,通常是在科学和工程的前沿。万博1manbetx这些虚拟化资源具有各种各样的配置、电源和专用功能(如gpu)。

这种访问最常被称为将基础设施作为服务提供(IaaS). 如果这些资源与预装软件一起提供,那么它们通常只需点击几下即可开箱即用。这通常被称为将平台作为服务提供(PaaS). 最后,可以隐藏基础设施,只提供安装在其中的软件作为服务(SaaS)

对MATLAB用户的影响

现在,从MATLAB的角度来看,所有这些虚拟化资源与当前运行MathWorks产品的计算机和网络没有什么区别s manbetx 845MATLABMATLAB分布式计算服务器MATLAB生产服务器等等。或者更简单地说,如果您希望利用云基础设施(IaaS),那么我们的产品可以而且将适合您。s manbetx 845

一次点击就可以获得所有这些计算、存储和网络资源的一个分支是规模快速而容易地向上或向下。

在可伸缩性

唉,这个词规模往往是模糊的,过度使用和模棱两可的词. 从MATLAB开发人员的角度来看,大多数问题规模在里面一个或多个三维。

大多数常见问题都可以沿着这些轴进行分解,并使用一个或多个软件工具堆栈来处理。

MATLAB的并行访问缩放

MATLAB生产服务器设计用于处理并发负载。它经过基准测试,每秒可以处理数千个请求。这使得能够访问MATLAB算法作为低延迟事务,这些事务在高性能平台上运行,该平台可以优雅地扩展到深度(使用更大、更强大的硬件)和广度(如果需要,使用跨多台机器的负载平衡器)。

我有以前也写过与一个一些互动演示对互联网和本博客的读者开放。

缩放MATLAB计算

有些问题需要数分钟、数小时甚至更长时间的计算。MATLAB代码开始作为一个单一的进程在一个计算机的单核上,可以扩大到利用该机器的所有CPU和GPU资源并行计算工具箱从那里,向上到云端,提供用于Amazon EC2的MATLAB分布式计算服务器.的MathWorks云中心是一个提供简单配置和访问基于云的资源(PaaS)的平台示例。

您使用的是不同的云供应商吗?解决方案的核心是一个MathWorks产品,您可以在您选择的云供应商提供的基础设施上配置它。

MATLAB分布式计算服务器(mdc)接受交互开发MATLAB代码和并行性计算在许多节点暴露所有的好的互动桌面特性,比如现场编辑利用并行执行批量的形式,就业和跨集群访问分布式内存的机器。

缩放MATLAB处理大数据问题

有没有人关注公众对这个问题的讨论大数据将认识到正在出现的处理涉及大量数据的问题的技术的令人困惑的字母汤。

这场革命的核心是一个相当简单的想法。随着数据向上扩展,它首先变得“太大,无法放入电子表格”。大多数经验丰富的MATLAB用户都会知道,MATLAB仍然能够顺利地处理这些问题。

在进一步增长时,数据变得太大,无法装入一台计算机的处理器和内存。此时,计算机将允许访问计算机集群的综合能力(提示:MDC)。最终,数据增长到无论集群大小如何都无法通过网络容纳的大小。此时,将程序移动到数据中要比将数据切片并尝试将其移动到计算资源中容易得多。有一些软件框架可以帮助进行切片/骰子和存储操作。向Hadoop、MapReduce和Spark问好。

简单的想法是数据可以正确分布,算法可以移动到静止的数据。或者正如弗朗西斯·培根(Francis Bacon)所说,“如果这座山不会来到MATLAB,那么MATLAB必须走向这座山”。

我可以继续揭开这些软件栈的神秘面纱,但现在只要注意到MathWorks产品运行良好就足够了。s manbetx 845我们的分布式计算产品和编译器产品都采用了这些框架,并提供了s manbetx 845开箱即用的收缩包装功能。

万博1manbetx语言语义的支持

这种处理大万博1manbetx数据问题的支持向下扩展到语言语义,使用诸如数据存储高大的数组,等等利用Apache Spark等底层技术

基于云的存储产品,如s manbetx 845MATLAB开车提供对数据的访问,作为一个托管解决方案,工作在多个设备。或者,如果您的数据在Simple Storage Service (S3)等产品中,那么数据存储等语言构造提供了跨MATLAB的数据连接,分布式计算应用程序部署s manbetx 845产品。

如果您是一名开发人员,希望将MATLAB桌面体验作为一项服务,那么您一定要检查MATLAB在线提供MATLAB旗舰软件即服务(SaaS)。

仿真软件呢?万博1manbetx

在我们最新的R2017a版本中,万博1manbetx用户可以利用诸如parsim这可以将基于并行云的模拟能力引入到基于模型的设计工作流中。这些方法利用MATLAB分布式计算服务器等产品来扩展s manbetx 845Simulink仿真。万博1manbetx

与供应商无关的功能具有特定于供应商的便利性

最知名的公共云供应商是亚马逊的Web服务(AWS),微软的Azure和谷歌云平台。我们的客户是他们已经成功地利用云技术来扩展他们的研究和生产流程

如果有什么你应该从这篇文章中得到的,那就是如果你的未来看起来不明朗(双关语),MathWorks可以帮助你!

请使用评论,并让我们知道这其中的任何共鸣,以及这一系列技术中的哪一部分是更有深度的兴趣。




与MATLAB®R2017a一起发布

|
  • 打印
  • 发送电子邮件

评论

要留下评论,请点击在这里登录到您的MathWorks帐户或创建一个新帐户。