草庐IT

buffer_memory

全部标签

c# - 检测何时即将耗尽内存(获取 "free physical memory"的数量)

我正在将图像从高FPS相机传输到内存缓冲区(列表)中,由于这些图像非常大,计算机很快就会耗尽内存。我想做的是在应用程序耗尽内存之前停止传输。在我的测试中,我发现它与接近于零的“可用物理内存”指标一致。现在的问题是我无法找到以编程方式实际获取此值的方法;在XP中,它甚至不会显示在任何地方(仅在Vista/7任务管理器中)。我已经尝试了所有我能找到的方法(WMI、性能计数器、MemoryStatus......),但我从中得到的只是“可用物理内存”,这当然不一样。有什么想法吗?更新不幸的是,我需要将数据放在内存中(是的,我知道我不能保证它会在物理内存中,但仍然如此),因为数据是实时流式传输

memory - 硬盘直接内存访问的目的是什么?

乍一看,让硬盘自行写入RAM似乎是个好主意,无需CPU指令复制数据,特别是考虑到异步网络的成功。但是Wikipediaarticle关于直接内存访问(DMA)的声明如下:WithDMA,theCPUgetsfreedfromthisoverheadandcandousefultasksduringdatatransfer(thoughtheCPUbuswouldbepartlyblockedbyDMA).我不明白公交线路如何“部分阻塞”。据推测,当时一台设备可以访问内存,然后看起来CPU实际上可以做的有用工作很少。它会在第一次尝试读取未缓存的内存时被阻止,我预计在2mb缓存的情况下会非

php - fatal error : Allowed memory size of 134217728 bytes exhausted (tried to allocate 71 bytes)

这个问题在这里已经有了答案:关闭12年前.PossibleDuplicate:Allowedmemorysizeof33554432bytesexhausted(triedtoallocate43148176bytes)inphp嗨,在我的php页面,我得到如下错误,Fatalerror:Allowedmemorysizeof134217728bytesexhausted(triedtoallocate71bytes)我尝试使用ini_set('memory_limit','128M');设置内存限制;但我还是得到了错误。任何帮助将不胜感激。 最佳答案

php - 如何故意造成 "Fatal error: Allowed memory size of xxx bytes exhausted"

每当我收到此错误时,我都会增加内存来修复它。我有一个案例,出于测试目的,我想让一个页面用完所有内存,无论我设置memory_limit多大。我不知道该怎么做。编辑:我试过这个:但它没有崩溃。最后它只打印了“startstart”,奇怪的是它被打印了两次......我想要一个简单的代码示例,“将很多东西放在内存中”..嗯,我知道这么多。 最佳答案 应该吃掉所有的内存。$a='x';while(true){$a=$a.$a;} 关于php-如何故意造成"Fatalerror:Allowedm

caching - Apache 星火 : User Memory vs Spark Memory

我正在构建一个Spark应用程序,我必须在其中缓存大约15GB的CSV文件。我读到了新的UnifiedMemoryManagerSpark1.6在这里介绍:https://0x0fff.com/spark-memory-management/它还显示了这张图片:作者不同UserMemory和SparkMemory(再次拆分为StorageandExecutionMemory)。据我了解,SparkMemory可以灵活地执行(随机播放、排序等)和存储(缓存)内容-如果需要更多内存,它可以从另一部分使用它(如果尚未完全使用)。这个假设正确吗?用户内存是这样描述的:UserMemory.Th

memory - 现代 Linux 中是否有 NUMA 下次接触策略

当我们在NUMA系统上工作时,内存可以相对于当前NUMA节点位于本地或远程。为了使内存更加本地化,​​有一个“first-touch”策略(默认内存到节点绑定(bind)策略):http://lse.sourceforge.net/numa/status/description.htmlDefaultMemoryBindingItisimportantthatuserprograms'memoryisallocatedonanodeclosetotheonecontainingtheCPUonwhichtheyarerunning.Therefore,bydefault,pagefau

php memory_get_usage(true) vs top %MEM

我有一个使用AWSDynamoPHPAPI用PHP编写的脚本。它运行一个很长的循环,从发电机中提取大量数据,然后对其进行处理。当我使用“top”查看进程时,我可以看到“php”进程使用的内存使用情况在我的脚本循环中,我打印memory_get_usage(true)的结果当我运行我的测试时,这两个值甚至都不相似......他们应该是吗?如果不是为什么不呢?在我的测试中,我有一个1.7gb内存的服务器,我将php.ini的memory_limit设置为64M。我还在脚本开始时调用gc_enable(),并在每个循环之间调用gc_collect_cycles(),希望强制进行垃圾回收。当我

memory - 非临时指令如何工作?

我正在阅读WhatEveryProgrammerShouldKnowAboutMemory乌尔里希·德雷珀(UlrichDrepper).pdf。在第6部分的开头有一段代码:#includevoidsetbytes(char*p,intc){__m128ii=_mm_set_epi8(c,c,c,c,c,c,c,c,c,c,c,c,c,c,c,c);_mm_stream_si128((__m128i*)&p[0],i);_mm_stream_si128((__m128i*)&p[16],i);_mm_stream_si128((__m128i*)&p[32],i);_mm_stream

memory - 没有 Db 的 DbConnection 使用内存中的 DataSet(或类似的)作为源

我正在尝试对一些.NET类进行单元测试(出于良好的设计原因),这些类需要DbConnections来完成它们的工作。对于这些测试,我在内存中有一些数据可以作为这些类的输入。内存中的数据可以很容易地表示为DataTable(或包含该DataTable的DataSet),但如果另一个类更合适,我可以使用它。如果我能够以某种方式神奇地获得一个表示与内存数据的连接的DbConnection,那么我可以构造我的对象,让它们针对内存数据执行查询,并确保它们的输出符合预期.有没有办法让DbConnection连接到内存中的数据?我没有安装任何其他第三方软件来实现这一点的自由,理想情况下,我不想在测试

memory - 用小内存在大图上进行广度优先搜索

我目前有一个图,其中包含大约1000万个节点和3500万条边。现在,完整的图形在程序启动时被加载到内存中。这需要几分钟(毕竟是Java)并且需要大约半GB的RAM。目前它运行在具有双核处理器和4GBRAM的机器上。当使用广度优先搜索来搜索图表时,内存使用量会上升到1GB的峰值,平均需要10秒。我想在几台计算机上部署该程序。除了图形搜索之外的功能确实需要很少的资源。我的目标系统非常微型,只有512MB的RAM。关于如何实现一种方法(可能使用数据库)来搜索该图而不消耗太多内存的任何建议?该程序在访问硬件设备时大部分时间处于空闲状态,因此对于上述图表,路径查找最多可能需要大约5分钟...感谢