我们是否可以使用 g++ 编译代码通过 Solaris Studio 的性能分析器进行性能分析?
Can we use g++ compile code to do performance analysis with Solaris Studio's Performance Analyser?
运行收集命令时出现以下错误
样品$collect-cbit(警告):无法对/home/user1/ANALYSIS/SAMPLE_PROGRAM/SAMPLE进行操作。请在带有Solaris10更新5或更高版本(或OpenSolaris版本snv_52或更高)的机器上重新编译它。如果使用较旧的操作系统,请尝试-xbinot=prepare(仅限SPARC)。
示例程序是用以下g++标志构建的
g++-c-墙-g3-m64-pthread-O2-DSOLARIS-DSS_64BIT_SERVER
示例程序很简单仅包含以下代码while (true)
{
sleep (10);
}
我只是想看看c++代码编译的代码是否可以与collect命令一起使用。由于我们有一个巨大的g++编译的二进制文件,我们不想再使用Solaris Studio C++编译器进行编译
-xbinopt=prepare
包含了使用性能计数器的二进制文件的特殊代码。我已经好几年没用了。。。就我记忆所及,-xbinopt=prepare
使二进制将性能数据写入CWD(或其他参数指定的目录)中的文件,稍后您可以将这些数据与-xbinopt=use
一起使用。规则首先用prepare编译,然后运行以收集数据,然后用收集的性能数据重新编译以获得更好的优化代码。类似于JIT编译器,但在编译时。
相关文章:
- 删除一个线程上有数百万个字符串的大型哈希映射会影响另一个线程的性能
- OpenMP阵列性能较差
- 递归列出所有目录中的C++与Python与Ruby的性能
- 大小相等但成员数量不同的结构之间的性能差异
- 为什么constexpr的性能比正常表达式差
- 在类中使用随机生成器时出现性能问题
- 在main()之外初始化std::vector会导致性能下降(多线程)
- 海湾合作委员会 ARM 性能下降
- GCC 和 Clang 代码性能的巨大差异
- 在容量内调整矢量大小时的性能影响
- 了解算法的性能差异(如果以不同的编程语言实现)
- 未达到的情况会影响开关外壳性能
- QStringList vs list<shared_ptr<QString>> 性能比较C++
- 是否总是可以将使用递归编写的程序重写为不使用递归的程序C++,性能观点是什么?
- 哪种方法更好,性能明智
- C++ 特征库:引用的性能开销<>
- 与多个 for 循环与单个 for 循环 wrt 相关的性能从多映射获取数据
- 如何在程序执行时查看Valgrind Massif输出(或其他堆分析器)?
- 我们是否可以使用 g++ 编译代码通过 Solaris Studio 的性能分析器进行性能分析?
- 使用Alternative语法分析器提高spirit较差的性能