2 条题解

  • 2
    @ 2023-4-19 21:32:04
    • -O2:表示进行某些程度的性能优化,会开启大量的优化选项。
    • -O3:表示进行更深层次的性能优化,比 -O2 更耗费时间,但可以获得更显著的性能提升。
    • -Ofast:表示开启所有的性能优化选项,可能会影响到代码的精确度和可移植性,因此需要谨慎使用。
    • -fgcse:执行简单的公共子表达式删除和循环不变式删除,用于减少冗余计算。
    • -fipa-sra:执行 IPA 副作用削减和再编排优化,可以消除大部分多余的内存读写操作。
    • -ftree-pre:对树状结构进行预测,以尽可能减少管道停顿和支线错预。
    • -ftree-vrp:执行值范围传播,可以进行复杂条件的数据流分析和转换。
    • -ffast-math:允许快速、不精确的数学计算,可以加速程序的运行,但会降低数学计算的精度。
    • -funroll-loops:对循环进行展开,可以减少指令流水线的停顿等,以加快程序执行速度。
    • -falign-jumps、-falign-loops、-falign-labels、-falign-functions:调整代码的跳转目标、循环、标签和函数的位置和大小,以提高代码执行效率。
    • 等等。
    • 2
      @ 2023-4-11 16:34:15

      火车头牛逼!

      #pragma GCC optimize(2)
      #pragma GCC optimize(3)
      #pragma GCC optimize("Ofast")
      #pragma GCC optimize("inline")
      #pragma GCC optimize("-fgcse")
      #pragma GCC optimize("-fgcse-lm")
      #pragma GCC optimize("-fipa-sra")
      #pragma GCC optimize("-ftree-pre")
      #pragma GCC optimize("-ftree-vrp")
      #pragma GCC optimize("-fpeephole2")
      #pragma GCC optimize("-ffast-math")
      #pragma GCC optimize("-fsched-spec")
      #pragma GCC optimize("unroll-loops")
      #pragma GCC optimize("-falign-jumps")
      #pragma GCC optimize("-falign-loops")
      #pragma GCC optimize("-falign-labels")
      #pragma GCC optimize("-fdevirtualize")
      #pragma GCC optimize("-fcaller-saves")
      #pragma GCC optimize("-fcrossjumping")
      #pragma GCC optimize("-fthread-jumps")
      #pragma GCC optimize("-funroll-loops")
      #pragma GCC optimize("-fwhole-program")
      #pragma GCC optimize("-freorder-blocks")
      #pragma GCC optimize("-fschedule-insns")
      #pragma GCC optimize("inline-functions")
      #pragma GCC optimize("-ftree-tail-merge")
      #pragma GCC optimize("-fschedule-insns2")
      #pragma GCC optimize("-fstrict-aliasing")
      #pragma GCC optimize("-fstrict-overflow")
      #pragma GCC optimize("-falign-functions")
      #pragma GCC optimize("-fcse-skip-blocks")
      #pragma GCC optimize("-fcse-follow-jumps")
      #pragma GCC optimize("-fsched-interblock")
      #pragma GCC optimize("-fpartial-inlining")
      #pragma GCC optimize("no-stack-protector")
      #pragma GCC optimize("-freorder-functions")
      #pragma GCC optimize("-findirect-inlining")
      #pragma GCC optimize("-fhoist-adjacent-loads")
      #pragma GCC optimize("-frerun-cse-after-loop")
      #pragma GCC optimize("inline-small-functions")
      #pragma GCC optimize("-finline-small-functions")
      #pragma GCC optimize("-ftree-switch-conversion")
      #pragma GCC optimize("-foptimize-sibling-calls")
      #pragma GCC optimize("-fexpensive-optimizations")
      #pragma GCC optimize("-funsafe-loop-optimizations")
      #pragma GCC optimize("inline-functions-called-once")
      #pragma GCC optimize("-fdelete-null-pointer-checks")
      
      • 1

      信息

      ID
      495
      时间
      1000ms
      内存
      512MiB
      难度
      3
      标签
      递交数
      53
      已通过
      11
      上传者