ImageMagick 解决多线程(openMP)运行时导致CPU暴增到100%的方法

本文介绍了一个关于ImageMagick新版本中由于默认启用OpenMP导致CPU占用过高的问题及解决方案。通过重新编译ImageMagick并禁用OpenMP选项,可以有效降低CPU负载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

发现问题在于新版本的 ImageMagick 启用了 OpenMP,默认开启多线程处理,导致 cpu 占用过高。convert 占用 cpu 很高。

首先用 /usr/local/imagemagick/bin/convert -version 指令查看一下输出內容是否已经开启了多线程

  • Features 的值为空或DPC,说明是单线程;
  • Features的值是 openMP,说明是多线程。

imagick 的多线程模式有一個 bug,他会导致多核心的 cpu 使用率瞬间飙升到 100%。所以一定要使用它的单线程程模式才行。

解决办法:
重新编译 ImageMagick 最新版,增加了参数: –disable-openmp,负载就降下来了

./configure --enable-shared --enable-threads=posix --with-system-zlib --enable-__cxa_atexit --disable-openmp
make && make install

如果您刚开始是用多线程模式安裝的imagick,那就必须要 yum remove imagemagick 將其卸载掉重新安裝才行

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郎涯技术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值