Skip to content

r1.15.5-deeprec2206

Choose a tag to compare

@liutongxuan liutongxuan released this 06 Jul 10:29
9e3e76d

Major Features and Improvements

Embedding

  • Multi-tier of EmbeddingVariable, add SSD_HashKV which is better performance than LevelDB.
  • Support GPU EmbeddingVariable which gather/apply ops place on GPU.
  • Add user API to record frequence and version for EmbeddingVariable.

Graph Optimization

  • Add Embedding Fusion ops for CPU/GPU.
  • Optimize SmartStage performance on GPU.

Runtime Optimization

  • Executor, support cost-based and critical path ops first.
  • GPUAllocator, support CUDA malloc async allocator. (need to use >= CUDA 11.2)
  • CPUAllocator, automatically memory allocation policy generation.
  • PMEMAllocator, optimize allocator and add statistic.

Ops & Hardware Acceleration

  • Implement SparseReshape, SparseApplyAdam, SparseApplyAdagrad, SparseApplyFtrl, ApplyAdamAsync, SparseApplyAdamAsync, KvSparseApplyAdamAsync GPU kernels.
  • Optimize UnSortedSegment on CPU.
  • Upgrade OneDNN to v2.6.

IO & Dataset

  • ParquetDataset, add parquet dataset which could reduce storage and improve performance.

Model Save/Restore

  • Asynchronous restore EmbeddingVariable from checkpoint.

Serving

  • SessionGroup, highly improve QPS and RT in inference.

ModelZoo

  • Add models SimpleMultiTask, ESSM, DBMTL, MMoE, BST.

Profiler

  • Support for mapping of operators and real thread ids in timeline.

BugFix

  • Fix EmbeddingVariable core when EmbeddingVariable only has primary embedding value.
  • Fix abnormal behavior in L2-norm calculation.
  • Fix save checkpoint issue when use LevelDB in EmbeddingVariable.
  • Fix delete old checkpoint failure when use incremental checkpoint.
  • Fix build failure with CUDA 11.6.

More details of features: https://deeprec.readthedocs.io/zh/latest/

Release Images

CPU Image

alideeprec/deeprec-release:deeprec2206-cpu-py36-ubuntu18.04

GPU Image

alideeprec/deeprec-release:deeprec2206-gpu-py36-cu110-ubuntu18.04