Giter VIP home page Giter VIP logo

kubevirt-gfx-sriov's Introduction

DISCONTINUATION OF PROJECT

This project will no longer be maintained by Intel.
Intel has ceased development and contributions including, but not limited to, maintenance, bug fixes, new releases, or updates, to this project.
Intel no longer accepts patches to this project.
If you have an ongoing need to use this project, are interested in independently developing it, or would like to maintain patches for the open source software community, please create your own fork of this project.

Intel® Graphics SR-IOV Enablement Toolkit

This project contains the software components and ingredients to enable Intel's graphics virtualization technology (Graphics SR-IOV) on cloud/edge-native infrastructure. The aim is to deliver GPU-accelerated workloads capability to virtual machines running on Kubernetes cluster
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Architecture Design
  5. Troubleshooting
  6. Resources
  7. License

About The Project

Intel Graphics SR-IOV Technology

Graphics SR-IOV is Intel's latest Virtualization Technology for Graphics. Single Root I/O Virtualization (SR-IOV) defines a standard method for sharing a physical device function by partitioning the device into multiple virtual functions. Each virtual function is directly assigned to a virtual machine, thereby achieving near native performance for the virtual machine

The key benefits of Intel Graphics SR-IOV are:

  • A standard method of sharing physical GPU with virtual machines, thus allowing efficient use of GPU resource in a virtual system
  • Improved video transcode, media AI analytics and Virtual Desktop Infrastructure (VDI) workloads performance in virtual machine
  • Support up to 4 independent display output and 7 virtualized functions (12th Generation Intel Core embedded processors)
  • Support multiple guest operating system

Cloud/Edge Native Technology

Application containerization and Kubernetes orchestrator have revolutionarized the way software is developed and deployed. The containerization era has led to the development of microservices that typically run as containers and have the advantage of being lightweight, require less memory, fast startup time and operate at native performance. But there are scenarios where your application still need to run as full-fledge virtual manchines and cannot be run as containers due to legacy software support or integration complexity.

In order to achieve the best of both worlds, we can leverage Kubernetes and KubeVirt, a Kubernetes extension, that allows running traditional virtual machine workloads natively side by side with container workloads. With this solution, you can have the advantage of a single infrastructure for both containerized and virtualized workloads. You can also benefit from the power and features of Kubernetes

Intel Graphics SR-IOV Enablement Toolkit

This repository contains scripts, manifests and documentation, collectively known as the Intel Graphics SR-IOV Enablement Tookit to help software developer enable Graphics SR-IOV for cloud/edge native application development

Product Name Screen Shot

(back to top)

Getting Started

Access to appropriate hardware and drivers is required for the setup. Graphics SR-IOV technology is supported on the following Intel products:

  • 12th Generation Intel Core embedded processors (Alder Lake)+

Prerequisites

Installation

Quick Install

  1. Clone the repo and install toolkit. When prompted, answer 'y' to proceed with the installation.

    Note: If operating behind corporate firewall, setup the proxy settings before continue. easy_install.sh should only be run on newly setup system to prevent overwriting existing installed software and configuration. For more customized installation, please see Manual Install

    git clone https://github.com/intel/kubevirt-gfx-sriov.git gfx-sriov
    
    cd gfx-sriov
    
    ./scripts/easy_install.sh
  2. After reboot, check for the presence of intel.com/sriov-gpudevices resource

    Note: Please wait for all pods' STATUS=Running by checking with the following command: kubectl get pods -n kubevirt

    kubectl describe nodes

    Output:

    Capacity:
      intel.com/sriov-gpudevice:     7
    Allocatable:
      intel.com/sriov-gpudevice:     7
    Allocated resources:
      Resource                       Requests     Limits
      --------                       --------     ------
      intel.com/sriov-gpudevice      0            0
  3. After completing the installation of Intel® Graphics SR-IOV Enablement Toolkit, proceed to the Usage section below to setup Virtual Machines

(back to top)

Usage

Follow the links below for instructions on how to setup and deploy virtual machines using this toolkit

Deploy Windows Virtual Machine

Deploy Ubuntu Virtual Machine

For more examples, please refer to the Documentation

(back to top)

Architecture Design

Refer to the link below for information on the architecture and design of the overall solution

Architecture and Design

(back to top)

Troubleshooting

Refer to the link below for common problems people encounter

Troubleshooting

(back to top)

Resources

(back to top)

License

Distributed under the Apache License, Version 2.0. See LICENSE for more information.

(back to top)

kubevirt-gfx-sriov's People

Contributors

huichuno avatar chooilan avatar unrahul avatar shaoboon avatar sfblackl-intel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.