【问题标题】:What is external threading in Intel's IPP library?英特尔 IPP 库中的外线程是什么?
【发布时间】:2015-08-27 14:15:09
【问题描述】:

我正在阅读有关英特尔针对 C 和 C++ 的 Integrated Performance Primitives 库的信息。他们提到了外线程作为新功能之一。

用于外部线程的新 API 比内部线程更有效 穿线。 source

什么是外线程,它与 C++ 中的std::thread 有什么关系?

【问题讨论】:

    标签: c++ multithreading intel-ipp


    【解决方案1】:

    在 IPP 中:
    内螺纹 - 在基元内
    外螺纹 - 在应用程序级别

    英特尔 IPP 8.2 继续弃用之前的内部线程 从 7.1 版开始。线程静态库将是 可作为单独的下载,以及使用这些开发的代码 图书馆仍将像以前一样工作。 ThreadedFunctionsList.txt ...\Documentation\en_US\ipp\ 中的文件列出了 提供内螺纹格式。但是,多线程 库已被弃用,转向外部线程是 推荐理由如下:

    内部(原始内部)线程显着减少 比外部(在应用程序级别)线程更有效。

    source

    std::thread外螺纹无关。

    【讨论】:

      【解决方案2】:

      IPP 中的“准备外线程”基本上意味着,对于所有(几乎所有,除了函数,根据算法不适合线程)功能(功能组),函数参数列表包含足够的输入/输出参数组织外螺纹。因此,一些函数 API 被修改为外部线程。

      可以是地址、偏移量、服务缓冲区等,在多个线程中执行一个函数,以块为单位处理一维向量,或以切片或瓦片为单位处理二维图像。这会很有帮助,尤其是随着矢量/图像现在的增长(需要处理更多的百万像素:))。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-26
        • 2016-08-26
        相关资源
        最近更新 更多