代码之家  ›  专栏  ›  技术社区  ›  SunnyShah

在Linux上加快链接速度/快速链接

  •  10
  • SunnyShah  · 技术社区  · 14 年前

    我每十分钟就要构建一个WebKit(200万行代码),以查看我在其中所做更改的输出,并且我机器上WebKit的链接需要处理我硬盘上600-700 MB的对象文件。大约需要1.5分钟。我想加快这个链接过程。

    有没有可能,我可以告诉操作系统只在RAM中保存所有对象文件(我有4GB的RAM)。有没有其他方法来加速链接?

    感谢您的任何建议或帮助!

    这是一个需要1.5分钟的命令,

    http://pastebin.com/GtaggkSc

    4 回复  |  直到 11 年前
        1
  •  15
  •   Community CDub    8 年前

    我用 tempfs gold linker .

    1)。 tmpfs :mount目录,其中包含作为tmpfs的所有对象文件。

    2)。 金连接器 :使用金链接器将使链接速度提高5-6倍,具有tmpfs优势的链接速度将比正常链接快7-8倍。在Ubuntu上使用以下命令,您的普通链接器将被替换为黄金链接器。

    sudo apt-get install binutils-gold
    

    您可以使用黄金链接器发现一些链接错误,下面的线程是一个很好的帮助。

    Replacing ld with gold - any experience?

        2
  •  2
  •   mmonem    14 年前

    尝试使用 ramdisk

        3
  •  1
  •   Matt Briançon    14 年前

    老实说,我不确定我是否理解这个问题,但我想 ramfs 对你有用吗?

        4
  •  1
  •   Lothar    14 年前

    为您的Linux机器准备一个SSD磁盘。 如果写入性能仍然存在问题,请将输出路径配置为位于RAM磁盘中。

    你测量过1.5分钟中有多少是IO限制的吗? WebKit如此之大,意味着您可能会遇到内存缓存损坏。您应该尝试找出您有多少个一级/二级缓存未命中。我建议这是个问题。 在这种情况下,您唯一的希望是GCC团队中的某个人调查这个问题。

    顺便说一下:微软在极端链接器时代也有同样的问题。