Add ktx
This commit is contained in:
+105
@@ -0,0 +1,105 @@
|
||||
# 5.x series change log
|
||||
|
||||
This page summarizes the major functional and performance changes in each
|
||||
release of the 5.x series.
|
||||
|
||||
All performance data on this page is measured on an Intel Core i5-9600K
|
||||
clocked at 4.2 GHz, running `astcenc` using AVX2 and 6 threads.
|
||||
|
||||
<!-- ---------------------------------------------------------------------- -->
|
||||
## 5.3.0
|
||||
|
||||
**Status:** March 2025
|
||||
|
||||
The 5.3.0 release is a minor maintenance release.
|
||||
|
||||
* **General:**
|
||||
* **Feature:** Reference C builds (`ASTCENC_ISA_NONE`) now support compiling
|
||||
for big-endian CPUs. Compile with `-DASTCENC_BIG_ENDIAN=ON` when compiling
|
||||
for a big-endian target; it is not auto-detected.
|
||||
* **Improvement:** Builds using GCC now specify `-flto=auto` to allow
|
||||
parallel link steps, and remove the log warnings about not setting a CPU
|
||||
count parameter value.
|
||||
* **Bug fix:** Builds using MSVC `cl.exe` that do not specify an explicit
|
||||
ISA using the preprocessor configuration defines will now correctly
|
||||
default to the SSE2 backend on x86-64 and the NEON backend on Arm64. Previously they would have defaulted to the reference C implementation,
|
||||
which is around 3.25 times slower.
|
||||
|
||||
|
||||
<!-- ---------------------------------------------------------------------- -->
|
||||
## 5.2.0
|
||||
|
||||
**Status:** February 2025
|
||||
|
||||
The 5.2.0 release is a minor maintenance release.
|
||||
|
||||
This release includes changes to the public interface in the `astcenc.h`
|
||||
header. We always recommend rebuilding your client-side code using the
|
||||
header from the same release to avoid compatibility issues.
|
||||
|
||||
* **General:**
|
||||
* **Change:** Changed sRGB alpha channel endpoint expansion to match the
|
||||
revised Khronos Data Format Specification (v1.4.0), which reverts an
|
||||
unintended specification change. Compared to previous releases, this change
|
||||
can cause LSB bit differences in the alpha channel of compressed images.
|
||||
* **Feature:** Arm64 builds for Linux added to the GitHub Actions builds, and
|
||||
Arm64 binaries for NEON, 128-bit SVE 128 and 256-bit SVE added to release
|
||||
builds.
|
||||
* **Feature:** Added a new codec API, `astcenc_compress_cancel()`, which can
|
||||
be used to cancel an in-flight compression. This is designed to help make
|
||||
it easier to integrate the codec into an interactive user interface that
|
||||
can respond to user events with low latency.
|
||||
* **Bug fix:** Removed incorrect `static` variable qualifier, which could
|
||||
result in an incorrect `tune_mse_overshoot` heuristic threshold being used
|
||||
if a user ran multiple concurrent compressions with different settings.
|
||||
|
||||
<!-- ---------------------------------------------------------------------- -->
|
||||
## 5.1.0
|
||||
|
||||
**Status:** November 2024
|
||||
|
||||
The 5.1.0 release is an optimization release, giving moderate performance
|
||||
improvements on all platforms. There are no image quality differences.
|
||||
|
||||
* **General:**
|
||||
* **Feature:** Added a new CMake build option to control use of native
|
||||
gathers, as they can be slower than scalar loads on some common x86
|
||||
microarchitectures. Build with `-DASTCENC_X86_GATHERS=OFF` to disable use
|
||||
of native gathers in AVX2 builds.
|
||||
* **Optimization:** Added new `gather()` abstraction for gathers using byte
|
||||
indices, allowing implementations without gather hardware to skip the
|
||||
byte-to-int index conversion.
|
||||
* **Optimization:** Optimized `compute_lowest_and_highest_weight()` to
|
||||
pre-compute min/max outside of the main loop.
|
||||
* **Optimization:** Added improved intrinsics sequence for SSE and AVX2
|
||||
integer `hmin()` and `hmax()`.
|
||||
* **Optimization:** Added improved intrinsics sequence for `vint4(uint8_t*)`
|
||||
on systems implementing Arm SVE.
|
||||
|
||||
<!-- ---------------------------------------------------------------------- -->
|
||||
## 5.0.0
|
||||
|
||||
**Status:** November 2024
|
||||
|
||||
The 5.0.0 release is the first stable release in the 5.x series. The main new
|
||||
feature is support for the Arm Scalable Vector Extensions (SVE) SIMD instruction
|
||||
set.
|
||||
|
||||
* **General:**
|
||||
* **Bug fix:** Fixed incorrect return type in "None" vector library
|
||||
reference implementation.
|
||||
* **Bug fix:** Fixed sincos table index under/overflow.
|
||||
* **Feature:** Changed `ASTCENC_ISA_NATIVE` builds to use `-march=native` and
|
||||
`-mcpu=native`.
|
||||
* **Feature:** Added backend for Arm SVE fixed-width 256-bit builds. These
|
||||
can only run on hardware implementing 256-bit SVE.
|
||||
* **Feature:** Added backend for Arm SVE 128-bit builds. These are portable
|
||||
builds and can run on hardware implementing any SVE vector length, but the
|
||||
explicit SVE use is augmented NEON and will only use the bottom 128-bits of
|
||||
each SVE vector.
|
||||
* **Feature:** Optimized NEON mask `any()` and `all()` functions.
|
||||
* **Feature:** Migrated build and test to GitHub Actions pipelines.
|
||||
|
||||
- - -
|
||||
|
||||
_Copyright © 2022-2025, Arm Limited and contributors. All rights reserved._
|
||||
Reference in New Issue
Block a user