python - 跟踪由 Cython 包装的 C++ 中分配的内存使用情况

标签 python c++ memory cython

我有一个 Python 程序,它调用一些 Cython 代码,而这些代码又包装了一些原始 C++ 代码。我想看看基本 C++ 代码分配了多少内存。我已经尝试过用于 Python 的 memory_profiler 模块,但是,它似乎无法检测到 C++ 代码分配的任何内容。我的证据是我有一个 Cython 对象,它又存储了一个 C++ 对象的实例。这个 C++ 对象绝对应该持有一堆内存。在 python 中,当我创建 Cython 对象的实例(并且它存储 C++ 对象的实例)时,memory_profiler 不会检测到存储的任何额外内存(或者至少检测到的内存量可以忽略不计)。

有没有其他方法可以检测 Python 为基本 C++ 对象分配了多少内存?或者是否有类似于 memory_profiler 的东西,但对于 Cython?

最佳答案

如果您可以在 Linux 上运行您的程序,请使用 https://github.com/vmware/chap (例如,以“总结使用”开头)。

关于python - 跟踪由 Cython 包装的 C++ 中分配的内存使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41573524/

相关文章:

c++ - const char** x 和 const char* x[] 有何相似之处?

c++ - 避免嵌入式目标上的虚函数

.net - 如何让 .NET 取消提交未使用的 RAM?

python - 如何使用 envoy.connect 避免僵尸进程?

python - 如何检查整数小数点后的值是否为零

python - Python 中是否有 static_cast 关键字或标准方法?

r - 有没有办法根据行、列和变量类型猜测 data.frame 的大小?

Python - 读取 "BadGzipFile"文件时出现 Pandas ".json.gz"错误

JAVA:我无法从套接字读取文本,由 C++ 程序发送

c++ - 对 C 指针使用 std::bad_alloc