草庐IT

memory-profiling

全部标签

memory - 监控目录的变化 - 潜在的高内存

我目前正在使用nodeJS中的脚本来监视目录(及其子目录),并在将文件放置在那里后执行一些功能。实际上,这将是一个FTP,用户在其中上传文件,对其进行处理,然后删除。显然,我已经看到脚本的CPU使用率很高,因为它遍历目录,等待文件可见。但让我担心的是,脚本运行的时间越长,内存使用量就越高(它只是呈指数增长)。是否有一些轻量级的方法来监视目录的更改?谢谢!编辑:我目前正在使用watch-tree这很好,但仍然存在内存增加的问题。 最佳答案 听起来你想要一个FAM或inotify的包装器。也许像node-inotify-plusplus

memory - 这是 Spark 流的错误还是内存泄漏?

我将代码提交到spark独立集群。提交命令如下:nohup./bin/spark-submit\--masterspark://ES01:7077\--executor-memory4G\--num-executors1\--total-executor-cores1\--conf"spark.storage.memoryFraction=0.2"\./myCode.py1>a.log2>b.log&我在上面的命令中指定执行器使用4G内存。但是使用top命令监控executor进程,我注意到内存使用量一直在增长。现在顶部的命令输出如下:PIDUSERPRNIVIRTRESSHRS%CP

javascript - 实现撤消功能 : how to measure memory consumption of JavaScript array?

我们需要为Web编辑器实现撤消功能,并希望测试撤消历史可以合理地走多远。撤消数据模型是一个包含1+个jQuery对象的JavaScript数组,每个对象可以包含多个Base64图像。如何测量JavaScript对象的内存使用情况?是否可以从Chrome监控内存使用情况? 最佳答案 Chrome有一个很好的工具。它基于RAIL模型,可让您快速检测泄漏甚至膨胀。只需转到chrome的任务管理器(shift+esc)并启用Javascript内存。这个工具救了我的命,祝你好运! 关于javas

python - tensorflow : Ran out of memory trying to allocate

我正在运行TensorFlow版本0.7.1,支持64位GPU,使用pip安装,并且在装有Ubuntu14.04的PC上运行。我的问题是在构建网络时TensorFlow内存不足,即使根据我的计算,我的GPU上应该有足够的空间。下面是我的代码的最小示例,它基于TensorFlowMNIST教程。该网络是一个两层全连接网络,隐藏层的节点数由变量n定义。训练小批量的大小为1。这是我的代码:n=23000mnist=read_data_sets('MINST_Data',one_hot=True)session=tf.InteractiveSession()x=tf.placeholder(t

memory - 为什么内存地址在 MIPS 中增加 4?

如果某些内容存储在0x10010000,则下一个内容存储在0x10010004。如果我是正确的,则32位架构中的内存块每个都是32位。那么0x10010002会指向32位的后半部分吗? 最佳答案 首先,MIPS架构中的内存地址不会增加4。MIPS使用字节寻址,因此您可以从内存中寻址任何字节(参见例如lb和lbu读取单个字节,lh和lhu读取半字)。事实是,如果您读取32位长度的字(4个字节,lw),那么两个连续的字将彼此相距4个字节。在这种情况下,您将在第一个字的地址上加4以获得下一个字的地址。除此之外,如果您阅读单词,您必须将它们

memory - 戈朗。零垃圾传播或有效使用内存

我时常会遇到诸如零垃圾或有效使用内存等概念。例如在知名包的特性部分httprouter您可以看到以下内容:ZeroGarbage:Thematchinganddispatchingprocessgenerateszerobytesofgarbage.Infact,theonlyheapallocationsthataremade,isbybuildingthesliceofthekey-valuepairsforpathparameters.Iftherequestpathcontainsnoparameters,notasingleheapallocationisnecessary.

python - 标记数据时出错。 C 错误 : out of memory pandas python, 大文件 csv

我有一个3.5go的大csv文件,我想使用pandas读取它。这是我的代码:importpandasaspdtp=pd.read_csv('train_2011_2012_2013.csv',sep=';',iterator=True,chunksize=20000000,low_memory=False)df=pd.concat(tp,ignore_index=True)我收到此错误:pandas/parser.pyxinpandas.parser.TextReader.read(pandas/parser.c:8771)()pandas/parser.pyxinpandas.par

java - JVM内存: Why memory on task manager difference with JProbe (or JConsole tool)

我遇到的问题是我的应用程序使用的内存只有100MB,之后它减少了50MB,但是在窗口任务管理器上它显示150MB并且总是保持或增加而不是减少,我们如何reducetask管理器上的内存(私有(private)工作集)? 最佳答案 您在JConsole(或其他监控工具)中看到的是java内存的使用模式。JVM的内存通常在这些区域之间划分(您也可以在监控工具中看到)。用于Java对象的堆内存非堆内存是java存储加载类的地方元数据和JVM代码native内存是为dll和Java的native代码(非常低级)。有时你会得到一个OOM在这个

memory - 为什么 valgrind 在 64 位架构上限制为 32 Gb?

我正在尝试在一个使用超过32Gb内存的进程上对一个heisenbug进行valgrind,并达到了这个valgrind限制,这是可以通过重新编译valgrind来避免的任意问题还是很难? 最佳答案 限制是任意的,可以通过重新编译valgrind来改变。Valgrind使用2级稀疏数组跟踪内存。地址的16位用于索引包含指向二级映射的指针的65536条目表,该映射跟踪地址空间的范围(对于32位进程,通常2¹⁶字节=64KB,对于2¹⁹字节=512KB64位进程)。所以这个2级稀疏数组可以跟踪的内存总量是65536×这个block大小。通

memory - Redis:我如何(或应该)删除 pubsub channel

在我的应用程序中,我动态创建了新的pubsubchannel,每天可能有太多的channel,比如5k。根据我的应用程序的要求,任何channel最多使用5分钟。考虑到这种情况,一周内应用中将出现数千个未使用的channel。那么我该如何删除未使用的channel,或者我什至应该删除它们。它们是否存储在内存中?通过它们发布的消息会发生什么,它们是否保留在redis的内存中?谢谢 最佳答案 channel是环境的。它们仅在有订阅时存在。所以:要么从订阅的连接中调用[P]UNSUBSCRIBE,要么关闭订阅的连接。