PGP全盘encryption在服务器上的线程

我希望使用2010年份的四核至强服务器来定期encryption500GB eSATA硬盘。 我有三个问题:

1)我认为当前版本的WDE是完全multithreading的,吞吐量与内核数量大致呈线性关系?

2)我能否限制WDE进程使用的内核数量,以免影响服务器上的其他工作?

3)我应该预计每次encryption需要多长时间?

WDE的线程似乎存在着矛盾的信息,甚至在我也问过这个问题的PGP KB网站上(尽pipe这个问题几乎已经死了),因为很多旧的答案表明它没有提供。

假设您的eSATA硬盘可以提供接近标准的SATA速度,而您使用的是7200 RPM硬盘,那么在理想条件下,整个硬盘的维持速度可达80-100MB /秒。

我没有关于PGP的任何细节,但是对于2008年代的CPU(3Ghz Core Duo),每encryption100-150MByte / sec的AESencryption速度的基准很容易find[例如这个slashdot注释指示600-700Mhz一个2.13 Ghz Pentium M来处理30Meg /秒],而且我看到很多较老的CPU都有相似的速率,所以我把它作为基准。 鉴于您运行的CPU要比那些CPU要好得多,我毫不怀疑服务器上的单个内核可以轻松处理单个eSATA驱动器的最大吞吐量。

PGP WDE是基于块的,这将有助于吞吐量达到转换的速度,但是否实际上是真的取决于他们如何实现它,我不知道他们是否做得很好。 在任何情况下,您可以得到的最佳结果是以100Meg / sec的平均值(逐块逐个读取)完整读取驱动器,然后完整写入驱动器(按顺序逐块写入)。 对于一个500GB的驱动器,这将是1000秒或约17分钟。 这不会使服务器上的单个内核饱和,甚至可以为驱动器IO节省CPU开销。

概率的平衡是PGP WDE的转换algorithm不如我上面假设的那样有效地处理IO,所以encryption驱动器花费的时间将会大大延长 – 您将需要testing它是否确定,但是如果我不确定这是一个数量级慢,encryption任务的CPU开销也将成比例地降低。

最后一点要注意的是,如果您使用的是Westmere类CPU(Xeon 56xx),那么PGP WDE 支持新的AES-NI指令 ,这些指令的实际性能会提升50%以上 – 请参阅Toms硬件文章,其中介绍了Bitlocker但是PGP WDE的好处至less应该是一样的。

编辑添加:
我觉得在上面我不太清楚 – 就转换单个驱动器而言,multithreading不会帮助你。 如果您计划并行运行多个驱动器,则可能会有所帮助,但除非您拥有可同时处理多个驱动器的硬件,否则驱动器的IO限制将比CPU利用率显着更大的瓶颈。 在networking上[ 这里和这里例如]关于转换速度的传闻证据范围从25到50GB每小时 – 我期望一个体面的eSATA驱动器比这些例子更快,但它似乎不太可能会好得多每小时100GB。

最后还有一个非常好的关于磁盘encryption的CPU开销的讨论,在这篇PGP博客文章的评论中强调了CPU不是主要的瓶颈,Read \ Write的延迟是主要的问题。

在Google上的一些明显的search没有得出任何关于这个特定产品的疑问的答案,所以这里是一个估计:

1)不知道如果PGP是multithreading的,但是如果是这样的话,你应该期望每个额外的核心/ CPU的处理增加50-80%。 4核心只能为某些非常非常特定的工作负载提供400%的性能 – 并且等待来自需要写回的磁盘的数据不在其中。

2)任务pipe理器可以让你设置正在运行的进程的CPU优先级,所以至less有一个选项。

3)我强烈怀疑会有很less的开销。 任何最近的Xeon CPU都可以比一些随机机械磁盘可以通过USB 2.0写入更快的encryption。 究竟是哪个CPU? 您可以在这里看到哪些硬件支持encryption(AES-NI):

http://en.wikipedia.org/wiki/Xeon

如果您有能力更换工具,请查看Truecrypt

1)Truecrypt高度并行化,线性扩展

2)您可以指定要使用的核心数量

3)至于速度,取决于你如何连接驱动器,你可以备用的核心数量,使用的encryptionalgorithm等等。考虑到你的硬件,磁盘io可能是瓶颈,即使是sata连接。 但下载它并运行基准testing,或者encryption一个驱动器,看看自己。 (有一个便携式模式,所以你甚至不需要安装它)。