0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

四个不同的系统上进行LLVM/Clang 6.0 和 5.0 的编译器Benchmark测试

Linux爱好者 来源:未知 作者:李倩 2018-03-29 15:25 次阅读

LLVM/Clang 6.0 和 5.0 的编译器 Benchmark 测试这次会在四个不同的系统上进行,包括了 Intel/AMD Linux 平台,其中 Intel 和 AMD 各占两个。

四个系统都运行了Ubuntu Linux x86_64,Intel 和 AMD 平台分别的配置如下:Intel Core i7 8700K (Coffeelake)、dual Xeon Gold 6138 (Skylake X)、Ryzen 7 1700 (Znver1) 以及 AMD EPYC 7601 (Znver1)。

除了默认的 C++14/GNU++14,Clang 6.0 还正式完成了 AMD Zen "znver1" 的程序调度模型,而英特尔方面也对多代 CPU 进行了调度程序的改进。

参与测试的LLVM 5.0.1 和 LLVM 6.0.0 稳定版都是来自apt.llvm.org。测试期间,每个系统都将其 CFLAGS/CXXFLAGS 设置为 "-O3 -march=native"。这次编译器 Benchmark 测试使用了开源的 PhoronixBenchmark 测试套件。

接下来,我们看看测试结果如何:

从 PolyBench-C Benchmark 测试可以看到,Clang 6.0 在 AMD Zen 系统似乎有明显的回落,而在英特尔平台上,性能没有太大的变动。

在大多数 benchmark 测试中,Clang 6.0 的表现与 Clang 5.0.1 相比几乎没有什么变化,这里也省略了许多结果。

使用 Clang 6.0 时,BLAKE2 似乎对英特尔 Skylake/Coffeelake 的设置稍有改进,而对于 Znver1 处理器则保持不变。

在一些测试中,我们发现 Core i7 8700K Coffeelake 系统在全新的 Clang 编译器更新中拥有更好的性能。

在 SciMark2 的 FFT 测试中,i7-8700K 明显是最大的赢家。

在其他的子测试中,i7-8700K的运行时间更短。在某些情况下,AMD 方面也有一些小幅度的改进。

TSCP chess benchmark 测试显示,i7-8700K 的速度稍慢,而其他系统则略有改善。

我们发现,强大的 EPYC 和 Xeon 系统在使用 Clang 6.0 时确实有更快的 John The Ripper 性能。

除了 dual Xeon Gold 外,其他系统的 AVX-heavy Himeno 压力求解器的性能都得到了改善。

但随着 LLVM 和 Clang 增加更多的优化和功能,在这项测试中,6.0 版本的编译时间显然比在 5.0 版本下显着减慢。

C-Ray 多线程射线追踪器(ray-tracer) z在 LLVM 6.0 上也变慢。

不过在其他一些测试中,Core i7 8700K 再次显示出 LLVM Clang 6.0 的一些小的性能改进。

可以看到,在使用 Linux x86_64 的流行英特尔和 AMD 平台上,LLVM Clang 5.0 和 6.0 之间的性能只发生了微小的变化。不过随着 LLVM/Clang 在过去的几年里已经成熟了许多,而且现在几乎与 GCC 在很多工作负载上并驾齐驱。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 英特尔
    +关注

    关注

    61

    文章

    9964

    浏览量

    171765
  • 编译器
    +关注

    关注

    1

    文章

    1634

    浏览量

    49129

原文标题:LLVM/Clang 6.0 和 5.0 的编译器 Benchmark 测试对比

文章出处:【微信号:LinuxHub,微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    LLVM编译器编译过程

    LLVM 编译器 原理解析, 插件编写
    发表于 04-28 08:15

    LLVM clang 公开 -std=c++23

    合入 LLVM 17 仓库的代码对 Clang 编译器使用 -std=c++23 代替了 -std=c++2b。 随着 ISO C++ 委员会投票决定 C++23 标准已达到其威廉希尔官方网站 完整状态
    发表于 05-27 11:29

    如何在ARM上使用Clang for Windows进行编译

    本指南介绍了LLVM12和相关Clang版本中的功能,这些功能有助于开发人员用于基于Arm的设备。特别是,本指南探讨了如何使用本机工具链进行编译适用于Windows on Arm(Wo
    发表于 08-08 06:56

    在Swift中使用LLVM四个要点

    本文主要内容是演示如何在Swift中使用LLVM,其包含了如下四个要点: 获取最新版本的LLVM使用CMake和llvm-config编译
    发表于 10-13 16:55 0次下载
    在Swift中使用<b class='flag-5'>LLVM</b>的<b class='flag-5'>四个</b>要点

    MASM5.0汇编编译器软件免费下载

    本文档的主要内容详细介绍的是MASM5.0汇编编译器软件免费下载。
    发表于 12-10 08:00 24次下载

    主流的C语言编译器详细介绍

    对于当前主流桌面操作系统而言,可使用Visual C++、GCC以及LLVM Clang这三大编译器。其中,Visual C++(简称MSVC)只能用于Windows操作
    发表于 09-05 17:27 2次下载
    主流的C语言<b class='flag-5'>编译器</b>详细介绍

    主流C语言编译器的详细资料介绍

    对于当前主流桌面操作系统而言,可使用Visual C++、GCC以及LLVM Clang这三大编译器。其中,Visual C++(简称 MSVC)只能用于Windows操作
    发表于 05-22 18:00 1次下载
    主流C语言<b class='flag-5'>编译器</b>的详细资料介绍

    微软与LLVM、Rust达成合作,将CFG支持添加到编译器

    微软方面宣布,该公司已与 LLVM 和 Rust 开发团队达成合作,将对 Windows Control Flow Guard(CFG)平台安全功能的支持添加到了 Clang 和 Rustc 编译器
    的头像 发表于 08-20 11:44 2946次阅读

    基于C++编译器的节点融合优化方法

    LLVM是以C十十编写的架构编译器的框架系统,支持多后端和交叉编译,用于优化程序的编译时间、链接时间、运行时间和空闲时间。节点融合是一种简单
    发表于 06-15 14:29 19次下载

    阿里云基础软件C/C++编译器的工作现状及挑战

    本文主要详细介绍了阿里云C、C++编译器(GCC、LLVM)工作现状、主流编译器(GCC、LLVM)开源社区参与现状以及多架构(RISC-V)对数据中心的挑战。
    的头像 发表于 06-23 15:26 2969次阅读
    阿里云基础软件C/C++<b class='flag-5'>编译器</b>的工作现状及挑战

    什么是LLVMLLVM的优势和特点有哪些?

    LLVM是一开源的编译器基础设施项目,它以"Low-Level Virtual Machine"的缩写命名,尽管名称中包含了"虚拟机"一词,但LLVM不仅仅是一
    的头像 发表于 06-11 15:54 9850次阅读

    ADuCM355硬件参考手册——Keli编译

    在 Arm Compiler 5 和 Arm Compiler for Embedded(以前称为 Arm Compiler 6)之间,底层威廉希尔官方网站 发生了重大变化,从专有编译器 armcc 转变为基于开源 LLVM/Clang
    的头像 发表于 01-12 09:35 1378次阅读
    ADuCM355硬件参考手册——Keli<b class='flag-5'>编译</b>版

    芯来科技与华东师范大学SOLE实验室合作推动LLVM/CLANG编译器优化

    深入的LLVM/CLANG编译器优化以及程序性能优化和调优。 我们不仅优化了LLVM编译器的多个关键环节,提升了代码生成效率和执行性能,还针
    的头像 发表于 06-12 09:09 625次阅读
    芯来科技与华东师范大学SOLE实验室合作推动<b class='flag-5'>LLVM</b>/<b class='flag-5'>CLANG</b><b class='flag-5'>编译器</b>优化

    分享关于编译器的科普

    源代码分析工具和IDE集成。GCC被构建成一单一的静态编译器,这使得它非常难以被作为API并集成到其他工具中。 GCC比Clang
    的头像 发表于 12-09 09:49 99次阅读

    Triton编译器与其他编译器的比较

    Triton编译器与其他编译器的比较主要体现在以下几个方面: 一、定位与目标 Triton编译器 : 定位:专注于深度学习中最核心、最耗时的张量运算的优化。 目标:提供一高度抽象、灵
    的头像 发表于 12-24 17:25 317次阅读