GCC 10 рдХрдореНрдкрд╛рдЗрд▓рд░ рд╕реБрдЗрдЯ рдХреЛ рд░рд┐рд▓реАрдЬ

рд╡рд┐рдХрд╛рд╕рдХреЛ рдПрдХ рд╡рд░реНрд╖ рдкрдЫрд┐ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрдореНрдкрд╛рдЗрд▓рд░рд╣рд░реВрдХреЛ рдирд┐: рд╢реБрд▓реНрдХ рд╕реЗрдЯрдХреЛ рд░рд┐рд▓реАрдЬ GCC .10.1.ред, рдирдпрд╛рдБ GCC 10.x рд╢рд╛рдЦрд╛рдорд╛ рдкрд╣рд┐рд▓реЛ рдкреНрд░рдореБрдЦ рд░рд┐рд▓реАрдЬред рдпрд╕ рдЕрдиреБрд╕рд╛рд░ рдирдпрд╛рдБ рдпреЛрдЬрдирд╛ рд░рд┐рд▓реАрдЬ рдирдореНрдмрд░рд╣рд░реВ, рд╕рдВрд╕реНрдХрд░рдг 10.0 рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ, рд░ GCC 10.1 рдХреЛ рд░рд┐рд▓реАрдЬ рд╣реБрдиреБ рдХреЗрд╣реА рд╕рдордп рдЕрдШрд┐, GCC 11.0 рд╢рд╛рдЦрд╛ рдкрд╣рд┐рд▓реЗ рдиреИ рд╢рд╛рдЦрд╛ рдмрдиреНрдж рднрдПрдХреЛ рдерд┐рдпреЛ, рдЬрд╕рдХреЛ рдЖрдзрд╛рд░рдорд╛ рдЕрд░реНрдХреЛ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд░рд┐рд▓реАрдЬ, GCC 11.1, рдЧрдарди рд╣реБрдиреЗрдЫред

GCC 10.1 C++ 20 рдорд╛рдирдХрдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рдХрд╕рд┐рдд C++ рднрд╛рд╖рд╛рдорд╛ рдзреЗрд░реИ рдЖрд╡рд┐рд╖реНрдХрд╛рд░рд╣рд░реВрдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд▓рд╛рдЧрд┐ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдЫ, рднрд╡рд┐рд╖реНрдпрдХреЛ C рднрд╛рд╖рд╛ рдорд╛рдирдХ (C2x) рд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рд╕реБрдзрд╛рд░рд╣рд░реВ, рдХрдореНрдкрд╛рдЗрд▓рд░ рдмреНрдпрд╛рдХрдПрдиреНрдбрд╣рд░реВрдорд╛ рдирдпрд╛рдБ рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рдирд╣рд░реВ рд░ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд╕рдорд░реНрдердиред рд╕реНрдерд┐рд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЛрдбред рдердк рд░реВрдкрдорд╛, рдирдпрд╛рдБ рд╢рд╛рдЦрд╛рдХреЛ рддрдпрд╛рд░реАрдХреЛ рдХреНрд░рдордорд╛, рдкрд░рд┐рдпреЛрдЬрдирд╛рд▓реЗ рднрдгреНрдбрд╛рд░рд▓рд╛рдИ SVN рдмрд╛рдЯ Git рдорд╛ рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдг рдЧрд░реНрдпреЛред

рдореБрдЦреНрдп рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрдиреБрд╣реЛрд╕реН:

  • рдердкрд┐рдпреЛ рд╕реНрдерд┐рд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдореЛрдб "- рдлреНрдпрд╛рдирд▓рд╛рдЗрдЬрд░", рдЬрд╕рд▓реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдордорд╛ рдХреЛрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдорд╛рд░реНрдЧ рд░ рдбреЗрдЯрд╛ рдкреНрд░рд╡рд╛рд╣рд╣рд░реВрдХреЛ рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рди рдЕрдиреНрддрд░рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЧрд░реНрджрдЫред рдореЛрдбрд▓реЗ рдХрдореНрдкрд╛рдЗрд▓реЗрд╢рди рдЪрд░рдгрдорд╛ рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрди рд╕рдХреНрд╖рдо рдЫ, рдЬрд╕реНрддреИ рдПрдХ рдореЗрдореЛрд░реА рдХреНрд╖реЗрддреНрд░рдХреЛ рд▓рд╛рдЧрд┐ рдирд┐: рд╢реБрд▓реНрдХ() рдкреНрд░рдХрд╛рд░реНрдпрдорд╛ рдбрдмрд▓ рдХрд▓рд╣рд░реВ, рдлрд╛рдЗрд▓ рд╡рд┐рд╡рд░рдг рдЪреБрд╣рд╛рд╡рдЯ, рдбрд┐рд░реЗрдлрд░реЗрдиреНрд╕рд┐рдЩ рд░ рдирд▓ рдкреЛрдЗрдиреНрдЯрд░реНрд╕рд╣рд░реВ рдкрд╛рд╕ рдЧрд░реНрдиреЗ, рдореБрдХреНрдд рдореЗрдореЛрд░реА рдмреНрд▓рдХрд╣рд░реВ рдкрд╣реБрдБрдЪ рдЧрд░реНрдиреЗ, рд╕реБрд░реБ рдирдЧрд░рд┐рдПрдХреЛ рдорд╛рдирд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ, рдЖрджрд┐ред OpenSSL рдХреЛрдбрдХреЛ рд▓рд╛рдЧрд┐ рдирдпрд╛рдБ рдореЛрдбрдХреЛ рдкреНрд░рдпреЛрдЧрд▓реЗ рдкрд╣рд┐рд▓реЗ рдиреИ рдкрд╣рд┐рдЪрд╛рди рдЧрд░реНрди рд╕рдореНрднрд╡ рдмрдирд╛рдПрдХреЛ рдЫ рдЦрддрд░рдирд╛рдХ рдЬреЛрдЦрд┐рдо.
  • рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдЕрдиреНрддрд░рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдЕрдиреБрдХреВрд▓рдиред IPA-SRA (Interprocedural Scalar Shared Replacement) рдкрд╛рд╕рд▓рд╛рдИ рдмрд╛рдЗрдиреНрдб рдЯрд╛рдЗрдордорд╛ рдХрд╛рдо рдЧрд░реНрди рдкреБрди: рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХреЛ рдЫ рд░, рдЕрдиреНрдп рдЪреАрдЬрд╣рд░реВ рдмреАрдЪрдорд╛, рдЕрдм рдЧрдгрдирд╛ рдЧрд░рд┐рдПрдХреЛ рд░ рдкреНрд░рдпреЛрдЧ рдирдЧрд░рд┐рдПрдХрд╛ рдорд╛рдирд╣рд░реВ рд╣рдЯрд╛рдЙрдБрдЫред "-O2" рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рди рдореЛрдбрдорд╛, "-finline-functions" рд╡рд┐рдХрд▓реНрдк рд╕рдХреНрд╖рдо рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓рд╛рдИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрдирдорд╛ рдердк рдХрдореНрдкреНрдпрд╛рдХреНрдЯ рдХреЛрдбрдХреЛ рдкрдХреНрд╖рдорд╛ рдкреБрди: рдкреНрд░рд╛рдкреНрдд рдЧрд░рд┐рдПрдХреЛ рдЫред рдЗрдирд▓рд╛рдЗрди рдлрдВрдХреНрд╢рди рдбрд┐рдкреНрд▓реЛрдЗрдореЗрдиреНрдЯрдХрд╛ рд▓рд╛рдЧрд┐ рд╣реНрдпреБрд░рд┐рд╕реНрдЯрд┐рдХрдХреЛ рдХрд╛рдорд▓рд╛рдИ рддреАрд╡реНрд░рддрд╛ рджрд┐рдЗрдПрдХреЛ рдЫред рдЗрдирд▓рд╛рдЗрди рд╡рд┐рд╕реНрддрд╛рд░ рд░ рдкреНрд░рдХрд╛рд░реНрдп рдХреНрд▓реЛрдирд┐рдЩ heuristics рд▓реЗ рдЕрдм рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдкрд╛рдиреНрддрд░рдгрдХреЛ рдкреНрд░рднрд╛рд╡рдХрд╛рд░рд┐рддрд╛ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдЧрд░реНрди рдореВрд▓реНрдп рджрд╛рдпрд░рд╛ рдмрд╛рд░реЗ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдЫред C++ рдХреЛ рд▓рд╛рдЧрд┐, рдкреНрд░рдХрд╛рд░-рдЖрдзрд╛рд░рд┐рдд рдЙрдкрдирд╛рдо рдкрд╛рд░реНрд╕рд┐рдЩрдХреЛ рд╢реБрджреНрдзрддрд╛ рд╕реБрдзрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫред
  • рдПрдиреНрд╣рд╛рдиреНрд╕реНрдб рд▓рд┐рдВрдХрд┐рдЩ рдЯрд╛рдЗрдо рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рди (LTO)ред рдирдпрд╛рдБ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдп рдердкрд┐рдпреЛ lto-рдбрдореНрдк LTO bytecode рдХреЛ рд╕рд╛рде рд╡рд╕реНрддреБ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдЬрд╛рдирдХрд╛рд░реА рд░рд┐рд╕реЗрдЯ рдЧрд░реНрдиред рд╕рдорд╛рдирд╛рдиреНрддрд░ LTO рдкрд╛рд╕рд╣рд░реВрд▓реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдПрдХ рд╕рд╛рде рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдореЗрдХ рдХрд╛рд░реНрдпрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрджрдЫ рд░, рдпрджрд┐ рддрд┐рдиреАрд╣рд░реВ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрди рд╕рдХрд┐рдБрджреИрди рднрдиреЗ, рд╕рдорд╛рдирд╛рдиреНрддрд░ рдХрд╛рд░рдХрдХреЛ рд░реВрдкрдорд╛ CPU рдХреЛрд░рд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛рдХреЛ рдмрд╛рд░реЗрдорд╛ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред Zstd рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ LTO bytecode рдХрдореНрдкреНрд░реЗрд╕ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рдердкрд┐рдпреЛред
  • рдХреЛрдб рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдЩрдХреЛ рдирддрд┐рдЬрд╛рдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рди рдореЗрдХрд╛рдирд┐рдЬрдо (PGO - рдкреНрд░реЛрдлрд╛рдЗрд▓-рдирд┐рд░реНрджреЗрд╢рд┐рдд рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рди) рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рд▓реЗ рдХреЛрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛рд╣рд░реВрдХреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрдорд╛ рдЖрдзрд╛рд░рд┐рдд рдердк рдЗрд╖реНрдЯрддрдо рдХреЛрдб рдЙрддреНрдкрдиреНрди рдЧрд░реНрдЫред рд╕рдВрдХрд▓рди рд░ рддрд╛рддреЛ/рдЪрд┐рд╕реЛ рдХреЛрдб рд╡рд┐рднрд╛рдЬрдирдХреЛ рд╕рдордпрдорд╛ рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдкреНрд░реЛрдлрд╛рдЗрд▓ рдорд░реНрдорддред рд╡рд┐рдХрд▓реНрдк рдорд╛рд░реНрдлрдд "-рдкреНрд░реЛрдлрд╛рдЗрд▓-рдорд╛рдирд╣рд░реВ┬╗ рдЕрдм 4 рдкреНрд░реЛрдлрд╛рдЗрд▓ рдорд╛рдирд╣рд░реВ рдирд┐рдЧрд░рд╛рдиреА рдЧрд░реНрди рд╕рдХреНрдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рдХрд▓рд╣рд░реВ рд░ рдердк рд╕рдЯреАрдХ рдкреНрд░реЛрдлрд╛рдЗрд▓ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдЧрд░реНрдиред
  • C, C++ рд░ Fortran рднрд╛рд╖рд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд╛рдирд╛рдиреНрддрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдЩ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд▓рд╛рдЧреВ рдЧрд░рд┐рдпреЛ OpenACC 2.6, рдЬрд╕рд▓реЗ GPU рд╣рд░реВ рд░ NVIDIA PTX рдЬрд╕реНрддрд╛ рд╡рд┐рд╢реЗрд╖ рдкреНрд░реЛрд╕реЗрд╕рд░рд╣рд░реВрдорд╛ рдЕрдлрд▓реЛрдбрд┐рдЩ рд╕рдЮреНрдЪрд╛рд▓рдирдХрд╛ рд▓рд╛рдЧрд┐ рдЙрдкрдХрд░рдгрд╣рд░реВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрджрдЫред рдорд╛рдкрджрдгреНрдбрдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд▓рдЧрднрдЧ рд╕рдХрд┐рдПрдХреЛ рдЫ рдУрдкрди рдПрдордкреА 5.0.реж (рдУрдкрди рдорд▓реНрдЯрд┐-рдкреНрд░реЛрд╕реЗрд╕рд┐рдЩ), рдЬрд╕рд▓реЗ рдмрд╣реБ-рдХреЛрд░ рд░ рд╣рд╛рдЗрдмреНрд░рд┐рдб (CPU+GPU/DSP) рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛ рд╕рд╛рдЭрд╛ рдореЗрдореЛрд░реА рд░ рднреЗрдХреНрдЯрд░рд╛рдЗрдЬреЗрд╢рди рдПрдХрд╛рдЗрд╣рд░реВ (SIMD) рд╕рдБрдЧ рд╕рдорд╛рдирд╛рдиреНрддрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдЩ рд╡рд┐рдзрд┐рд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░реНрдиреЗ API рд░ рд╡рд┐рдзрд┐рд╣рд░реВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрджрдЫред рдердкрд┐рдПрдХрд╛ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЬрд╕реНрддреИ рдЕрдиреНрддрд┐рдо рдирд┐рдЬреА рд╕рд░реНрддрд╣рд░реВ, рд╕реНрдХреНрдпрд╛рди рд░ рд▓реБрдк рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ, рдЕрд░реНрдбрд░ рд░ use_device_addr рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рд╣рд░реВред OpenMP рд░ OpenACC рдХреЛ рд▓рд╛рдЧрд┐, рдЪреМрдереЛ рдкреБрд╕реНрддрд╛ (рдлрд┐рдЬреА) рд░ рдкрд╛рдБрдЪреМрдВ рдкреБрд╕реНрддрд╛рдХреЛ AMD Radeon (GCN) GPUs (VEGA 10/VEGA 20) рдорд╛ рдЕрдлрд▓реЛрдбрд┐рдЩ рд╕рдЮреНрдЪрд╛рд▓рдирдХрд╛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдПрдХреЛ рдЫред
  • C рдкрд░рд┐рд╡рд╛рд░рдХрд╛ рднрд╛рд╖рд╛рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐, рд╕рдиреНрджрд░реНрдн рд╡рд╛ рд╕реВрдЪрдХрджреНрд╡рд╛рд░рд╛ рдкрд╛рд╕ рдЧрд░рд┐рдПрдХрд╛ рд╡рд╕реНрддреБрд╣рд░реВрдорд╛ рдкреНрд░рдХрд╛рд░реНрдпрдХреЛ рдкрд╣реБрдБрдЪ рд╡рд░реНрдгрди рдЧрд░реНрди рд░ рд╡рд╕реНрддреБрд╣рд░реВрдХреЛ рд╕рд╛рдЗрдЬрдХреЛ рдмрд╛рд░реЗрдорд╛ рдЬрд╛рдирдХрд╛рд░реА рднрдПрдХреЛ рдкреВрд░реНрдгрд╛рдВрдХ рддрд░реНрдХрд╣рд░реВрд╕рдБрдЧ рддреНрдпрд╕реНрддрд╛ рд╡рд╕реНрддреБрд╣рд░реВрд▓рд╛рдИ рд╕рдореНрдмрджреНрдз рдЧрд░реНрди "рдкрд╣реБрдБрдЪ" рдкреНрд░рдХрд╛рд░реНрдп рдердкрд┐рдПрдХреЛ рдЫред "рдкрд╣реБрдБрдЪ" рд╕рдБрдЧ рд╕рдВрдпреЛрдЬрдирдорд╛ рдХрд╛рдо рдЧрд░реНрди, рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВрдмрд╛рдЯ рдЧрд▓рдд рдкрд╣реБрдБрдЪ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрди "рдкреНрд░рдХрд╛рд░" рд╡рд┐рд╢реЗрд╖рддрд╛ рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдПрд░реЗрдХреЛ рд╕реАрдорд╛ рдмрд╛рд╣рд┐рд░рдХреЛ рдХреНрд╖реЗрддреНрд░рдорд╛ рдорд╛рдирд╣рд░реВ рд▓реЗрдЦреНрджрд╛ред рд╡рд┐рд╢реЗрд╖ рд╕рдВрд╕реНрдХрд░рдг рдирдореНрдмрд░рд╣рд░реВрдХреЛ рд╕рд╛рде ELF рдлрд╛рдЗрд▓рдорд╛ рд╕рдореНрдмрджреНрдз рдкреНрд░рддреАрдХрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ "symver" рд╡рд┐рд╢реЗрд╖рддрд╛ рдкрдирд┐ рдердкрд┐рдПрдХреЛ рдЫред
  • рдирдпрд╛рдБ рдЪреЗрддрд╛рд╡рдиреА рдердкрд┐рдпреЛ:
    • "-Wstring-compare" ("-Wextra" рдХреЛ рд╕рд╛рде рд╕рдХреНрд╖рдо) - рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рд╣рд░реВрдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐рдХреЛ рдмрд╛рд░реЗрдорд╛ рдЪреЗрддрд╛рд╡рдиреА рджрд┐рдиреНрдЫ рдЬрд╕рдорд╛ рд╢реВрдиреНрдпрд▓рд╛рдИ strcmp рд░ strncmp рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ рдХрд▓ рдЧрд░реНрдиреЗ рдкрд░рд┐рдгрд╛рдорд╕рдБрдЧ рддреБрд▓рдирд╛ рдЧрд░рд┐рдиреНрдЫ, рдЬреБрди рд▓рдореНрдмрд╛рдЗрдХреЛ рдХрд╛рд░рдгрд▓реЗ рд╕реНрдерд┐рд░рд╕рдБрдЧ рдмрд░рд╛рдмрд░ рд╣реБрдиреНрдЫред рдПрдЙрдЯрд╛ рдЖрд░реНрдЧреБрдореЗрдиреНрдЯ рджреЛрд╕реНрд░реЛ рдЖрд░реНрдЧреБрдореЗрдиреНрдЯрдХреЛ рдПрд░реЗрдХреЛ рд╕рд╛рдЗрдЬ рднрдиреНрджрд╛ рдареВрд▓реЛ рд╣реБрдиреНрдЫред
    • "-Wzero-length-bounds" ("-Warray-bounds" рд╕рдБрдЧ рд╕рдХреНрд╖рдо рдЧрд░рд┐рдПрдХреЛ) - рд╢реВрдиреНрдп рд▓рдореНрдмрд╛рдЗрдХреЛ рдПрд░реЗ рддрддреНрд╡рд╣рд░реВ рдкрд╣реБрдБрдЪ рдЧрд░реНрдиреЗ рдмрд╛рд░реЗ рдЪреЗрддрд╛рд╡рдиреА рджрд┐рдиреНрдЫ, рдЬрд╕рд▓реЗ рдЕрдиреНрдп рдбрд╛рдЯрд╛рд▓рд╛рдИ рдЕрдзрд┐рд▓реЗрдЦрди рдЧрд░реНрди рд╕рдХреНрдЫред
    • "-рд╡рд╛рд░-рдмрд╛рдЙрдиреНрдбрд╣рд░реВ", "-Wformat-overflow", "-Wrestrict", "-Wreturn-local-addr" рд░ "-Wstringop-overflow" рдЪреЗрддрд╛рд╡рдиреАрд╣рд░реВрд▓рд╛рдИ рд╕реАрдорд╛ рдмрд╛рд╣рд┐рд░рдХрд╛ рдЕрд╡рд╕реНрдерд╛рд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрди рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫред рдЬрд╕рд▓рд╛рдИ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░рд┐рдиреНрдЫред
  • UCN рдиреЛрдЯреЗрд╢рди (\uNNNN рд╡рд╛ \UNNNNNNNN) рдХреЛ рд╕рдЯреНрдЯрд╛ рд╣рд╛рд▓рдХреЛ рдПрдиреНрдХреЛрдбрд┐рдЩ (рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ UTF-8) рдкреНрд░рдпреЛрдЧ рдЧрд░реА рдкрд╣рд┐рдЪрд╛рдирдХрд░реНрддрд╛рд╣рд░реВрдорд╛ рдлрд░рд╛рдХрд┐рд▓реЛ рд╡рд░реНрдгрд╣рд░реВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рд▓рд╛рдЧреВ рдЧрд░рд┐рдпреЛред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐:

    рд╕реНрдерд┐рд░ const int ╧А = 3;
    int get_na├пve_pi() {
    рдлрд┐рд░реНрддрд╛ ╧А;
    }

  • C рднрд╛рд╖рд╛рдХреЛ рд▓рд╛рдЧрд┐, C2X рдорд╛рдирдХ рднрд┐рддреНрд░ рд╡рд┐рдХрд╕рд┐рдд рдирдпрд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВрдХреЛ рдПрдХ рднрд╛рдЧ рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫ (-std=c2x рд░ -std=gnu2x рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реЗрд░ рд╕рдХреНрд╖рдо рдкрд╛рд░рд┐рдПрдХреЛ рдЫ): "[[]]" рд╕рд┐рдиреНрдЯреНрдпрд╛рдХреНрд╕рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рд╡рд┐рд╢реЗрд╖рддрд╛рд╣рд░реВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рджреЗрдЦрд╛ рдкрд░реЗрдХреЛ рдЫред C++ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, [[gnu ::const]], [[ deprecated]], [[fallthrough]] рд░ [[maybe_unused]]ред UTF-8 рд╡рд░реНрдгрд╣рд░реВрд╕рдБрдЧ рд╕реНрдерд┐рд░рддрд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрди "u8" рд╕рд┐рдиреНрдЯреНрдпрд╛рдХреНрд╕рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛред
    рдорд╛ рдирдпрд╛рдБ рдореНрдпрд╛рдХреНрд░реЛ рдердкрд┐рдпреЛ ред strftime рдорд╛ "%OB" рд░ "%Ob" рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрдирд╣рд░реВ рдердкрд┐рдпреЛред

  • C рдХреЛ рд▓рд╛рдЧрд┐ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдореЛрдб "-fno-common" рд╣реЛ, рдЬрд╕рд▓реЗ рдХреЗрд╣реА рдкреНрд▓реЗрдЯрдлрд░реНрдорд╣рд░реВрдорд╛ рд╡рд┐рд╢реНрд╡рд╡реНрдпрд╛рдкреА рдЪрд░рд╣рд░реВрдорд╛ рдердк рдкреНрд░рднрд╛рд╡рдХрд╛рд░реА рдкрд╣реБрдБрдЪрдХреЛ рд▓рд╛рдЧрд┐ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред
  • C++ рдХреЛ рд▓рд╛рдЧрд┐, рд▓рдЧрднрдЧ 16 рдкрд░рд┐рд╡рд░реНрддрди рд░ рдирд╡рд╛рдЪрд╛рд░рд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫ, C++20 рдорд╛рдирдХрдорд╛ рд╡рд┐рдХрд╕рд┐рддред рдердкрд┐рдПрдХреЛ рдХреБрдЮреНрдЬреА рд╢рдмреНрдж "constinit" рд╕рд╣рд┐рдд
    рд░ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╡рд┐рд╕реНрддрд╛рд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдЧрд░рд┐рдПрдХреЛ рдЫ "рдЕрд╡рдзрд╛рд░рдгрд╛"ред рдЕрд╡рдзрд╛рд░рдгрд╛рд╣рд░реВрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВрдХреЛ рд╕реЗрдЯ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рдЬреБрди, рдХрдореНрдкрд╛рдЗрд▓ рд╕рдордпрдорд╛, рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВрдХреЛ рд░реВрдкрдорд╛ рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрди рд╕рдХрд┐рдиреЗ рддрд░реНрдХрд╣рд░реВрдХреЛ рд╕реЗрдЯрд▓рд╛рдИ рд╕реАрдорд┐рдд рдЧрд░реНрджрдЫред рдЯреЗрдореНрдкреНрд▓реЗрдЯ рднрд┐рддреНрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдПрдХрд╛ рдбрд╛рдЯрд╛ рдкреНрд░рдХрд╛рд░рдХрд╛ рдЧреБрдгрд╣рд░реВ рд░ рдЗрдирдкреБрдЯ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВрдХреЛ рдбрд╛рдЯрд╛ рдкреНрд░рдХрд╛рд░ рдЧреБрдгрд╣рд░реВ рдмреАрдЪ рддрд╛рд░реНрдХрд┐рдХ рдЕрд╕рдВрдЧрддрд┐рд╣рд░реВрдмрд╛рдЯ рдмрдЪреНрди рдЕрд╡рдзрд╛рд░рдгрд╛рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред

  • G++ рд▓реЗ constexpr рдорд╛рд░реНрдлрдд рд╕реНрдерд┐рд░ рд╡рд╕реНрддреБрд╣рд░реВ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрджрд╛ рд╣реБрдиреЗ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░рдХреЛ рдкрд╣рд┐рдЪрд╛рди рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред constexpr рдЧрдгрдирд╛ рдЧрд░реНрджрд╛ рдХрдореНрдкрд╛рдЗрд▓рд░ рджреНрд╡рд╛рд░рд╛ рдореЗрдореЛрд░реА рдЦрдкрдд рдШрдЯреНрдпреЛред рдирдпрд╛рдБ рдЪреЗрддрд╛рд╡рдиреА "-Wmismatched-tags" рд░ "-Wredundant-tags" рдердкрд┐рдпреЛред
  • рдирдпрд╛рдБ рдЖрджреЗрд╢ рд▓рд╛рдЗрди рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдПрдХреЛ рдЫ:
    • "-fallocation-dce" "рдирдпрд╛рдБ" рд░ "рдореЗрдЯрд╛рдЙрдиреЗ" рдЕрдкрд░реЗрдЯрд░рд╣рд░реВрдХреЛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЬреЛрдбреА рд╣рдЯрд╛рдЙрдиред
    • "-fprofile-partial-training" рдХреЛрдбрдХреЛ рд▓рд╛рдЧрд┐ рд╕рд╛рдЗрдЬ рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рди рдЕрд╕рдХреНрд╖рдо рдЧрд░реНрди рдЬрд╕рдорд╛ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдЪрд▓реНрджреИрдиред
    • "-рдкреНрд░реЛрдлрд╛рдЗрд▓ рдкреНрд░рдЬрдирди рдХреНрд╖рдорддрд╛рдХреЛ рд╕реНрддрд░ рдирд┐рдпрдиреНрддреНрд░рдг рдЧрд░реНрди fprofile-reproducibleред
    • "-fprofile-prefix-path" рдЕрд▓рдЧ рдкреНрд░реЛрдлрд╛рдЗрд▓ рдЙрддреНрдкрд╛рджрдирдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдПрдХреЛ рдЖрдзрд╛рд░ рд╕реНрд░реЛрдд рдирд┐рд░реНрдорд╛рдг рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрди ("-fprofile-generate=profile_dir" рд░ "-fprofile-use=profile_dir" рдХреЛ рд▓рд╛рдЧрд┐)ред
  • рдЙрд▓реНрд▓реЗрдЦ рдЧрд░рд┐рдПрдХрд╛ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЪреЗрддрд╛рд╡рдиреА рдкрд╛рдардорд╛, рд╣рд╛рдЗрдкрд░рд▓рд┐рдЩреНрдХрд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░рд┐рдиреНрдЫ рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдпреА рд╡рд┐рдХрд▓реНрдкрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдХрд╛рдЧрдЬрд╛рддрд╣рд░реВрдорд╛ рдЬрд╛рди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред URL рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди "-fdiagnostics-urls" рд╡рд┐рдХрд▓реНрдк рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдирд┐рдпрдиреНрддреНрд░рдг рдЧрд░рд┐рдиреНрдЫред
  • рдкреНрд░рд┐рдкреНрд░реЛрд╕реЗрд╕рд░ рдЕрдкрд░реЗрдЯрд░ рдердкрд┐рдпреЛ "__has_builtin", рдЬреБрди рдмрд┐рд▓реНрдЯ-рдЗрди рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ рдЬрд╛рдБрдЪ рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред
  • ISO/IEC TS 18661 рд╕реНрдкреЗрд╕рд┐рдлрд┐рдХреЗрд╢рдирдорд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд░рд╛рдЙрдиреНрдбрд┐рдЩ рдкреНрд░рдХрд╛рд░реНрдпрдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд╕рд╛рде рдПрдЙрдЯрд╛ рдирдпрд╛рдБ рдмрд┐рд▓реНрдЯ-рдЗрди рдкреНрд░рдХрд╛рд░реНрдп "__builtin_roundeven" рдердкрд┐рдпреЛ, "рд░рд╛рдЙрдиреНрдб" рдЬрд╕реНрддреИ, рддрд░ реж.рел рднрдиреНрджрд╛ рдХрдо рдорд╛рдерд┐ (рдареВрд▓реЛ рдорд╛рдирдорд╛) рд░рд╛рдЙрдиреНрдбрд┐рдЩ рднрд╛рдЧ реж.рел рднрдиреНрджрд╛ рдХрдоред - рддрд▓ (рд╢реВрдиреНрдпрдорд╛), рд░ реж.рел рдмрд░рд╛рдмрд░ - рдЙрдкрд╛рдиреНрддреНрдп рдЕрдВрдХрдХреЛ рд╕рдорд╛рдирддрд╛рдмрд╛рдЯ рд╕реБрд░реБ рд╣реБрдБрджреИред
  • AArch64 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдХреЛ рд▓рд╛рдЧрд┐, SVE2 рд╡рд┐рд╕реНрддрд╛рд░рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдПрдХреЛ рдЫ рд░ SVE (рд╕реНрдХреЗрд▓реЗрдмрд▓ рднреЗрдХреНрдЯрд░ рдПрдХреНрд╕рдЯреЗрдиреНрд╕рди) рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рд╕реБрдзрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдирд┐рд░реНрдорд┐рдд SVE ACLE рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ рд░ рдкреНрд░рдХрд╛рд░рд╣рд░реВ, рд░ рднреЗрдХреНрдЯрд░рд╛рдЗрдЬреЗрд╢рдирдХреЛ рдкреНрд░рдпреЛрдЧрдХреЛ рд▓рд╛рдЧрд┐ рдердк рд╕рдорд░реНрдерди рд╕рд╣рд┐рддред LSE (рдареВрд▓реЛ рдкреНрд░рдгрд╛рд▓реА рд╡рд┐рд╕реНрддрд╛рд░) рд░ TME (рдЯреНрд░рд╛рдиреНрдЬреЗрдХреНрд╢рдирд▓ рдореЗрдореЛрд░реА рдПрдХреНрд╕рдЯреЗрдиреНрд╕рди) рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдЫред Armv8.5-A рд░ Armv8.6-A рдорд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдирдпрд╛рдБ рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рдердкрд┐рдпреЛ, рдЕрдирд┐рдпрдорд┐рдд рд╕рдВрдЦреНрдпрд╛ рдЙрддреНрдкрд╛рджрди, рд░рд╛рдЙрдиреНрдбрд┐рдЩ, рдореЗрдореЛрд░реА рдЯреНрдпрд╛рдЧ рдмрд╛рдЗрдиреНрдбрд┐рдЩрдХрд╛ рд▓рд╛рдЧрд┐ рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рд╕рд╣рд┐рдд,
    bfloat16 рд░ рдореНрдпрд╛рдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрдиред рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛ
    рдЖрд░реНрдо рдХреЛрд░реНрдЯреЗрдХреНрд╕-рдПренрен,
    рдЖрд░реНрдо рдХреЛрд░реНрдЯреЗрдХреНрд╕-A76AE,
    рдЖрд░реНрдо рдХреЛрд░реНрдЯреЗрдХреНрд╕-рдПренрен,
    рдЖрд░реНрдо рдХреЛрд░реНрдЯреЗрдХреНрд╕-A65AE,
    рдЖрд░реНрдо рдХреЛрд░реНрдЯреЗрдХреНрд╕-A34 рд░
    Marvell ThunderX3ред

  • ARM32 рдХреЛ рд▓рд╛рдЧрд┐ ABI FDPIC (64-bit рдкреНрд░рдХрд╛рд░реНрдп рд╕реВрдЪрдХрд╣рд░реВ) рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛред 64-рдмрд┐рдЯ рдкреВрд░реНрдгрд╛рдВрдХ рдХрд╛рд░реНрдпрд╣рд░реВрдХреЛ рдкреБрди: рдбрд┐рдЬрд╛рдЗрди рд░ рдЕрдиреБрдХреВрд▓рд┐рдд рдкреНрд░рд╢реЛрдзрдиред CPU рд╕рдорд░реНрдерди рдердкрд┐рдпреЛ
    рдЖрд░реНрдо рдХреЛрд░реНрдЯреЗрдХреНрд╕-рдПренрен,
    рдЖрд░реНрдо рдХреЛрд░реНрдЯреЗрдХреНрд╕-A76AE рд░
    рдЖрд░реНрдо рдХреЛрд░реНрдЯреЗрдХреНрд╕-M35Pред ACLE рдбрд╛рдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдЩ рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╕рдорд░реНрдерди, 32-bit SIMD, 16-bit рдЧреБрдгрди, latch рдЕрдВрдХрдЧрдгрд┐рдд, рд░ рдЕрдиреНрдп DSP рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдЕрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╕рдирд╣рд░реВ рд╕рд╣рд┐рддред ACLE CDE (рдХрд╕реНрдЯрдо рдбрд╛рдЯрд╛рдкрд╛рде рдПрдХреНрд╕рдЯреЗрдиреНрд╕рди) рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛред

  • GCN рдорд╛рдЗрдХреНрд░реЛрдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдорд╛ рдЖрдзрд╛рд░рд┐рдд AMD GPU рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдмреНрдпрд╛рдХрдЗрдиреНрдбрдорд╛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд░реВрдкрдорд╛ рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдХреЛрдб рдЙрддреНрдкрд╛рджрди рд░ рднреЗрдХреНрдЯрд░рд╛рдЗрдЬреЗрд╢рдиред
  • AVR рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдХреЛ рд▓рд╛рдЧрд┐ XMEGA-рдЬрд╕реНрддреЛ рдЙрдкрдХрд░рдгрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛ
    ATtiny202, ATtiny204, ATtiny402, ATtiny404, ATtiny406, ATtiny804, ATtiny806, ATtiny807, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny808, ATtiny809, ATmega1608, ATmega1609,ATmega3208,ATmega3209 4808, ATmega4809, ATmegaXNUMX XNUMX, ATmegaXNUMX рд░ ATmegaXNUMXред

  • IA-32/x86-64 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдирдпрд╛рдБ Intel ENQCMD рдирд┐рд░реНрджреЗрд╢рди рд╕реЗрдЯ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рд╡рд┐рд╕реНрддрд╛рд░ (-menqcmd) рдердкрд┐рдПрдХреЛ рдЫред Intel Cooperlake (-march=cooperlake, AVX512BF16 ISA рдПрдХреНрд╕реНрдЯреЗрдиреНрд╕рди рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫ) рд░ Tigerlake (-march=tigerlake, MOVDIRI, MOVDIR64B рд░ AVX512VP2INTERSECT ISA рд╡рд┐рд╕реНрддрд╛рд░рд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫ) CPU рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛред
  • HSA рд╡рд╛рд╕реНрддреБрдХрд▓рд╛рдорд╛ рдЖрдзрд╛рд░рд┐рдд рд╡рд┐рд╖рдо рдХрдореНрдкреНрдпреБрдЯрд┐рдЩ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ HSAIL (Heterogeneous System Architecture Intermediate Language) рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣рдЯрд╛рдЗрдПрдХреЛ рдЫ рд░ рд╕рдореНрднрд╡рддрдГ рднрд╡рд┐рд╖реНрдпрдХреЛ рд░рд┐рд▓реАрдЬрдорд╛ рд╣рдЯрд╛рдЗрдиреЗрдЫред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди