0
我知道,如果您有编译时变量初始化,程序运行速度比运行时初始化快,因为内存需要动态分配。超出初始开销的运行时分配的影响
我的问题是:动态分配的内存是否会对初始分配开销之外的程序性能产生长期影响?访问动态内存更昂贵吗?我的问题特别是关于Fortran,但它可能也与C等有关。
因此,如果我有一些初始命令行参数来初始化一堆数组的大小以开始计算,是否会显着减慢程序相比,将该参数设置为一个常量参数,并重新编译每次我想用不同大小的数组计算?
怎么样“访问动态内存更便宜吗?”考虑一个_large_静态数组,每个元素初始化为1而非大动态数组,元素分配为1.哪个文件较小?比'malloc()'和'memcpy()'运行需要更多的时间_load_。最好举个例子,否则这只是理论上的。 – chux