Kaggle / Kaggle/docker-python

Efficiently Setting Up Dependencies for Karpathy's llm.c on Kaggle: Seeking Guidance

Aperta
#1,416 0 commenti 0 reazioni 1 assegnatario Rivendicata da @calderjo Vedi su GitHub
new-package
Lingua principale
Python
Stelle
2.7k
Fork
1k
Merge medio
7g 14h
PR unite (30g)
2

Descrizione

## Hello Kaggle! 😊

I wasn't sure where the best place to ask something like this was, so I hope it's okay to open this GitHub issue.

### Objective

I want to compile and run Andrej Karpathy’s code from [this repository](https://github.com/karpathy/llm.c).

### Requirements

To achieve this, I need to install the following dependencies:

```bash
sudo apt-get -y install nvidia-cuda-toolkit
sudo apt install libnccl2 libnccl-dev
sudo apt-get update
sudo apt-get install libnvtoolsext1
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install nvidia-cuda-toolkit
sudo apt-get -y install libcudnn9-dev-cuda-12
sudo apt install libnccl2 libnccl-dev
pip install tiktoken # This is used to tokenize the data to be passed into llm.c
```

Additionally, the instructions specify that I need to clone [this repository](https://github.com/NVIDIA/cudnn-frontend/tree/main) into my home directory.

### Dockerfile Concerns

I have looked into adding the above dependencies into the `Dockerfile.tmpl`, but I found the following lines in there:

```dockerfile
# Make sure we are on the right version of CUDA
RUN update-alternatives --set cuda /usr/local/cuda-$CUDA_MAJOR_VERSION.$CUDA_MINOR_VERSION
# NVIDIA binaries from the host are mounted to /opt/bin.
ENV PATH=/opt/bin:${PATH}
```

It seems like the convention is NOT to use `apt-get install` here. Am I able to install the above dependencies (e.g., `nvidia-cuda-toolkit`, etc.) in this Dockerfile? What are your thoughts?

### Current Issue

At the moment, I have to install all the dependencies each time I start up the notebook, which is incredibly slow and tedious, as you can imagine.

### Compilation Method

I am using a method similar to [this notebook](https://www.kaggle.com/code/anjum48/running-c-in-notebooks) to compile and run Karpathy’s code.

### Thanks!

Thank you so much for Kaggle! 😄😄

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.