请教如何修改线程时间片

发布于 2022-09-23 15:27:52 字数 612 浏览 10 评论 0

我们在linux上开发一个智能视频处理系统时,遇到如下的问题:
    我们的系统是多线程的(一共有七八个线程),包括图象采集线程,图象编解码线程,图象分析处理线程,网络通讯线程等,在图象编解码线程中,我们将采集到的每帧YUV图象解码成位图后送图象分析处理线程进行分析处理,然后再将该位图(大小为768x576)编码成jpeg后送网络通讯线程(以便其将jpeg图象送客户端进行显示),我们是通过CxImage进行jpeg编码的(CxImage调用了intel的ipp库),系统消耗了大量的CPU,CPU使用率在190%左右(双核的处理器),即使我们只做图象编解码,CPU使用率也在100%以上,我们做一路图象分析时系统还能承受住,但是我们的目标是在一台机器上同时做多路图象分析,这样系统肯定承受不住。我们通过研究发现CPU主要是消耗在了JPEG编码上,因为如果我们将图象大小改为384x288时CPU的使用率就降到了10%以下(只做图象编解码),但是图象缩放后就降低了清晰度。所以我们想在不改变图象大小的情况下也能降低CPU的消耗,不知道如何对JPEG编码进行优化才能达到这个目的。我们尝试过提高线程优先级别的方法,但是没有效果,现在我们想通过修改线程时间片的方法来达到目的,就是让JPEG编码的线程占据更多的CPU时间片,但是我们不知道如何修改linux的线程时间片,还请高人不吝赐教!谢谢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文