我正在使用 lineprof 分析我的 R 代码时间和内存消耗。这为我编写的显式命令提供了良好的结果,但是当我使用外部包时,它没有提供所需的信息。例如,我尝试运行以下命令(使用 igraph):
library(igraph)
communityCalc <- function(n, p) {
graph <- erdos.renyi.game(n, p, directed = FALSE, loops = FALSE)
community <- leading.eigenvector.community(graph)
}
memoryProfile <- lineprof(communityCalc(n=10000, p=0.0014))
shine(memoryProfile)
我得到的内存结果是,即使创建图表会占用大量内存,但社区计算却不会。原因是“社区”是一种小型数据结构。我想以某种方式获得“leading.eigenvector.community”函数分配的内存量,而不仅仅是输出。如果可能的话,我希望更深的分辨率显示函数内的结果。