为那些没有devise的应用程序分配处理

我们已经得到了应用程序的工作,并对一些数据文件进行了一系列迭代处理来执行一些仿真。 这是由一个“旧”的Win32应用程序不是多处理器的意识,所以新(ISH)电脑和工作站大多坐在这个应用程序的空闲运行。

但是,由于它是由一个典型的Windows Install Shield安装程序安装的,我似乎无法安装和运行应用程序的多个副本。

工作可以在处理之前手动分解,使工作分布在多台机器上,但是我们仍然不能利用多个核心CPU。 处理后的结果可以连接在一起进行完整的模拟。

有没有一个产品可以让我“分隔”一个安装(或4个),这样我就可以利用多核CPU? 我曾经想过使用MS Softgrid,但是我认为仍然依赖于远程服务器来完成繁重的工作(尽pipe如果我错了,请纠正我)。

此外,有没有办法将工作量分配到一台机器上? 所以一个input可以被分成50块,分发给50台机器,然后继续工作?

所有没有真正改变最初的应用程序?

在一个完美的世界中,我将获得应用程序来利用DesktopGrid(BOINC),但是像大多数“任务关键型企业应用程序”一样,需求就在那里,但钱却不是。

预先感谢您(如果这不适合serverfault,则表示抱歉)。

长话短说,如果这个过程不是多处理器或分布式计算,那么你不能自己做。

您可以使用简单的虚拟化(Virtual PC,VMWare的桌面产品)在同一个硬件上“并排”运行多个副本,但这不会是“多处理器意识”或“分布式”计算,而是几个完全分离的在不同的工作队列上工作的进程。 从你的post很难说,但我认为这可能是你想要做的一切。

你可能会得到更好的堆栈溢出的帮助 – 基本上你想要做的是安装软件的N个副本,并写一个“前端”来承担这个工作量,把它分成N个部分,并把它交给孤立的“后端“程序的副本(自动化您描述的手动部门)。

实际的实现(独立安装和前端)取决于你的软件是如何写入的。 另外,如果您的工作需要重新整合(您有4块需要成为一块),那么定制前端也必须足够聪明才能做到这一点。

你说过你不能安装多个软件副本,但你可以运行多个软件副本吗? 我想,你不应该做前者才能做后者。 如果软件中的某些内容阻止了多个正在运行的副本,则可以使用资源编辑器来修改EXE以删除或绕过该限制。