Inferix Decentralized GPU
  • Getting Started
    • Overview
    • $IFX
    • Resources
    • Brand Kit
    • Frequently asked questions (FAQs)
  • Inferix Whitepaper
    • Introduction
      • Rendering network using crowdsourced GPU
      • Rendering verification problem
    • High-level description of ANGV
      • Noise generation
      • Noise verification
      • Thread model
    • Implementation of ANGV
      • Structure of noise
      • Noise insertion
        • Geometric constraints
        • Distortion region
      • Adaptive noise spreading
      • Verification key generation
      • Noise verification
      • Threat analysis
        • Attacks on verification keys
        • Attacks on noises
        • Attacks on verifiers
      • Performance evaluation
      • Integration
    • Decentralized visual computing
      • Client Apps plugin
      • Client API and SDK
      • Manager node
      • Worker node
      • Decentralized storage
        • Data categories
        • Multi-level 3D polygon data
        • Polygon digester
        • Decentralized storage
        • Decentralized cache
      • Data security with FHE and TEE
        • Verifier data security enhancement with FHE
        • Worker and Manager data security enhancement with FHE
    • Decentralized federated AI
      • Federated learning with TensorOpera
      • Meta LLaMA
      • Stable Diffusion
      • Other AI models
      • Inferix AI
    • Economic model
      • GPU compute market for visual computing and federated AI
      • Inferix vision
      • $IFX token
      • Burn-Mint-Work token issuance model
      • Inferix bench and IBME
        • IB and IBM
        • IBME
      • Price simulation
      • Token metrics and allocation
        • Token allocation
        • Token vesting
      • Governance
      • Node staking and rewards
        • Worker
        • Verifier
        • Manager
        • Penalty pool
      • Node sale and guaranteed node buyback
        • Node sales
        • Guaranteed Node Buyback
    • Future development
      • PoR and NFT minting for graphics creative assets
      • ZKP and PoR communication
      • Inferix RemotePC
      • Rendering professional network
    • References
    • Appendix A: Proofs
    • Appendix B: Price simulation details
    • Appendix C: Hardware requirements for nodes
    • Appendix D: Performance evaluation data
  • Worker Node Guide
    • What is Worker Node
      • How do the Worker Node work
      • Worker Node Rewards
      • How to run Worker Node
      • What is the Worker Node License (NFT)
    • Worker Node Sales
      • Guide to Purchase Worker Nodes
      • Worker Node Sale Timeline
      • Node Supply, Price, Tiers and Purchase Caps
      • Guaranteed Node Buyback
      • How to get Node Whitelisted?
      • Smart Contract Addresses
      • User Discounts & Referral Program
      • Worker Node Purchase FAQ
      • ABKK Collaboration FAQ
  • Verifier Node Guide
    • What is Verifier Node
      • How do the Verifier Node work
      • Verifier Node Rewards
      • How to run Verifier Node
      • What is the Verifier Node License (NFT)
    • Verifier Node Sales
      • Guide to Purchase Verifier Nodes
      • Verifier Node Sale Timeline
      • Node Supply, Price, Tiers and Purchase Caps
      • Guaranteed Node Buyback
      • How to get Node Whitelisted?
      • Smart Contract Addresses
      • User Discounts & Referral Program
      • Verifier Node Purchase FAQ
      • Aethir Node Winners FAQ
  • Inferix MVP
    • Tutorial: MVP for designers & GPU owners
    • PoR MVP
  • Inferix Testnet 2 on Solana & IoTeX [ENDED]
    • Adding GPUs to the Network
      • For GPU providers
      • For GPU providers without funds
      • For users without GPUs
      • For Inferix Node Holders
    • Renting GPU Devices
    • User Revenue Calculation
      • Worker Rewards
      • Rental Revenue
      • Viewing Revenue
      • Claiming Rewards
    • GPU Staking & Unstaking
      • Staking Requirements
      • Unstaking GPUs
    • Guide to get tIFX tokens
    • Why choose Inferix DePIN GPU Solutions?
  • Inferix Testnet 1 on IoTeX [ENDED]
    • Inferix GPU Solutions
    • Adding GPUs to the Network
    • Renting GPU Devices
    • User Revenue Calculation
    • GPU Staking
    • Multiple options to participate in the Staking & Mining Program
    • Special airdrop for Inferix Node Holders! 🎉
    • Guide to get tIFX tokens
    • FAQ
  • Inferix Explorer
  • Team & Achievements
    • Our Story
    • Team
    • Member of Cohort 1 DePINSurf
    • Achievements
  • Community & Events
    • Events
    • Inferix Campaign: "ALLIANCE" (ENDED)
  • Terms of Service
    • Privacy Policy
    • Airdrop Terms of Service
Powered by GitBook
On this page
  1. Inferix Whitepaper
  2. Introduction

Rendering network using crowdsourced GPU

PreviousIntroductionNextRendering verification problem

Last updated 9 months ago

The graphics rendering service consists in a network of decentralized machines called nodes which are of 3 kinds: manager, worker and verifier. The managers are dedicated machines of Inferix while verifiers and workers are machines joined by GPU owners. The number of workers is normally much larger than the number of managers and verifiers.

Figure 1

  1. A user creates a rendering job request using the Inferix's plugin for client, this job uploads user's scene data to some manager.

  2. The rendering task controller of the manager receives the rendering job request, then

    1. splits it into multiple rendering tasks, each task consists of the scene data and several parameters: range of frames to be rendered, output format, etc.

    2. generates corresponding verification keys and sends these keys to the verifying task controller.

    The rendering tasks will be assigned to workers and the verification keys will be sent to the verifying task controller.

  3. Receiving a rendering task, a worker renders the included scene using the parameters given by the task. When it finishes, it saves the rendered frames to a decentralized storage, then notifies the manager by a message containing a unique URL to the result.

  4. The verifying task controller of the notified manager receives the notification then creates a verification task; this task will be assigned to a verifier.

  5. Receiving a verification task, a verifier

    1. checks the authenticity of the corresponding rendered frames, then

    2. notifies the manager about the verification result.

  6. If the rendered frames pass the verification, then the manager notifies the user by a message containing the URL to the rendered frames. Otherwise, these frames are rejected.

  7. The user downloads the frames from the storage and manually confirms whether they meet the expectation, if they do not then the user sends a bad result claim to the manager.

The managers synchronize a database of rendering and verification tasks. That makes the rendering service being both logically and physically decentralized: a graphics scene can be simultaneously rendered by different workers and later checked by different verifiers, the machines of workers and verifiers can be also located at different geographical locations.

A typical rendering session contains several steps as shown in and explained below:

Figure 1
Rendering flow