Matlab 2007b(7.5)开始支持Distributed Computing

上一篇 / 下一篇  2008-03-24 22:55:06 / 个人分类:EDA软件相关

Controlling Multithreading

With Release R2007b, you now have the ability to set (and get) the maximum number of allowed threads. What does this mean for you?

Contents

The Skinny on maxNumCompThreads

Here's some pertinent information about maxNumCompThreads.

  • maxNumCompThreads allows you to programmatically control the maximum number of computational threads that MATLAB uses.
  • Unlike the setting from the preferences panel, this setting does not persist between MATLAB sessions.
  • maxNumCompThreads controls both the JIT and BLAS, meaning both element-wise and matrix operations. Since the JIT doesn't operate at the command line, maxNumCompThreads only affects element-wise computations performed from M-files.
  • The 'automatic' setting is designed to take best advantage of the hardware the program is currently running on.
  • Not all operations run with the maximum number of computational threads. When MATLAB uses fewer than the maximum, it's avoiding the overhead of threading which can dominate certain operations, for example, matrix multiplication for 2x2 matrices.
  • Currently, only a subset of functions that could benefit from multithreading are taking advantage of it. We will expand this list with each upcoming release.

When to Use maxNumCompThreads

The main message here is that you should not generally need to use this function at all! Why? Because we'd like to make MATLAB do the best job possible for you. However, there are some situations where the use of maxNumCompThreads is merited.

  • Benchmarking - This needs to be done with care. For example, as I mentioned earlier, matrix multiplication doesn't use multiple threads for 2x2 matrices since the thread overhead dominates the numerical work that's being done. Be sure to test a variety of sizes to characterize your results.
  • If you notice some slowdown in code that was previously running faster, you can programmatically reduce maxNumCompThreads and then restore the maxNumCompThreads value when the calculation is finished.

If You Find a Performance Issue...

Please let us know if you encounter a situation in which setting maxNumCompThreads manually is necessary for better performance, by contacting Technical Support. It is our intention that you should not need to use maxNumCompThreads and it will help us to improve the code if you notify us of such situations.

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

maxNumCompThreads - Controls maximum number of computational threads

Syntax

N = maxNumCompThreads
LASTN = maxNumCompThreads(N)
LASTN = maxNumCompThreads('automatic')

Description

N = maxNumCompThreads returns the current maximum number of computational threads N.

LASTN = maxNumCompThreads(N) sets the maximum number of computational threads to N, and returns the previous maximum number of computational threads, LASTN.

LASTN = maxNumCompThreads('automatic') sets the maximum number of computational threads using what MATLAB determines to be the most desirable. It additionally returns the previous maximum number of computational threads, LASTN.

Currently, the maximum number of computational threads is equal to the number of computational cores on your machine.

    Note   Unlike enabling multithreading using the Preferences panel, setting the maximum number of computational threads using maxNumCompThreads will not propagate to your next MATLAB session.

 

 

The MathWorks集成工具将Simulink模型分配到多个处理器
关键字: 脚本 代码 图形 输出

使用 SystemTest 2,工程师可以充分利用高性能计算能力加速系统仿真和测试

美国马萨诸塞州内蒂克市(NATICK, Mass.)– 2007年11月12日 – The MathWorks 今天宣布推出新版本的 SystemTest,一个用于系统验证和检验的测试管理和分析软件。

工程师现在无需手工编码即可自动将 Simulink 模型的独立测试或仿真运行分配到多个处理器,因为 SystemTest 2 可以无缝地配合Distributed Computing Toolbox (分布式计算工具箱, The MathWorks的另一款产品)进行工作。SystemTest 2 的功能增强极大地减少了测试所需的时间,从而可以更快地生产出高质量的系统设计。

SystemTest 2 特别适用于运行多个 Simulink 模型迭代的工程师。 以前,为了利用多处理器环境的计算能力,这些工程师需要手工编写脚本代码来将 Simulink 测试案例分配到每个处理器,这是一个耗时而又容易出错的过程。

使用 SystemTest 2 和Distributed Computing Toolbox,用户通过一个简单的图形用户界面即可自动将 Simulink 测试分配到最多四个同时 Simulink 会话的机器上。 拥有MATLAB? Distributed Computing Engine(MATLAB? 分布式计算引擎)的工程师通过同一个简单界面,就可以充分利用一个计算机集群中的多个处理器。 通过将测试案例分配到多个处理器和去掉手工编码工作,整体测试得以更快、更准确地执行。

The MathWorks验证、检验和测试技术营销经理 Brett Murphy 表示:“近年来,多核、多处理器技术突飞猛进,为工程师和系统设计师提供了巨大的机会,让他们能够找到有效的方法来挖掘其潜力。使用 SystemTest 2,我们能使客户将计算集群能力应用于验证和检验工作,从而让他们摆脱处理器数量的限制,取得时间和质量上的利益。”

SystemTest 2 中的分布式计算功能构筑可以开发和执行针对 MATLAB 算法和 Simulink 模型测试的工具功能之上。 SystemTest 2为工程师提供了一个建立和执行测试、管理输入/输出数据和分析结果的框架,此工具可以有效地分析多维数据集,为设计师提供一个正在测试系统的完整画面。 SystemTest 2 还提供了重新加载仿真结果和测量序列以进一步分析和对比的能力。

可用性

SystemTest 2 适用于Microsoft Windows, Linux, and Macintosh 平台。


TAG: ability Computing Distributed get Matlab

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar