草庐IT

MALLOC_MMAP_THRESHOLD

全部标签

linux - 你能推荐一个很好的 linux 调试 malloc 库吗?

你能推荐一个很好的linux调试malloc库吗?我知道那里有很多选择,我只需要知道人们实际使用哪些库来解决现实生活中的问题。谢谢!编辑:我知道Valgrind,但有时性能真的太低了。 最佳答案 Valgrind.:-)它不是malloc库,但是,它非常擅长查找内存管理和内存使用错误。 关于linux-你能推荐一个很好的linux调试malloc库吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/

linux - 你能推荐一个很好的 linux 调试 malloc 库吗?

你能推荐一个很好的linux调试malloc库吗?我知道那里有很多选择,我只需要知道人们实际使用哪些库来解决现实生活中的问题。谢谢!编辑:我知道Valgrind,但有时性能真的太低了。 最佳答案 Valgrind.:-)它不是malloc库,但是,它非常擅长查找内存管理和内存使用错误。 关于linux-你能推荐一个很好的linux调试malloc库吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/

c++ - 用于大文件 I/O 的 mmap()?

我正在用C++创建一个在Linux上运行的实用程序,它可以将视频转换为专有格式。视频帧非常大(高达16兆像素),我们需要能够直接查找准确的帧数,因此我们的文件格式使用libz单独压缩每个帧,并将压缩数据附加到文件中。完成所有帧的写入后,包含每个帧的元数据(包括它们的文件偏移量和大小)的日志将写入文件末尾。我目前正在使用ifstream和ofstream来执行文件i/o,但我希望尽可能地进行优化。我听说mmap()在很多情况下可以提高性能,我想知道我的情况是否是其中之一。我们的文件将在几十到几百GB之间,虽然写入总是按顺序进行,但随机访问读取应该在恒定时间内完成。关于我是否应该进一步调查

c++ - 用于大文件 I/O 的 mmap()?

我正在用C++创建一个在Linux上运行的实用程序,它可以将视频转换为专有格式。视频帧非常大(高达16兆像素),我们需要能够直接查找准确的帧数,因此我们的文件格式使用libz单独压缩每个帧,并将压缩数据附加到文件中。完成所有帧的写入后,包含每个帧的元数据(包括它们的文件偏移量和大小)的日志将写入文件末尾。我目前正在使用ifstream和ofstream来执行文件i/o,但我希望尽可能地进行优化。我听说mmap()在很多情况下可以提高性能,我想知道我的情况是否是其中之一。我们的文件将在几十到几百GB之间,虽然写入总是按顺序进行,但随机访问读取应该在恒定时间内完成。关于我是否应该进一步调查

c - malloc(及其同类)返回的内存块是否初始化为零?

我写了一个代码来测试压力测试Linux和Windows操作系统的内存管理。为了进一步测试,我继续检查malloc()返回的内存中存在哪些值。返回的值都是0(零)。我已经阅读了malloc的手册页,在Windows和Linux上都进行了检查,但是我无法找出这种行为的原因。根据联机帮助页Themalloc()functionallocatessizebytesandreturnsapointertotheallocatedmemory.Thememoryisnotinitialized.要清除内存段,必须手动使用memset()。#include#include#include#inclu

c - malloc(及其同类)返回的内存块是否初始化为零?

我写了一个代码来测试压力测试Linux和Windows操作系统的内存管理。为了进一步测试,我继续检查malloc()返回的内存中存在哪些值。返回的值都是0(零)。我已经阅读了malloc的手册页,在Windows和Linux上都进行了检查,但是我无法找出这种行为的原因。根据联机帮助页Themalloc()functionallocatessizebytesandreturnsapointertotheallocatedmemory.Thememoryisnotinitialized.要清除内存段,必须手动使用memset()。#include#include#include#inclu

c - 如何为 mmap() 禁用写时复制和按需填零

我正在使用mmap()执行cp(文件复制)命令。为此,我将源文件映射到MAP_PRIVATE(因为我只想读取)模式,将目标文件映射到MAP_SHARED模式(因为我必须写回目标文件的更改内容)。在执行此操作时,我观察到由于2个原因导致的许多次要页面错误导致性能下降。1)为源文件调用mmap(MAP_PRIVATE)时按需填零。2)在为目标文件调用mmap(MAP_SHARED)时复制写入。有什么方法可以禁用按需填零和写时复制吗?谢谢,哈里什 最佳答案 mmap(2)有MMAP_POPULATE标志:http://linux.die.

c - 如何为 mmap() 禁用写时复制和按需填零

我正在使用mmap()执行cp(文件复制)命令。为此,我将源文件映射到MAP_PRIVATE(因为我只想读取)模式,将目标文件映射到MAP_SHARED模式(因为我必须写回目标文件的更改内容)。在执行此操作时,我观察到由于2个原因导致的许多次要页面错误导致性能下降。1)为源文件调用mmap(MAP_PRIVATE)时按需填零。2)在为目标文件调用mmap(MAP_SHARED)时复制写入。有什么方法可以禁用按需填零和写时复制吗?谢谢,哈里什 最佳答案 mmap(2)有MMAP_POPULATE标志:http://linux.die.

c++ - mmap 一个 10 GB 的文件并将其加载到内存中

如果我想mmap一个10GB的文件并立即将整个文件加载到物理内存中,我该怎么做?我不想使用像mlock这样的功能,因为它需要root权限。有没有系统调用可以满足我的需求?(我的内存绰绰有余。) 最佳答案 阅读man-pageformmap:MAP_POPULATE(sinceLinux2.5.46)Populate(prefault)pagetablesforamapping.Forafilemapping,thiscausesread-aheadonthefile.Lateraccessestothemappingwillnotb

c++ - mmap 一个 10 GB 的文件并将其加载到内存中

如果我想mmap一个10GB的文件并立即将整个文件加载到物理内存中,我该怎么做?我不想使用像mlock这样的功能,因为它需要root权限。有没有系统调用可以满足我的需求?(我的内存绰绰有余。) 最佳答案 阅读man-pageformmap:MAP_POPULATE(sinceLinux2.5.46)Populate(prefault)pagetablesforamapping.Forafilemapping,thiscausesread-aheadonthefile.Lateraccessestothemappingwillnotb