Skip to content

v1.3.0

Choose a tag to compare

@tiankongdeguiji tiankongdeguiji released this 02 Jul 07:06
· 90 commits to master since this release
ee3ef09

Major Features and Improvements

Train/Eval/Predict/Export

  • AOTInductor
    • Optimize AOTI performance with export knobs for fp32 unbacked floats, sample-input autotune, and TF32 from export config in #498
    • AOTInductor support match models in #509
  • Cache feature-permute order during export to avoid per-forward H2D sync in #527
  • Support keep_checkpoint_max with async checkpoint pruning in #528
  • [WIP] Support model delta tracker to track incremental embedding rows in #546

Model

  • HSTUMatch:
    • Optimize HSTUMatch with STUStack, UIHPreprocessor, and block-suffix candidates to support efficient triton hstu ops in #505 #506 #510 #519 #520 #526
    • Support scalar item-tower export view for HSTUMatch in #518
  • DlrmHSTU / UltraHSTU
    • Support stu.scaling_seqlen and drop autotune assert strip in #500
    • Thread contextual_seq_len from preprocessor to STULayer with proto sentinel, truncation total_uih_len, and AOTI-friendly SLA builder in #501
    • Bundle a repackaged Triton 3.7.1 wheel with ptxas 12.9.86 to fix the HSTU WGMMA shared-memory OOB on sm_90/H20 in #551
  • SID:
    • Add SidRqkmeans model with FAISS-trained residual K-Means in #538 #539
    • Add SidRqvae model with STE/Gumbel-Softmax and CLIP support in #545 #552

Embedding

  • Add FeatureGroupConfig.embedding_name_suffix to break embedding sharing across groups in #504
  • Add planner support to pick DynamicEmbedding HYBRID vs CACHING from topology budgets in #508
  • Add zch_to_dynamicemb_convert tool to migrate ZCH checkpoints to DynamicEmbedding in #511

Dataset

  • Add Kafka event-time driven checkpointing from message timestamp in #541
  • Support dataloader checkpoint resume across forked workers and epochs in #544
  • Batch and retry Kafka offsets_for_times to survive broker timeouts in #547

Optimizer and Metrics

  • Add Adadelta and RMSprop sparse and dense optimizers in #499
  • Add NormalizedEntropy metric for binary classification in #507

Upgrade

  • Upgrade PyTorch to v2.12.1, TorchRec to v1.7.0, FBGEMM to v1.7.0, support NumPy 2, and add CUDA 13.0 TensorRT image support in #551
  • Allow pandas >= 3 in #556

Note

For TorchEasyRec 1.3.x, you should use Docker image version 1.3.

  • For the GPU version (CUDA 13.0) with tensorrt:
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:1.3-cu130
    • PyTorch: v2.12.1 CUDA: v13.0 FBGEMM: v1.7.0 TorchRec: v1.7.0 TensorRT: v10.16 Python: v3.11
    • Supported GPUs: sm_75 / 80 / 86 / 90 / 100 / 120, It supports Turing (T4), Ampere/Ada (A10/A30/A100/L4/L20), Hopper (H100/H200), Blackwell (B100/B200), and other GPUs with CC 7.5-12.0.
    • Driver requirement: NVIDIA driver R580 or later is recommended. For older drivers, set LD_LIBRARY_PATH=/usr/local/cuda-13.0/compat.
  • For the GPU version (CUDA 12.9):
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:1.3-cu129
    • PyTorch: v2.12.1 CUDA: v12.9 FBGEMM: v1.7.0 TorchRec: v1.7.0 Python: v3.11
    • Supported GPUs: sm_75 / 80 / 86 / 90 / 100 / 120. It supports Turing (T4), Ampere/Ada (A10/A30/A100/L4/L20), Hopper (H100/H200), Blackwell (B100/B200), and other GPUs with CC 7.5-12.0.
  • For the GPU version (CUDA 12.6):
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:1.3-cu126
    • PyTorch: v2.12.1 CUDA: v12.6 FBGEMM: v1.7.0 TorchRec: v1.7.0 Python: v3.11
    • Supported GPUs: sm_60 / 70 / 75 / 80 / 86 / 90. It supports Pascal (P100), Volta (V100), Turing (T4), Ampere/Ada (A10/A30/A100/L4/L20), Hopper (H100), and other GPUs with CC 6.0-9.0. It does not support Blackwell GPUs.
  • For the CPU version:
    • mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easyrec/tzrec-devel:1.3-cpu
    • PyTorch: v2.12.1 FBGEMM: v1.7.0 TorchRec: v1.7.0 Python: v3.11

Bug Fixes and Other Changes

New Contributors

Full Changelog: v1.2.0...v1.3.0