OCR 处理需要时间。使用多个 CPU 核心可以加快处理速度。Acrobat 10不是多线程应用程序. Acrobat 11 怎么样?默认情况下,11 是否使用多个 CPU 核心(如果可用)进行 OCR?如果不是,是否有任何变通方法(例如脚本)来帮助 Acrobat 11 使用多个 CPU 核心进行 OCR?无论是通过 Acrobat 的内置脚本语言,还是使用外部脚本启动并指导 Acrobat 的多个单线程实例并行处理作业的各个部分。
注意:这个问题不是太过局部化(不限于特定的时间点),因为(1)Adobe 并不经常发布新的主要 Acrobat 版本(Acrobat 10 于两年前发布)并且(2)Adobe Acrobat 是一个广泛使用的应用程序。
答案1
我已经安装了Acrobat 11 (XI) 试用版在 VirtualBox 中。Acrobat 11 是单线程的。
我还编写了一个外部脚本,用于启动多个 Acrobat 实例(每个 CPU 核心一个),并行处理 OCR 作业并合并结果。一个关键步骤是在 Acrobat 首选项中打开错误日志记录,解析所有 .log 并重新处理任何错误文件。该脚本(使用 4 个核心时)的 OCR 速度仍比 Acrobat 11 默认速度快两倍以上。
答案2
多线程需要内置到应用程序中。开发人员必须编写代码来创建线程,并将任务分解为可分配给每个线程的子任务。如果 Acrobat 的开发人员未能为其 OCR 识别代码做到这一点,则用户无法创建所需的额外逻辑。
答案3
要使用所有核心进行 OCR,您可能需要查看 PDF-Xchange Editor。它的 OCR 引擎似乎使用了我系统上的所有核心。但是,一旦达到这种性能水平,使用 SSD 就很有意义了。
肯定存在 Windows 调整,使其将更多的 CPU 时间分配给不受 I/O 限制的单线程应用程序。在我的系统上,Acrobat 不会因磁盘性能而变慢,但我构建索引所用的最多 CPU 时间约为 30%。
让我们面对现实:Acrobat 是一款广泛使用但编写不佳的应用程序。但是,Acrobat Pro 具有一些您仍然无法在其他地方获得的功能(目前)。