小编6bb*_*df9的帖子

如何获得gcc编译的每个函数的最大帧大小?

是否可以获得GCC编译的每个函数的最大帧大小?我的项目中有一堆C和C++源文件,我希望得到每个函数的堆栈使用情况统计信息,但在GCC手册中找不到任何相关选项.

提前致谢 :-)

c c++ stack gcc frame

8
推荐指数
1
解决办法
1227
查看次数

没有模块 Data.ByteString 的堆分析数据

我试图为以下复制文件的原始 Haskell 代码生成堆内存配置文件:

import System.Environment
import System.IO
import qualified Data.ByteString as B
import qualified Data.ByteString.Lazy as LB

naiveCopy :: String -> String -> IO ()
naiveCopy from to = do
  putStrLn $ "From: " ++ from
  putStrLn $ "To: " ++ to
  s <- B.readFile from
  B.writeFile to s

main = do
  args <- getArgs
  mapM (\ x-> putStrLn x) args
  naiveCopy (head args) ((head.tail) args)
Run Code Online (Sandbox Code Playgroud)

使用 ghc 8.0.1 构建代码的命令:

ghc -o t -rtsopts -prof -fprof-auto t.hs
Run Code Online (Sandbox Code Playgroud)

收集分析数据的命令:

./t +RTS …
Run Code Online (Sandbox Code Playgroud)

haskell memory-profiling bytestring

5
推荐指数
1
解决办法
123
查看次数

标签 统计

bytestring ×1

c ×1

c++ ×1

frame ×1

gcc ×1

haskell ×1

memory-profiling ×1

stack ×1