Skip to content

Commit 1f2adfc

Browse files
adding dit
1 parent 11d0585 commit 1f2adfc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

83 files changed

+3548
-7
lines changed

README.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# diffusion.cu
22

3-
This project is a from-scratch implementation of diffusion model training in C++/CUDA. This project is currently in-progress. Inspired by Andrej Karpathy's [llm.c](https://github.com/karpathy/llm.c) and Chen Lu's [unet.cu](https://github.com/clu0/unet.cu). The implementation is based on the architecture in the paper [Diffusion Models Beat GANs on Image Synthesis](https://arxiv.org/abs/2105.05233).
3+
This project is a from-scratch implementation of diffusion model training in C++/CUDA. This project is currently in-progress, and supports the classic UNet architecture, based on the architecture in the paper [Diffusion Models Beat GANs on Image Synthesis](https://arxiv.org/abs/2105.05233), and the transformer architecture (DiT), based on [Scalable Diffusion Models with Transformers] (https://arxiv.org/abs/2212.09748). Inspired by Andrej Karpathy's [llm.c](https://github.com/karpathy/llm.c) and Chen Lu's [unet.cu](https://github.com/clu0/unet.cu).
44

55
## Training
66

7-
You can train it on the images from the ImageNet 64x64 dataset via
7+
UNet currently supports training. You can train it on the images from the ImageNet 64x64 dataset via
88

99
```
10-
gunzip data/elephant_train.bin.gz
11-
python train_diffusion.py --init_model_only True
12-
make train_diffusion
13-
./train_diffusion`
10+
gunzip unet/data/elephant_train.bin.gz
11+
python unet/train_diffusion.py --init_model_only True
12+
make -C unet train_diffusion
13+
./unet/train_diffusion
1414
```
1515

1616
### **Current Implementation:**
@@ -26,7 +26,6 @@ This currently supports unconditional diffusion model training, and the end-to-e
2626
In Progress:
2727
- support for distributed training via MPI
2828
- support for mixed precision training
29-
- support for DiT as another architecture we can add, because we can re-use the same components of llm.c
3029

3130
### **My Motivation:**
3231

0 commit comments

Comments
 (0)