“正在缓存中间结果”是什么意思?

2024-01-23

我有一套n向量存储在3 x n matrix z。我发现外部产品使用np.einsum。当我使用以下方法计时时:

%timeit v=np.einsum('i...,j...->ij...',z,z)

我得到了结果:

The slowest run took 7.23 times longer than the fastest. This could mean that an
intermediate result is being cached 
100000 loops, best of 3: 2.9 µs per loop

这里发生了什么?可以避免吗?最好的 3 个是 2.9us,但最慢的可能更典型。


消息“正在缓存中间结果”只是 %timeit 报告的预设消息中的盲目猜测。它可能是真的,也可能不是,你不应该假设它是正确的。

特别是,第一次运行速度最慢的最常见原因之一是数组位于CPU缓存 https://en.wikipedia.org/wiki/CPU_cache仅在第一次运行后。

CPU 自动缓存数据;你无法避免这一点,而且你也不想真正避免它。然而,优化算法使CPU缓存能够以最佳状态工作是当今高性能计算需要考虑的瓶颈之一。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“正在缓存中间结果”是什么意思? 的相关文章

随机推荐

  • Django,按日期范围内指定的月份和年份进行过滤

    我有以下型号 class Destination Deal models Model name models CharField Nombre max length 200 class Departure Date models Model
  • Javascript 事件似乎没有添加到动态生成的文本框中

    我为 JavaScript 中动态添加的文本框添加了 onkeyup javascript 但它似乎不起作用 var cell4 row insertCell 3 cell4 setAttribute align center var e3
  • JPEG 解压缩在 Windows 体系结构中不一致

    我正在使用不同版本的 Windows 的一堆计算机上测试 JPEG 解压缩 所有这些计算机都安装了 NET 4 我正在针对 NET 2 和 任何 CPU 平台目标进行编译 以下代码在不同的系统上产生不同的输出 Bitmap bmp Bitm
  • 优化“rootn(x, n)”的低精度近似

    rootn float t x int t n is a function that computes the n th root x1 n and is supported by some programming languages su
  • Windows 批处理:从文本文件设置变量

    我目前正在寻找一种通过 txt 文档中的链接在 Windows 批处理文件中设置变量的方法 例如 如果文本文件读取为 http website1 com http website2 com http website3 com 我希望可以将它
  • PHP-EWS“Soap 客户端返回状态 404”

    所以 我正在使用php ews http jamesarmes com php ews库连接到我的 Microsoft Office 365 Exchange 电子邮件帐户以阅读电子邮件 我已成功连接到它 并设法检索我需要的电子邮件列表 现
  • 可以拆分PHP配置文件php.ini吗?

    任何使用 php 的人都知道 php ini 是一个大文件 当您需要更改 ssh 时可能会让人头疼 例如我可以使用更改 nginx confinclude指令将启用站点的目录下的所有文件加载到主 nginx conf 中 所以我的问题很简单
  • 如何计算字符串的 CRC32

    如何计算 NET 中字符串的 CRC32 循环冗余校验和 这家伙似乎已经给你答案了 https damieng com blog 2006 08 08 calculate crc32 in c and net https damieng c
  • MVVM 中的数据绑定 ObservableCollection

    我有一个带有数据模板的 ListView 其中包含电影列表 它被数据绑定到 ObservableCollection 但每当我编辑 Movie Name 时 即使在我的 PropertyChangedEventHandler 中使用 Nam
  • 在 SSLContext 中使用硬件支持的密钥

    我想在 Android 上使用硬件支持的密钥进行客户端双向 TLS 钥匙应该通过生物识别技术解锁 我找到了如何在 Android 上生成硬件支持的密钥对 KeyPairGenerator keyGenerator KeyPairGenera
  • 如何调整 meSpeak.js 以获得更好的声音?

    我是新来的meSpeak js http www masswerk at mespeak 我不能接受他们在演示中的默认声音 我尝试使用他们拥有的选项 但这并没有多大区别 我想知道如何调整它 以使声音接近 Siri 的水平 而不是像他们的演示
  • 如何在vue中创建警报确认框

    我想在删除文件之前显示一个对话框 我如何用vue做到这一点 这是我尝试的 我的删除文件按钮 a href Delete a 这是我的删除方法 DeleteUser id index axios delete api artist id th
  • 无法实例化片段确保类名存在

    android app Fragment InstantiationException 无法实例化 片段 确保类名存在 是公共的并且有一个空 构造函数是公共的 我意识到有很多关于同一错误的问题 但到目前为止没有一个对我有帮助 我正在从一本书
  • 将 Mercurial 与 Cygwin 一起使用?

    我们一直在尝试将 Mercurial 与 Cygwin 在 Windows 上 一起使用 但遇到错误 因为 Cygwin 使用正斜杠 而 Mercurial 似乎需要反斜杠 有解决方法吗 问题示例 hg status M src myfil
  • 自动运行可移动驱动器

    自动运行在 Windows 中被禁用 我正在寻找替代方案 我得到了这个 AutoIt 脚本 DBT DEVICEARRIVAL 0x00008000 WM DEVICECHANGE 0x0219 GUICreate GUIRegisterM
  • Knockout.js 模板未更新 dependentObservable 上的 UI 绑定

    该应用程序是在 vs2010 中使用 ASP NET MVC 3 编写的 我有一个淘汰赛模板 它使用 a 更新一些 css 和可见绑定 依赖的可观察的 仅当我绑定时才会出现此问题 选择元素的值 间隔ID 如果这没有被绑定 UI 按预期更新
  • 如何链接“并行”类层次结构?

    我有一个小的类层次结构 其中每个类对应于某个 TComponent 后代 例如基类 TDefaultFrobber 及其后代 TActionFrobber 和 TMenuItemFrobber 分别对应于 TComponent TCusto
  • 软件/硬件支持的 Android 密钥库的使用以及可能的安全/可用性缺陷

    我目前正在研究在 Android 应用程序中存储 使用密钥的可能性 我发现了尼古拉 埃连科夫的博客 http nelenkov blogspot com关于这个主题非常有帮助 我学到了很多关于 Android 密钥库和一些基于硬件的实现的知
  • Jetty默认是非阻塞的吗?

    请告诉我 Jetty 默认情况下是否是非阻塞 Web 服务器 例如 下面的代码将 Jetty 作为非阻塞 Web 服务器运行 Server server new Server 8080 ServletContextHandler conte
  • “正在缓存中间结果”是什么意思?

    我有一套n向量存储在3 x n matrix z 我发现外部产品使用np einsum 当我使用以下方法计时时 timeit v np einsum i j gt ij z z 我得到了结果 The slowest run took 7 2