|
24 | 24 | sudo loginctl enable-linger user |
25 | 25 |
|
26 | 26 | # Install other dependencies |
27 | | -sudo apt install -y gcc pkg-config libssl-dev build-essential apt-transport-https ca-certificates curl software-properties-common nvtop |
| 27 | +sudo apt install -y gcc pkg-config libssl-dev build-essential apt-transport-https ca-certificates curl software-properties-common nvtop clang |
| 28 | +sudo apt-get install -y protobuf-compiler |
28 | 29 |
|
29 | 30 | # Install docker |
30 | 31 | sudo apt-get update |
@@ -52,14 +53,24 @@ sudo tailscale up --ssh --advertise-tags=tag:server && sudo tailscale set --auto |
52 | 53 | # Install CUDA |
53 | 54 | sudo add-apt-repository ppa:graphics-drivers/ppa |
54 | 55 | sudo apt update |
55 | | -sudo apt install nvidia-driver-570 |
| 56 | +sudo apt install -y nvidia-driver-580 |
56 | 57 |
|
57 | | -# If see errors |
58 | | -sudo apt-mark unhold cuda-drivers cuda-toolkit-12-6 nvidia-dkms-565-server nvidia-fabricmanager-565 nvidia-headless-565-server nvidia-utils-565-server |
59 | | -sudo apt update |
60 | | -sudo apt install nvidia-driver-570 |
61 | 58 | sudo apt autoremove |
62 | | -sudo apt autoclean |
| 59 | +wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb |
| 60 | +sudo dpkg -i cuda-keyring_1.1-1_all.deb |
| 61 | +sudo apt update |
| 62 | +sudo apt install -y cuda-toolkit-12-9 |
| 63 | +## Add to ~/.bashrc |
| 64 | +export PATH=/usr/local/cuda-12.9/bin${PATH:+:${PATH}} |
| 65 | +export LD_LIBRARY_PATH=/usr/local/cuda-12.9/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} |
| 66 | + |
| 67 | +# If see errors |
| 68 | +#sudo apt-mark unhold cuda-drivers cuda-toolkit-12-6 nvidia-dkms-565-server nvidia-fabricmanager-565 nvidia-headless-565-server nvidia-utils-565-server |
| 69 | +#sudo apt update |
| 70 | +#sudo apt install nvidia-driver-570 |
| 71 | +#sudo apt autoremove |
| 72 | +#sudo apt autoclean |
| 73 | + |
63 | 74 | sudo reboot |
64 | 75 | nvidia-smi # To check if the driver is installed correctly |
65 | 76 |
|
@@ -108,26 +119,33 @@ read -p "Enter a block number for SP1 (last_aggregated_block): " num && echo "{\ |
108 | 119 | ./infra/aggregation_mode/config_file.sh ./infra/aggregation_mode/config-proof-aggregator-risc0.template.yaml $HOME/config/config-proof-aggregator-risc0.yaml |
109 | 120 | read -p "Enter a block number for Risc0 (last_aggregated_block): " num && echo "{\"last_aggregated_block\":$num}" > $HOME/config/proof-aggregator-risc0.last_aggregated_block.json |
110 | 121 |
|
| 122 | +mkdir -p $HOME/repos/aggregation_mode/mainnet |
| 123 | +cd $HOME/repos/aggregation_mode/mainnet |
| 124 | +git clone https://github.com/yetanotherco/aligned_layer.git |
| 125 | +cd aligned_layer # Subsequent relative paths (cargo --path, ./infra/...) resolve from the repo root |
111 | 126 | # Build the proof_aggregator |
112 | | -make proof_aggregator_install |
| 127 | +#make proof_aggregator_install |
| 128 | +cargo install --path aggregation_mode/proof_aggregator --features prove,gpu --bin proof_aggregator_gpu --locked |
| 129 | +cargo install --path aggregation_mode/proof_aggregator --features prove --bin proof_aggregator_cpu --locked # This builds risc0 with CPU but sp1 is runnable with GPU |
113 | 130 |
|
114 | 131 | # Copy run script |
115 | 132 | cp ./infra/aggregation_mode/run.sh $HOME/run.sh |
116 | 133 | chmod 744 $HOME/run.sh |
117 | 134 |
|
118 | 135 | # Setup systemd service |
| 136 | +# The service is enabled to run on every boot (no timer). The machine is started |
| 137 | +# once a day by the GitHub Actions workflow (.github/workflows/aggregation_mode.yml), |
| 138 | +# runs the aggregation on startup and then shuts itself down (see run.sh). |
119 | 139 | cp ./infra/aggregation_mode/aggregation_mode.service $HOME/.config/systemd/user/aggregation_mode.service |
120 | | -cp ./infra/aggregation_mode/aggregation_mode.timer $HOME/.config/systemd/user/aggregation_mode.timer |
121 | 140 |
|
122 | | -#sudo systemctl enable aggregation_mode.service |
123 | | -systemctl --user enable aggregation_mode.timer |
124 | | -systemctl --user start aggregation_mode.timer |
| 141 | +systemctl --user daemon-reload |
| 142 | +systemctl --user enable aggregation_mode.service |
125 | 143 |
|
126 | 144 | # Run the proof_aggregator manually if you want |
127 | 145 | systemctl --user start aggregation_mode.service |
128 | 146 |
|
129 | | -# Check timer status |
130 | | -systemctl --user status aggregation_mode.timer |
| 147 | +# Check service status |
| 148 | +systemctl --user status aggregation_mode.service |
131 | 149 |
|
132 | 150 | # Check logs |
133 | 151 | journalctl -xfeu aggregation_mode.service --user -n10 |
0 commit comments