Biττensor: Utilization of Compute Resources in Subnet 27

Quick Tutorial for Validators: Utilizing Compute Resources in SN27


1. INTRODUCTION

Subnet 27 stands as a pivotal component within the Bittensor network, acting as a permissionless marketplace for computational resources. This initiative not only fosters efficient resource sharing and allocation but also ensures the integrity and effectiveness of these resources through the critical role of validators.

Subnet 27 is at the forefront of decentralizing compute access, challenging the monopolistic tendencies of large AI corporations that dominate GPU resources while simultaneously pushing for restrictive compute regulations. This movement is about reclaiming the right to compute, advocating for a decentralized and incentivized compute market that diminishes the influence of the AI oligopoly and empowers the community.

Your participation as a validator is crucial. It not only contests the concentration of computational power but also supports the democratization of compute and the advancement towards decentralized AGI. With Subnet 27, you're not just validating transactions; you're part of a revolutionary shift towards equitable compute access.

Subnet 27 is operational and ready for your engagement. As a validator on SN27, you play a crucial role in ensuring the efficiency and reliability of our decentralized compute network.

This quick tutorial will guide you through reserving and accessing GPU resources provided by miners. Follow along with our video for step-by-step visual instructions.

Compute Subnet Github: github.com/neuralinternet/compute-subnet

Compute Subnet Gitbook: https://docs.neuralinternet.ai/products/subnet-27-compute

Cloud Providers:

We do not support Docker-based cloud platforms such as Runpod, Vast(.)AI and Lambda.

Here are some GPU providers. Choose a provider or use your own hardware:

Examples of GPUs to rent (listed in order of computing power)

  • NVIDIA H100

  • NVIDIA A100s

  • NVIDIA A6000s

  • NVIDIA 3090s/4090s

2. PREREQUISITES


  • Access to a terminal or command-line interface

  • Basic knowledge of Vim editor (or any text editor of your choice)

  • Familiarity with SSH (Secure Shell)

  • Bittensor and Compute Subnet installed

  • SN27 Validator

2.1 ACCESS THE COMPUTE SUBNET DIRECTORY:

cd Compute-Subnet

3. RUN THE RESERVATION COMMAND:

Execute the following command in your terminal to reserve an available machine:

python3 neurons/register.py --netuid 27 --wallet.name COLDKEYNAME --wallet.hotkey HOTKEYNAME --logging.debug 

Parameters explained:

  • --netuid: Specifies the subnet you're operating on, in this case, SN27; --netuid 27

  • --wallet.name: Your coldkey name; --wallet.name ni

  • --wallet.hotkey: Your wallet hotkey name for identification; --wallet.hotkey ni

Usage explained:

register.py supports several operations related to resource allocation within the compute subnet. Below is a brief overview of the available commands:

  • a: Allocate resources based on device requirements (e.g., GPU).

  • a_hotkey: Allocate resources directly via hotkey.

  • d: De-allocate a previously allocated resource.

  • list_a: List all currently allocated resources.

  • list_r: Display a list of all resources.

Use -h or --help option for more details on command usage:

python3 neurons/register.py -h

4. VERIFICATION BEFORE RESERVATION:

  • Executing the command a will start the reservation process.

  • Verify the GPU type and size.

  • A machine will be selected for allocation and reservation depending on the specifications.

5. SSH INTO THE MACHINE:

  • If a suitable machine is found you will be provided with the machine specifications, IP address, port, hotkey and password for SSH access.

  • Use the following SSH command format to log into the GPU:

ssh root@<IP_ADDRESS> -p 4444

Confirmation with Nvidia-smi:

  • Once logged in, run nvidia-smi to verify you are connected to the correct machine with the selected GPU.

  • This command displays the GPU's status and usage, confirming the successful reservation.

nvidia-smi
nvcc --version

The output of which should look something like

+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 545.23.08              Driver Version: 545.23.08    CUDA Version: 12.3     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA RTX                     Off | 00000000:05:00.0 Off |                  Off |
| 30%   34C    P0              70W / 300W |  400MiB / 4914000MiB |      4%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+
                                                                                         
+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|  No running processes found                                                           |
+---------------------------------------------------------------------------------------+
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Fri_Nov__3_17:16:49_PDT_2023
Cuda compilation tools, release 12.3, V12.3.103
Build cuda_12.3.r12.3/compiler.33492891_0

6. EXITING THE RESERVED MACHINE:

  • When your tasks are completed, exit the SSH session. From the Compute Subnet Reservation CLI execute the command d to de-allocate the reserved machine.

  • It will ask you to confirm the machine in which you want to preform the de-allocation on by providing it’s hotkey.

By following these steps, you can effectively reserve and utilize high-performance GPU resources provided by miners in SN27.

Last updated