高性能Excel计算
时间:2009-01-26 21:07:09
作者:officeba 【认证】
不久前,微软Windows Compute Cluster Server 2003的团队公开发布自己的产品。什么是“ Windows计算集群服务器” ?大量信息可在这里,但是,借用一条线从他们的网站上,微软Windows Compute Cluster Server 2003的是“一个综合的,基于标准的计算集群平台建立在Windows Server 2003 x64版” 。的目标,这项工作是“使用户” ,让他们“很容易地利用分布式计算资源来解决复杂的问题” 。这里是位详情从某人的计算集群队:
一些细节的Windows Compute Cluster Server 2003的
的Windows Compute Cluster Server 2003的汇集的力量,商品64位( 64位x86 )的计算机上,易用性和安全性的Active Directory目录服务和Windows操作系统提供一个安全的和可负担得起的高性能计算( HPC )解决方案。的Windows Compute Cluster Server 2003的可以很容易地和迅速地部署使用标准的Windows部署技术,并增加计算节点可以添加到计算集群只要堵在节点和连接。的Windows Compute Cluster Server 2003的,包括其工作安排,部署,管理能力和能力利用高速互连。
调度工作的组成部分允许工作离散活动安排进行的计算集群。乔布斯可以很简单:将一个单一的任务或可多种任务。在某些情况下,任务是串行,运行单一程序;在其他情况下,他们是平行的,运行在多个intercommunicating进程。在任何情况下,订货的任务,工作可能是任意的,或它可能确定的依赖关系的任务。此外,工作和任务可以针对特定节点群集。节点可以专供工作或任务,也可以分担的工作和任务。
Excel的团队一直与Windows计算集群服务器团队的一对夫妇的情景。我想与大家分享其中之一今天, (和,因为它最近的一个组成部分基调演示在TechEd上,您得到的视频流过) 。在以后的帖子,我会谈谈第二个案例。
基本思路是,有人建立了一个工作簿中使用了大量的用户定义函数(的UDF ) ,要求关闭盒来计算,每个函数调用是合理的资源密集型的,因此该工作簿作为一个整体来计算缓慢,一对夫妇的潜在原因。首先, Excel 2003中(或更早)的计算是单线程,所以只有一个的UDF可以称为一次。其次,如果实际运行中的UDFs接近能力,它可以作为一个瓶颈。
如果工作簿是一种特定类型(例如,风险价值计算) ,就不可能有巨大的商业价值,具有更快的计算方法。正如在先前的讨论后,在多线程的工作我们已经做了Excel中的计算速度将帮助了很多,让多个UDFs被称为同时进行。然而,在上述情况下,也有利于更多的计算能力在UDFs正在计算。这是一个很好的设想了Windows Compute Cluster Server 。
为了让事情快得多,你可以做什么(假设你的Excel 2007年和计算集群设立)是您的UDF部署到群集,然后使用一个XLL至(基本上是-我简化了一点点-和我们将提供的代码示例在某个时候)调用的UDF丛集上使用适当的参数。如果您关闭了一些Excel使用线程计算(对等于或超过了多台机器,您在您的群集) ,您就可以,实际上使大量的UDF呼吁从Excel到群集同时,该组将计算并返回到Excel 。例如,如果你有一个64路集群,而且请你告诉Excel中使用64 +线程计算,您将看到的UDF部分您的Excel计算速度增长的一个因素近64 。在某些行业,这是非常令人兴奋的...我们看到了很大的兴趣在这方面的工作从金融服务行业的例子。