ColossalAI/examples/tutorial/large_batch_optimizer
Hongxin Liu b5f9e37c70
[legacy] clean up legacy code (#4743)
* [legacy] remove outdated codes of pipeline (#4692)

* [legacy] remove cli of benchmark and update optim (#4690)

* [legacy] remove cli of benchmark and update optim

* [doc] fix cli doc test

* [legacy] fix engine clip grad norm

* [legacy] remove outdated colo tensor (#4694)

* [legacy] remove outdated colo tensor

* [test] fix test import

* [legacy] move outdated zero to legacy (#4696)

* [legacy] clean up utils (#4700)

* [legacy] clean up utils

* [example] update examples

* [legacy] clean up amp

* [legacy] fix amp module

* [legacy] clean up gpc (#4742)

* [legacy] clean up context

* [legacy] clean core, constants and global vars

* [legacy] refactor initialize

* [example] fix examples ci

* [example] fix examples ci

* [legacy] fix tests

* [example] fix gpt example

* [example] fix examples ci

* [devops] fix ci installation

* [example] fix examples ci
2023-09-18 16:31:06 +08:00
..
config.py [legacy] clean up legacy code (#4743) 2023-09-18 16:31:06 +08:00
README.md [example] integrate seq-parallel tutorial with CI (#2463) 2023-01-13 14:40:05 +08:00
requirements.txt [example] updated large-batch optimizer tutorial (#2448) 2023-01-11 16:27:31 +08:00
test_ci.sh [legacy] clean up legacy code (#4743) 2023-09-18 16:31:06 +08:00
train.py [legacy] clean up legacy code (#4743) 2023-09-18 16:31:06 +08:00

Large Batch Training Optimization

Table of contents

📚 Overview

This example lets you to quickly try out the large batch training optimization provided by Colossal-AI. We use synthetic dataset to go through the process, thus, you don't need to prepare any dataset. You can try out the Lamb and Lars optimizers from Colossal-AI with the following code.

from colossalai.nn.optimizer import Lamb, Lars

🚀 Quick Start

  1. Install PyTorch

  2. Install the dependencies.

pip install -r requirements.txt
  1. Run the training scripts with synthetic data.
# run on 4 GPUs
# run with lars
colossalai run --nproc_per_node 4 train.py --config config.py --optimizer lars

# run with lamb
colossalai run --nproc_per_node 4 train.py --config config.py --optimizer lamb