gpt4 book ai didi

c++ - 如何分析 Rcpp 代码(在 Linux 上)

转载 作者:搜寻专家 更新时间:2023-10-31 02:09:37 25 4
gpt4 key购买 nike

我用 Rcpp 制作了一个 R 包,其中整个模拟在 C++ 中运行,结果在 R 中分析。现在我需要分析我的函数以便优化它们,但 R 分析器无法区分 C++ 函数内部发生的事情,而且当函数只能从 R 内部运行时,我不知道如何运行 C++ 分析器。

到目前为止,我已经找到了一些使用 gperftools 的建议(questionstutorials),但是指南不完整(也许他们假设我缺乏一定程度的知识?),缺少链接,我继续运行入墙。因此这个问题。这是我所在的位置:

  1. 安装 gperftools(我使用 pacman 从 extra/gperftools 安装)
  2. 在 C++ 头文件中包含 gperftools/profiler.h
  3. 在 C++ 代码中围绕我要分析的内容添加 ProfilerStart("myprof.log") 和 ProfilerStop()
  4. 用-lprofiler编译
  5. 运行“$CPUPROFILE="myprof.log"R -f myscript.R"

当前的墙是 gcc 告诉我“Undefined Symbol: ProfilerStart”,所以我认为链接有问题?

最佳答案

我对 gperftools 印象不是很深刻。此外,它似乎是一个检测分析器,基于采样的分析器更易于使用并且可能运行得更快。英特尔的 VTune 是一款出色的基于采样的分析器,如果您是教育用户,可以免费使用。即使您没有,您的组织也可能已经拥有许可证。

关于您的 gperftools 问题,是的,这是一个链接器问题。由于您决定不共享任何相关信息(链接命令?编译命令?实际错误消息?),我们无法进一步帮助您。

关于c++ - 如何分析 Rcpp 代码(在 Linux 上),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46413314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com