-2

这个问题是软件和硬件相关问题的混合体。

我有一个使用 VS2010 用 c 语言编写的自定义应用程序,它需要一些高端硬件(该应用程序需要每分钟咬住大约 50 GB 的数据)。它在 64 位 Win 7 下运行。现在我有一个带有双氙气 5690 芯片(每个十六进制核心)的戴尔 t7500,所以有 12 个物理核心和 24 个逻辑核心。该设置有 48 gig 的 ram,它需要它,因为该应用程序一次使用大约 30-40 gig 的数据。

该应用程序是多线程的(很高兴看到所有 24 个逻辑核心都以 100% 最大化!),所以事情已经从 cpu-bound 变成了 io-bound。(在我将应用程序重写为多线程之前,数据回载大约需要 36 小时;现在大约需要 1.5 小时,但我仍然需要将其缩短到 15 分钟以下)。

我能够修改软件,以便它可以利用多驱动器配置。

我可以在 24 个核心之间拆分 io 工作。我需要大约 3 TB 的存储空间。最好的方案,虽然不切实际,是拥有 48 个独立的 SSD,以便运行的 24 个线程中的每一个都有自己的专用驱动器用于读取和写入吗?(该应用程序不会执行大量小文件读取/写入操作;相反,它会读取/写入 1-2 GB 的块。)

假设在一个系统上获得那么多驱动器是不可能的,那么就驱动器数量而言,这种设置的限制是什么?我在 t7500 主板上有 5 个插槽。什么样的控制器/配置在这里最快?SATA?SCSI?突袭0?
还是我可以在软件中做一些事情来让很多硬件问题变得不那么重要?谢谢。

4

1 回答 1

0

我发现您可以使用许多可拆卸的 3tb USB 驱动器。

于 2011-11-30T04:23:07.690 回答