Previous Versions

The current release is v1.4.10 (2026-08-20). The one before it is shown below, and every release keeps its own permanent page.

v1.4.9 (2026-07-23)

Download

Important Notes

  • CXL 1.1 (RCD) enumeration on SPR host — Now supported (reboot not yet supported; planned for the next release).
  • Mailbox payload 8-byte write — Fixed a bug where 8-byte writes to the Mailbox payload region did not behave correctly.
  • HDM Range Register base = 0 handling — Fixed the device to correctly treat a Range Register Base value of 0 as a valid HPA.
pxcc
  • pxcc is experimental and subject to change without deprecation. Please check the documentation for the latest updates.
pxl
  • Every device allocation now rounds up to a 64B multiple: sub-64B requests consume a full cache line each, and mid-band size classes (80/96/112/160/224…) round up to the next line-multiple class. Internal fragmentation trades off against multi-thread correctness. Set PXL_DEBUG_CACHE_LINE_ALIGN=0 to restore old packing for measurement.

New

docs
  • Added documentation for the experimental pxcc heterogeneous C/C++ compiler (available from v1.4.8) — getting-started tutorial, programming model, compiler reference, and troubleshooting.
emulator
  • Support real time file push & pop.
pxcc
  • Added opt-in incremental compilation cache, which is independent of cmake, ninja system. Set the PXCC_CACHE_DIR environment variable to reuse previously produced objects for unchanged source files.
pxl
  • Added reallocateMemory / Context::memRealloc to resize an existing device allocation — resized in place when possible (same size class, free forward neighbor, or shrink), otherwise relocated with a copy. Supports sub-allocated, direct, scatter, and IoMem sources.

Changed

pxcc
  • Major improvements to device code extraction accuracy: Fixed numerous compilation errors during device code generation, including duplicate extraction related to __mu_shared__, duplicate friend functions, annotation conflicts, and variadic templates.
  • Build system reliability improvements: Fixed issues where the build system failed to detect failures, such as residual .o files after device compilation failures and linker incorrectly returning exit code 0.
  • Host/device data consistency guarantees: Fixed silent corruption bugs including struct layout mismatches caused by missing __attribute__((packed)), and runtime string corruption caused by incorrect deletion of annotation keywords inside strings/comments.
  • Dependency tracking and preprocessor accuracy improvements: Fixed preprocessor and dependency-related bugs including -MQ/-MT multiple flag handling, missing type tracking within template arguments, variadic macro reconstruction, -include-pch misparsing, and UTF-8 BOM handling.
  • #line directive and header matching improvements: Fixed #line parsing errors for file paths containing colons, and include matching issues where declarations between headers sharing the same basename were incorrectly linked.
pxl
  • Removed Job::subAlloc / subAlloc(numSub) / subAllocForceAsync / subFree / subFree(numSub) (and Python Job.sub_alloc / sub_free). Use Context::createJob(numSub) / createJobForceAsync(numSub, ...) instead.

Fixed

pxl
  • Round device allocations up to a full cache-line multiple so no size class shares a 64B line, preventing host-side false sharing across contexts/threads under host cache flush. Debug override via PXL_DEBUG_CACHE_LINE_ALIGN (default: on / one cache line).

Docker Image

  • Image Name: xcenadev/sdk:v1.4.9
  • Pull Command:

    docker pull xcenadev/sdk:v1.4.9
    

All Previous Releases

Version Date
v1.4.9 2026-07-23
v1.4.8 2026-06-22
v1.4.7 2026-05-28
v1.4.6 2026-05-15
v1.4.5 2026-04-06
v1.4.4 2026-03-16
v1.4.3 2026-02-13
v1.4.2 2025-12-11
v1.4.0 2025-10-31
v1.3.0 2025-08-28
v1.2.0 2025-05-20
v1.1.0 2025-04-04
v1.0.1 2025-01-10
v1.0.0 2024-12-15