GitPedia
Home/intel/BigDL/Changelog
intel

intel/BigDL

BigDL: Distributed TensorFlow, Keras and PyTorch on Apache Spark/Flink & Ray

20 Releases
Latest: 1y ago
BigDL release 2.5.0b1v2.5.0b1Latest
glorysdjglorysdj·1y ago·October 15, 2024
GitHub

📦 Highlights

  • *Note:* BigDL v2.5.0b1 has been updated to include functional and security updates. Users should update to the latest version.
BigDL release 2.4.0v2.4.0
liu-shaojunliu-shaojun·2y ago·March 6, 2024
GitHub

📦 Highlights

  • *Note:* BigDL v2.4.0 has been updated to include functional and security updates. Users should update to the latest version.
BigDL release 2.3.0v2.3.0
liu-shaojunliu-shaojun·2y ago·March 6, 2024
GitHub

📦 Highlights

  • *Note:* BigDL v2.3.0 has been updated to include functional and security updates. Users should update to the latest version.
  • Nano
  • Enhanced `trace` and `quantization` process (for PyTorch and TensorFlow model optimizations)
  • New inference optimization methods (including Intel ARC series GPU support, CPU fp16, JIT int8, etc.)
  • New inference/training features (including TorchCCL support, async inference pipeline, compressed model saving, automatic channels_last_3d, multi-instance training for customized TF train loop, etc.)
  • Performance enhancement and overhead reduction for inference optimized model
  • More user-friendly document and API design
  • Orca:
  • + 15 more
BigDL release 2.2.0v2.2.0
liu-shaojunliu-shaojun·2y ago·March 6, 2024
GitHub

📦 Highlights

  • *Note:* BigDL v2.2.0 has been updated to include functional and security updates. Users should update to the latest version.
  • Nano
  • Extend BigDL Nano inference to support iGPU and more data types (INT8/BF16/FP16 quantization)
  • More performance features (e.g., InferenceOptimizer for Keras, Nano decorator for PyTorch training loop, Nano Context Manager for thread number control and autocast, etc.)
  • Support installation with more PyTorch/TensorFlow versions and conditional dependencies on different platforms
  • PPML
  • Upgrade BigDL PPML solution to support new LibOS (e.g., Gramine1.3.1, Occlum0.29.2) with better security, higher performance, more stability and easier deployment.
  • Support more Big Data frameworks (Spark 3.1.3, Flink, Hive etc.), more Python and Data Science tools (Numpy, Pandas, sklearn, Torch Serv, Triton, Flask etc.), and distributed DL training using Orca
  • + 18 more
BigDL release 2.1.0v2.1.0
liu-shaojunliu-shaojun·2y ago·March 6, 2024
GitHub

📦 Highlights

  • *Note:* BigDL v2.1.0 has been updated to include functional and security updates. Users should update to the latest version.
  • Orca
  • Improve user experience and API consistency for Orca Estimators.
  • Support directly save and load TensorFlow model format in Orca TensorFlow2 Estimator.
  • Provide more examples (e.g. PyTorch brain image segmentation, XShards tutorials for distributed Python data processing), etc.
  • Support customized metrics in Orca PyTorch Estimator.
  • Nano
  • New inference optimization pipelines, with more optimization methods and a new InferenceOptimizer
  • + 26 more
BigDL release 2.0.0v2.0.0
liu-shaojunliu-shaojun·2y ago·March 6, 2024
GitHub

📦 Highlights

  • *Note:* BigDL v2.0.0 has been updated to include functional and security updates. Users should update to the latest version.
BigDL release 0.13.0v0.13.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub
BigDL release 0.12.2v0.12.2
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub
BigDL release 0.12.1v0.12.1
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub
BigDL release 0.11.1v0.11.1
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub
BigDL release 0.10.0v0.10.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

📦 Highlights

  • Continue RNN optimization. We support both LSTM and GRU integration with MKL-DNN which acheives ~3x performance
  • ONNX support. We support loading third party framework models via ONNX
  • Richer data preprocssing support and segmentation inference pipeline support

📦 Details

  • [New Feature] Full MaskRCNN model support with data processing
  • [New Feature] Support variable-size Resize
  • [New Feature] Support batch input for region proposal
  • [New Feature] Support samples of different size in one minibatch
  • [New Feature] MAP validation method implementation
  • [New Feature] ROILabel enhancement to support both object detection and segmentation
  • [New Feature] Grey image support for segmentation
  • [New Feature] Add TopBlocks support for Feature Pyramid Networks (FPN)
  • + 33 more
BigDL release 0.9.0v0.9.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

📦 Highlights

  • Continue VNNI acceleration support, we add optimization for more CNN models including object detection models, enhance model scales generation support for VNNI.
  • Add attention based model support, we add Transformer implementation for both lanuage model and translation model.
  • RNN optimization, We support LSTM integration with MKL-DNN which acheives ~3x performance speedup.

📦 Details

  • [New Feature] Add attention layer support
  • [New Feature] Add FeedForwardNetwork layer support
  • [New Feature] Add ExpandSize layer support
  • [New Feature] Add TableOperation layer to support table calculation with different input sizes
  • [New Feature] Add LayerNormalizaiton layer support
  • [New Feature] Add Transformer support for both language and translation models
  • [New Feature] Add beam search support in Transformer model
  • [New Feature] Add Layer-wise adaptve rate scaling optim method
  • + 24 more
BigDL release 0.8.0v0.8.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

📦 Highlights

  • Add MKL-DNN Int8 support, especially for VNNI acceleration support. Low precision inference accelerates both latency and throughput significantly
  • Add support for runnning MKL-BLAS models under MKL-DNN. We leverage MKL-DNN to speed up both training and inference for MKL-BLAS models
  • Add Spark 2.4 support. Our examples and APIs are fully compatible with Spark 2.4, we released the binary for Spark 2.4 together with other Spark versions

📦 Details

  • [New Feature] Add MKL-DNN Int8 support, especially for VNNI support
  • [New Feature] Add support for runnning MKL-BLAS models under MKL-DNN
  • [New Feature] Add Spark 2.4 support
  • [New Feature] Add auto fusion to speed up model inference
  • [New Feature] Memoery reorder support for low precision inference
  • [New Feature] Add bytes support for DNN Tensor
  • [New Feature] Add SAME padding in MKL-DNN layers
  • [New Feature] Add combined (add/or) triggers for training completion
  • + 16 more
BigDL release 0.7.0 v0.7.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

📦 Highlights

  • MKL-DNN support enhancement, which includes training optimization, more models training support and model serialization support
  • A new distributed optimizer for models powered by MKL-DNN. This optimizer can overlap training and communication during the distributed training, which lead to a better scalability on multi-nodes

📦 Details

  • [New Feature] A new optim method ParallelAdam which leverages the multi-thread capacity
  • [New Feature] Add new validation methods HitRate, which is widely used in recommendation
  • [New Feature] Add new validation methods NDCG, which is widely used in recommendation
  • [New Feature] Support communication priority when synchronize parameter in the distributed training
  • [New Feature] Support ModelBroadcast customization
  • [New Feature] Add a new distributed optimizer for models powered by MKL-DNN. This optimizer can overlap training and communication during the distributed training, which lead to a better scalability on multi-nodes
  • [API Change] Add batch size into the Python model.predict API
  • [Enhancement] Add MKL-DNN training example for LeNet
  • + 22 more
BigDL release 0.6.0v0.6.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

📦 Highlights

  • We integrate [MKL-DNN](https://github.com/intel/mkl-dnn) as an alternative execution engine for CNN models. MKL-DNN provides better training/inference performance and less memory consuming. On some CNN models, we find there’s 2x throughput improvement in our experiment.
  • Support using different optimization methods to optimize different parts of the model. This is necessary when train some models.
  • Spark 2.3 support. We have tested our code and examples on Spark 2.3. We release the binary for Spark 2.3, and Spark 1.5 will not be supported.

📦 Details

  • [New Feature] MKL-DNN integration. We integrate [MKL-DNN](https://github.com/intel/mkl-dnn) as an alternative execution engine for CNN models. It supports speedup layers like: AvgPooling, MaxPooling, CAddTable, LRN, JoinTable, Linear, ReLU, SpatialConvolution, SpatialBatchnormalization, Softmax. MKL-DNN provides better training/inference performance and less memory consuming.
  • [New Feature] Layer fusion. Support layer fusion on conv + relu, batchnorm + relu, conv + batchnorm and conv + sum(some of the fusion can only be applied in the inference). Layer fusion provides better performance especially on inference. Currently layer fusion are only available for MKL-DNN related layers.
  • [New Feature] Multiple optimization method support in optimizer. Support using different optimization methods to optimize different parts of the model.
  • [New Feature] Add a new optimization method Ftrl, which is often used in recommendation model training.
  • [New Feature] Add a new example: Training Resnet50 on ImageNet dataset.
  • [New Feature] Add new OpenCV based image preprocessing transformer ChannelScaledNormalizer.
  • [New Feature] Add new OpenCV based image preprocessing transformer RandomAlterAspect.
  • [New Feature] Add new OpenCV based image preprocessing transformer RandomCropper.
  • + 29 more
BigDL release 0.5.0v0.5.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

📦 Highlights

  • Bring in a Keras-like API(Scala and Python). User can easily run their Keras code (training and inference) on Apache Spark through BigDL. For more details, see [this link](https://bigdl-project.github.io/0.5.0/#KerasStyleAPIGuide/keras-api-python/).
  • Support load Tensorflow dynamic models(e.g. LSTM, RNN) in BigDL and support more Tensorflow operations, see [this page](https://bigdl-project.github.io/0.5.0/#APIGuide/tensorflow_ops_list/ ).
  • Support combining data preprocessing and neural network layers in the same model (to make model deployment easy )
  • Speedup various modules in BigDL (BCECriterion, rmsprop, LeakyRelu, etc.)
  • Add DataFrame-based image reader and transformer

New Features

  • Tensor can be converted to OpenCVMat
  • Bring in a new Keras-like API for scala and python
  • Support load Tensorflow dynamic models(e.g. LSTM, RNN)
  • Support load more Tensorflow operations(InvertPermutation, ConcatOffset, Exit, NextIteration, Enter, RefEnter, LoopCond, ControlTrigger, TensorArrayV3,TensorArrayGradV3, TensorArrayGatherV3, TensorArrayScatterV3, TensorArrayConcatV3, TensorArraySplitV3, TensorArrayReadV3, TensorArrayWriteV3, TensorArraySizeV3, StackPopV2, StackPop, StackPushV2, StackPush, StackV2, Stack)
  • ResizeBilinear support NCHW
  • ImageFrame support load Hadoop sequence file
  • ImageFrame support gray image
  • Add Kv2Tensor Operation(Scala)
  • + 26 more

📦 Enhancement

  • ImageFrame support serialization
  • A default implementation of zeroGradParameter is added to AbstractModule
  • Improve the style of the document website
  • Models in different threads share weights in model training
  • Speed up leaky relu
  • Speed up Rmsprop
  • Speed up BCECriterion
  • Support Calling Java Function in Python Executor and ModelBroadcast in Python
  • + 9 more

📋 API change

  • Move DataFrame-based API to dlframe package
  • Refine the Container hierarchy. The add method(used in Sequential, Concat…) is moved to a subclass DynamicContainer
  • Refine the serialization code hierarchy
  • Dynamic Graph has been an internal class which is only used to run tensorflow models
  • Operation is not allowed to use outside Graph
  • The getParamter method as final and private[bigdl], which should be only used in model training
  • remove the updateParameter method, which is only used in internal test
  • Some Tensorflow related operations are marked as internal, which should be only used when running Tensorflow models

🐛 Bug Fix

  • Fix Sparse sample batch bug. It should add another dimension instead of concat the original tensor
  • Fix some activation or layers don’t work in TimeDistributed and RnnCell
  • Fix a bug in SparseTensor resize method
  • Fix a bug when convert SparseTensor to DenseTensor
  • Fix a bug in SpatialFullConvolution
  • Fix a bug in Cosine equal method
  • Fix optimization state mess up when call optimizer.optimize() multiple times
  • Fix a bug in Recurrent forward after invoking reset
  • + 18 more
BigDL release 0.4.0v0.4.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

📦 Highlights

  • Supported all Keras layers, and support Keras 1.2.2 model loading. See [keras-support](https://bigdl-project.github.io/0.4.0/#ProgrammingGuide/keras-support/) for detail
  • Python 3.6 support
  • OpenCV support, and add a dozen of image transformer based on OpenCV
  • More layers/operations

New Features

  • Models & Layers & Operations & Loss function
  • + Add Criterion for keras: PoissonCriterion, KullbackLeiblerDivergenceCriterion, MeanAbsolutePercentageCriterion, MeanSquaredLogarithmicCriterion, CosineProximityCriterion
  • + Support NHWC for LRN and BatchNormalization
  • + Add LookupTableSparse (lookup table for multivalue)
  • + Add activation argument for recurrent layers
  • + Add MultiRNNCell
  • + Add SpatialSeparableConvolution
  • + Add MSRA filler
  • + 18 more

📦 Enhancement

  • Speed up BatchNormalization.
  • Speed up MSECriterion
  • Speed up Adam
  • Speed up static graph execution
  • Support reading TFRecord files from HDFS
  • Support reading raw binary files from HDFS
  • Check input size in concat layer
  • Add proper exception handling for CaffeLoader&Persister
  • + 7 more

🐛 Bug Fix

  • Fix getModel failed in DistriOptimizer when model parameters exceed 2.1G
  • Fix core number is 0 where there's only one core in system
  • Fix SparseJoinTable throw exception if input’s nElement changed.
  • Fix some issues found when save bigdl model to tensorflow format file
  • Fix return object type error of DLClassifier.transform in Python
  • Fix graph generatebackward is lost in serialization
  • Fix resizing tensor to empty tensor doesn’t work properly
  • Fix Adapter layer does not support different batch size at runtime
  • + 5 more
BigDL release 0.3.0v0.3.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

📦 Highlights

  • New protobuf-based model storage format
  • Support model quantization
  • Support sparse tensor and model
  • Easier and broader Tensorflow model load support
  • More layers/operations
  • Apache Spark 2.2 support

New Features

  • Models & Layers & Operations & Loss function
  • + Support convlstm3D model
  • + Support Variational Auto Encoder
  • + Support Unet
  • + Support PTB model
  • + Add SpatialWithinChannelLRN layer
  • + Add 3D-deconv layer
  • + Add BifurcateSplitTable layer
  • + 43 more

📦 Enhancement

  • 1. Support model quantization. User can speed up model inference by quantize the model
  • 2. Display bigdl model in Tensorboard
  • 3. User can easily convert a sequential model to graph model by invoking new added toGraph method
  • 4. Remove unnecessary contiguous check in 3D conv
  • 5. Support global average pooling
  • 6. Support regularizer in 3D convolution layer
  • 7. Add regularizer for convlstmpeephole3d
  • 8. Throw more meaningful messages in layers and criterions
  • + 18 more

🐛 Bug Fix

  • 1. Fix TemporalConv layer cannot return parameter table
  • 2. Fix some bugs when loading dilated group convolution from caffe
  • 3. Fix some bugs when loading caffe v1 layers
  • 4. Fix a bug in TimeDistributed layer
  • 5. Fix get incorrect execution time in recurrent layers
  • 6. Fix inplace layer clear state bug
  • 7. Fix incorrect training data sample count under some input
  • 8. Remove label check in BytesToGreyImg
  • + 4 more
BigDL release 0.2.0v0.2.0
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

New feature

  • A new BigDL document website online https://bigdl-project.github.io/, which replace the original BigDL wiki
  • Added New Models & Layers
  • + TreeLSTM and examples for sentiment analytics
  • + convLSTM layer
  • + 1D convolution layer
  • + Mean Absolute Error (MAE) metrics
  • + TimeDistributed Layer
  • + VolumetricConvolution(3D convolution)
  • + 27 more

📦 Enhancement

  • 1. Optimization method API refactor
  • 2. Allow user to load a Caffe model without pre-defining a BigDL model
  • 3. Optimize Recurrent Layers performance
  • 4. Refine the ML pipeline related API, and add more examples
  • 5. Optimize JoinTable layer performance
  • 6. Allow user to use nio blockmanager on Spark 1.5
  • 7. Refine layer parameter initialization algorithm API
  • 8. Refine Sample class to save memory usage when cache train/test dataset as tensor format
  • + 9 more

🐛 Bug Fix

  • 1. Fix some error in Text-classifier document
  • 2. Fix a bug when call JoinTable after clearState()
  • 3. Fix a bug in Concat layer when the dimension concatenated along is larger than 2
  • 4. Fix a bug in MapTable layer
  • 5. Fix some multi-thread error not catch issue
  • 6. Fix maven artifact dependency issue
  • 7. Fix model save method won’t close the stream issue
  • 8. Fix a bug in BCECriterion
  • + 2 more
BigDL maintenance release 0.1.1v0.1.1
liu-shaojunliu-shaojun·2y ago·March 7, 2024
GitHub

📋 Changes

  • API Change
  • Enhancement
  • Bug Fix