Skip to content

Releases: intel/intel-graphics-compiler

igc-1.0.10778

31 Mar 09:33
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • Add type to Parameter Attributes which change in LLVM12
  • Fixed wrong execLaneMask when execSize is 32
  • Utils to create read/write_variable_region
  • Change max ARG and RET size
  • Process unrolling threshold in VC
  • IGC Stackcall Spec Changes
  • Add support of RuntimeValue vectors: RuntimeValueLegalizationPass adjustment
  • Move IndexFlattener to GenX Utils library
  • Add offset to load coordinates
  • Update IGC metrics output format
  • Fix the bug to use LSC for spill/fill in linear scan RA
  • Fix dst decl of sqrt translation
  • Local atomic fmin, fmax were rewritten for performance increase
  • Fix clobbered R0 in the payload section

igc-1.0.10713...igc-1.0.10778

Dependencies revisions

Project Branch Revision
opencl-clang ocl-open-110 1815034e3
SPIRV-LLVM-Translator llvm_release_110 99420daab
SPIRV-Tools master sdk-1.3.204.1
SPIRV-Headers master sdk-1.3.204.1
vc-intrinsics master v0.1.0
LLVM project release/11.x llvmorg-11.1.0

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.

igc-1.0.10713

24 Mar 08:41
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • Added support of RuntimeValue vectors: RuntimeValueLegalizationPass adjustment,
  • vISA LocalScheduler: add 6-instructions-latency to WAR dependency to a send,
  • LSC spill/fill support in linear scan RA,
  • Adding Raytracing support,
  • Refactored and update typed atomic implementation,
  • Adding more OpenCL builtins extensions,
  • Fixed a bug in indirect spill/fill,
  • Introduced CCLANG_INSTALL_PREBUILDS_DIR option,
  • Introduced env flag and internal option for loop unroll threshold in VC,
  • Fixed debug print for empty locations,
  • Deprecated the uses of vISA::numEltPerGRF APIs in DebugInfo,
  • Added support of RuntimeValue vectors: correct size for payload calculation,
  • Added SPIRV-Tools prebuild support,
  • Local atomic fetch_add was rewritten for performance increase,
  • Added support for SPIR-V ceil, floor and trunc,
  • Fixing finding LLVM directory when compiling LLVM prebuild,
  • Added intrinsics for reading/writing to vISA variables,
  • Added support for @llvm.abs,
  • @llvm.stacksave support fix,
  • Updated Github Actions IGC build types,
  • IGA: GED update to 0.105,
  • Other minor fixes and improvements.

igc-1.0.10409...igc-1.0.10713

Dependencies revisions

Project Branch Revision
opencl-clang ocl-open-110 1815034e3
SPIRV-LLVM-Translator llvm_release_110 99420daab
SPIRV-Tools master sdk-1.3.204.1
SPIRV-Headers master sdk-1.3.204.1
vc-intrinsics master v0.1.0
LLVM project release/11.x llvmorg-11.1.0

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.

igc-1.0.10409

04 Mar 11:38
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • Replace calls to kernels when looping through a copied collection of users
  • Enable abort on spill for linear Scan RA
  • Merge uav writes from branches
  • Other minor fixes and improvements.

igc-1.0.10395...igc-1.0.10409

Dependencies revisions

Project Branch Revision
opencl-clang ocl-open-110 50bf6d75
SPIRV-LLVM-Translator llvm_release_110 cf681c88
SPIRV-Tools master eeb973f5
SPIRV-Headers master ae217c17
vc-intrinsics master v0.1.0
LLVM project release/11.x llvmorg-11.1.0

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.

igc-1.0.10395

23 Feb 12:36
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • Support for cl_intel_bfloat16_conversions.
  • Improve Global Address Space resolution.
  • Handle vector bitcasts in loads simplification
  • Enable _ocl_dbg* variables in -O2 -g.
  • Extending indirect stateless buffer promotion.
  • Add ability to compile ELF directly to genBinary.
  • Add an ability to disable generation of vISA LOC/FILE by VC.
  • Support for HostAccessINTEL decoration.
  • Support SPV_INTEL_split_barrier and cl_intel_split_work_group_barrier extensions.
  • Adding a possibility to set ShaderOverridePath.
  • Transform SPV_INTEL_uniform_group_instructions into SPV_KHR_uniform_group_instructions.

igc-1.0.10200...igc-1.0.10395

Dependencies revisions

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.

igc-1.0.10200

18 Feb 12:54
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • Fix compilation error with GCC 12
  • Remove redundant vector CMCL builtins declarations
  • printf implementation with high-level interfaces
  • VC produces debuggable kernels by default
  • Support ptrtoint constexpr in GV initializers
  • Applied m16 on a0 init
  • Moved KernelInfo to GenX Utils library
  • Fixed dependencies handling in genx printer
  • Added support of SPIRV floating point fma via CMCL in VC
  • SGInvoke: fix for WA when DumpToCurrentDir flag is set
  • Added PVC specific named barriers handling
  • Improve dump of values in pass printer
  • Other minor fixes and improvements.

igc-1.0.10183...igc-1.0.10200

Dependencies revisions

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.

igc-1.0.10183

09 Feb 17:29
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • Adding DG2 & PVC intrinscs

  • Adding more DG2 & PVC code

  • Make spill cleanup less aggressive.

  • Correctly handle llvm::Expected in vISA linker

  • Fold bitcasts to rdregion/wrregion by changing region parameters

  • Enable madw use in i64 mul emulator

  • SIP update DG2/XeHP SDV

  • Enable MergeURBReads pass

  • Refactor builtins operating on images and samplers

  • Support abs and fabs instructions

  • Support fp16 type for OpAtomicLoad, OpAtomicStore and OpAtomicExchange

  • Support printf strings in global addrspace

  • Introducing 2d stateless support for LSC

  • Fix PrivateMemoryResolution pass for XeHP and later

  • Create a GenISA intrinsic for native Mad instructions

  • Fixed problem with resolved values caching in JointMatrix resolution pass

  • Other minor fixes and improvements.

igc-1.0.9933...igc-1.0.10183

Dependencies revisions

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.

igc-1.0.9933

03 Jan 15:52
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • Tighten legalization rules for EU fusion platforms
  • Extend VC shader dumps to include more DebugInfo-related information
  • Add runtime symbol "INTEL_PATCH_CROSS_THREAD_OFFSET_OFF_R0" in ZEBIN.
  • Add option for disabling extra coalescing in VC backend
  • Add symbols of function declarations to ZeBin
  • Add EU fusion feature to appropriate targets.
  • Add support of SPIRV floating point mad via CMCL in VC
  • Add GenXPredRegionLowering pass
  • Add debug info support for global variables.
  • Add tests for function groups construction
  • ZEBinary: add thread_scheduling_mode to execution environment
  • ZEBIN: Merge ZEINFO byval payload arguments when possible.
  • Add JointMatrixINTEL fill and slicing operations.
  • Remove emitting ld_lz when not supported
  • Better private memory estimate for indirect calls
  • Disable explicit creation of ISCCP by VC
  • Support KHR SPIRV Friendly IR for OpBitCount
  • IGA: ARF_ACC layout update and better tool help message
  • ZEBIN: Set ELF section flags for TEXT/DATA/BSS sections.
  • Disable constant coalescing for retry
  • Add Alchemist (aka ACM, DG2) & PVC related methods in Platforms.hpp
  • ZEBIN: Add source_offset to zeinfo payload argument.
  • Update SPV_INTEL_hw_thread_queries to latest version.
  • Respect fp32-correctly-rounded-divide-sqrt flag when Scalar IGC uses Khronos SPIRV Translator
  • Support KHR SPIRV Friendly IR for SPV_INTEL_media_block_io
  • Add support for exclusion of IR from zebin output
  • Temporary switch off preemption for ICLLP due to regressions
  • Mark invoke_simd targets with LTO_InvokeOptTarget attribute
  • Better private memory estimate for indirect calls
  • Expose vISA LTO options to IGC
  • do not reserve Sampler with IDX=0 when debuggability is enabled
  • Add DirectCallsOnly flag
  • Support implicit args buffer in CMImplParam
  • Add subtarget info memeber into GenXLoadStoreLowering pass
  • Support 32-bit addressing in Load Store Lowering
  • Enhance the preRA flag remat to sink trivial flag evaluation.
  • ZEBinary: must not generate const/global base implicit arguments
  • Address class pattern detected & removed later in IGC pass
  • VC should produce debuggable kernels by default
  • Detect uniform invoke_simd arguments
  • introduce VC controls for codegen optimization level
  • extend VC backend controls related to debuggability
  • More dumps available for GenXLiveness
  • Support printf strings section in zebin
  • Support for DPAS sizes in DPC++ joint_matrix for sizes 1, 3, 5, 7.
  • sginvoke: pass ESIMD text visa assembly in the input of SPMD compilation
  • Introducing DG2 and PVC support for VC
  • SWSB: Remove an unused field in SBBucketDesc.
  • SWSB: Set the correct LB and RB of ACC footprint on creation.

Full changelog: igc-1.0.9636...igc-1.0.9933

Dependencies revisions

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.

igc-1.0.9636

22 Dec 13:24
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • vISA: Add DG2 and PVC support
  • Update SPIRV-LLVM-Translator revision for VC
  • Fixup filenames for auxiliary shader dumps produced by VC
  • Added SPV_INTEL_hw_thread_queries support
  • VC: Generate debug information if exists in IR
  • Max stack call private memory usage deduction from callgraph analysis
  • vISA: Fixed the dependence issue between new dataport and other send messages in scheduler
  • Updated GTpin enums
  • Enabled dumping SPIRV before translation to LLVM
  • Prevent memory optimization if function has optnone attribute
  • Put indirectly called functions to separate section
  • Other fixes and improvements

igc-1.0.9441...igc-1.0.9636

Dependencies revisions

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.

igc-1.0.9441

02 Dec 13:37
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • Improve redundant phi elimination
  • Fixing uninitialized vISA use
  • Populate vISA assembly in zeBinary
  • Added first files for DG2 & PVC
  • Fix the issue in SWSB dependence reduction for DPAS
  • Other minor fixes and improvements.

igc-1.0.9389...igc-1.0.9441

Dependencies revisions

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.

igc-1.0.9389

23 Nov 16:12
Compare
Choose a tag to compare

Fixed Issues / Improvements

  • Local data flow analysis for AddrExp
  • Implement support for KHR SPV-IR for OpEnqueueKernel opcode
  • Call SPIRV builtins instead of OCL builtins in spinlock handling
  • Enable LowerFma pass for OpenCL
  • Visa Linker Driver: leave declaration of ESIMD function inside SPMD module
  • BinaryEncodingIGA: Minor refactoring for regName in src creation
  • Enforce HW conformity for BF mixed mode
  • ZEBinary: Fix gtpin_info section generation
  • Store-to-load forwarding for arguments storing on stacks (LTO)
  • Don't use relocation for global variables in kernel functions
  • Automatic detection of SPMD, ESIMD and SPMD+ESIMD SPIR-V modules
  • Bring VC calling conv in line with IGC conv
  • Added a patch for LLVM12+IGC debug build.
  • Implement support for KHR SPV-IR for select functions from OpenCL Extended Instruction Set
  • Introducing internal options to control 64-bit emulation
  • Improve symbol relocation compile time
  • VC now generates debug information for implicit arguments
  • IGC: Remove vector of annotations for global/const buffers
  • VC now generates debug info for localized globals
  • cmabi should not set alignment when it's not needed
  • Add unsinged MAD operation for JointMatrixINTEL.

Full Changelog: igc-1.0.9289...igc-1.0.9389

Dependencies revisions

Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.