Skip to content

Development instruction for ITL

nieznanysprawiciel edited this page Sep 29, 2023 · 21 revisions

Development instruction

Installing and verifying

  1. Install Golem according to the instruction using pre-rel-v0.13.0-rc18 and default runtimes.
  2. Configure PCI pass-through manually
  3. Install ya-runtime-vm-nvidia using instruction
  4. Run provider to verify (instruction). You should see vm-nvidia runtime initialized.

Provider architecture

Documentation

Important configuration

The list of directories used by Provider is listed here. Only 2 directories should be persistent:

  • Yagna data directory
  • Provider data directory

Networking

For p2p networking UDP protocol is used:

  • Yagna connects to relay server which address is resolved using SRV record _net_relay._udp.dev.golem.network. Currently it points to yacn2.dev.golem.network:7477.
  • Yagna communicates with other Nodes p2p if it has publicly exposed port 11500 (ENV: YA_NET_BIND_URL=udp://0.0.0.0:11500). Exposing this port is optional but preferred.

Local endpoints that shouldn't be exposed to external world:

  • Yagna REST API (ENV: YAGNA_API_URL=http://127.0.0.1:7465)
  • GSB (GSB_URL=tcp://127.0.0.1:7464 if tcp is used instead of unix sockets)

Provider wallet

There are 3 ways to configure Provider's wallet (receiver address):

  • Set YA_ACCOUNT env variable to account address (export YA_ACCOUNT=0x95369fc6fd02afeca110b9c32a21fb8ad899ee0a)
  • Use command line parameter --account (ya-provider run --account 0x95369fc6fd02afeca110b9c32a21fb8ad899ee0a or golemsp run --account 0x95369fc6fd02afeca110b9c32a21fb8ad899ee0a)
  • Set persistent configuration golemsp settings set --account 0x95369fc6fd02afeca110b9c32a21fb8ad899ee0a

Non-interactive setup

Available only in pre-rel-v0.13.0-rc18.

golemsp setup --no-interactive runs setup without requiring user input. All values are set to default values. To provide necessary configuration you can run golemsp settings set with parameters:

Parameter Description
--node-name Node name presented in the network
--starting-fee Price for starting a task
--env-per-hour Price for working environment per hour
--cpu-per-hour Price for CPU per hour
--account Wallet address used to receive payments

Notes:

  • golemsp setup normally configures both cpu per hour and env per hour to the same single value set by user.
  • starting fee is normally set to 0.
  • You can pass --account directly to golemsp setup in non-interactive mode.