Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 需要关于工具的建议,以测量两个版本的代码之间的内存使用(运行时)差异吗_C_Memory_Profiling_Valgrind - Fatal编程技术网

C 需要关于工具的建议,以测量两个版本的代码之间的内存使用(运行时)差异吗

C 需要关于工具的建议,以测量两个版本的代码之间的内存使用(运行时)差异吗,c,memory,profiling,valgrind,C,Memory,Profiling,Valgrind,我有一个包含char*的结构,其中包含编码/压缩的二进制数据。函数将此二进制函数解码并解压缩为第一个结构的嵌套结构。简化结构定义如下: typedef struct { int count; float X-data; float Y-data; } spectra; typedef struct { int count; char* binary; int binary_length; spectrum* spectra } chrom;

我有一个包含char*的结构,其中包含编码/压缩的二进制数据。函数将此二进制函数解码并解压缩为第一个结构的嵌套结构。简化结构定义如下:

typedef struct {
    int count;
    float X-data;
    float Y-data;
} spectra;
typedef struct {
    int count;
    char* binary;
    int binary_length;
    spectrum* spectra
} chrom;
我的第一个版本的程序只释放了程序末尾分配给char*的内存,但昨天我意识到我可以在解码/解压缩后直接释放它

然后,我试着比较Valgrind与Valgrind在性能方面的差异,但这列出了程序分配的总内存,显然保持不变。我想知道我现在有多少内存可用于计算本身,因为在程序运行时,我必须在内存中存储更少的数据

有没有人对我有什么好的工具/建议来衡量这一点

提前谢谢