~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/accel/introduction.rst

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/accel/introduction.rst (Version linux-6.11.5) and /Documentation/accel/introduction.rst (Version linux-4.13.16)


  1 .. SPDX-License-Identifier: GPL-2.0               
  2                                                   
  3 ============                                      
  4 Introduction                                      
  5 ============                                      
  6                                                   
  7 The Linux compute accelerators subsystem is de    
  8 accelerators in a common way to user-space and    
  9 functionality.                                    
 10                                                   
 11 These devices can be either stand-alone ASICs     
 12 Although these devices are typically designed     
 13 Machine-Learning (ML) and/or Deep-Learning (DL    
 14 is not limited to handling these types of acce    
 15                                                   
 16 Typically, a compute accelerator will belong t    
 17 categories:                                       
 18                                                   
 19 - Edge AI - doing inference at an edge device.    
 20   or an IP inside a SoC (e.g. laptop web camer    
 21   are typically configured using registers and    
 22                                                   
 23 - Inference data-center - single/multi user de    
 24   type of device can be stand-alone or an IP i    
 25   have on-board DRAM (to hold the DL topology)    
 26   command submission queues (either kernel or     
 27   It might also have an MMU to manage multiple    
 28   virtualization (SR-IOV) to support multiple     
 29   addition, these devices will usually have so    
 30   debugger.                                       
 31                                                   
 32 - Training data-center - Similar to Inference     
 33   have more computational power and memory b/w    
 34   a method of scaling-up/out, i.e. connecting     
 35   the server or in other servers, respectively    
 36                                                   
 37 All these devices typically have different run    
 38 that are tailored-made to their h/w. In additi    
 39 include a compiler to generate programs to the    
 40 engines. Typically, the common layer in user-s    
 41 such as PyTorch and TensorFlow.                   
 42                                                   
 43 Sharing code with DRM                             
 44 =====================                             
 45                                                   
 46 Because this type of devices can be an IP insi    
 47 characteristics as those of GPUs, the accel su    
 48 DRM subsystem's code and functionality. i.e. t    
 49 be part of the DRM subsystem and an accel devi    
 50 device.                                           
 51                                                   
 52 This will allow us to leverage the extensive D    
 53 collaborate with DRM developers that have expe    
 54 devices. In addition, new features that will b    
 55 drivers can be of use to GPU drivers as well.     
 56                                                   
 57 Differentiation from GPUs                         
 58 =========================                         
 59                                                   
 60 Because we want to prevent the extensive user-    
 61 from trying to use an accelerator as a GPU, th    
 62 differentiated from GPUs by using a new major     
 63                                                   
 64 Furthermore, the drivers will be located in a     
 65 tree - drivers/accel/.                            
 66                                                   
 67 The accelerator devices will be exposed to the    
 68 261 major number and will have the following c    
 69                                                   
 70 - device char files - /dev/accel/accel\*          
 71 - sysfs             - /sys/class/accel/accel\*    
 72 - debugfs           - /sys/kernel/debug/accel/    
 73                                                   
 74 Getting Started                                   
 75 ===============                                   
 76                                                   
 77 First, read the DRM documentation at Documenta    
 78 Not only it will explain how to write a new DR    
 79 contain all the information on how to contribu    
 80 what is the coding style/documentation. All of    
 81 accel subsystem.                                  
 82                                                   
 83 Second, make sure the kernel is configured wit    
 84                                                   
 85 To expose your device as an accelerator, two c    
 86 be done in your driver (as opposed to a standa    
 87                                                   
 88 - Add the DRIVER_COMPUTE_ACCEL feature flag in    
 89   driver_features field. It is important to no    
 90   mutually exclusive with DRIVER_RENDER and DR    
 91   to expose both graphics and compute device c    
 92   two drivers that are connected using the aux    
 93                                                   
 94 - Change the open callback in your driver fops    
 95   Alternatively, your driver can use DEFINE_DR    
 96   set the correct function operations pointers    
 97                                                   
 98 External References                               
 99 ===================                               
100                                                   
101 email threads                                     
102 -------------                                     
103                                                   
104 * `Initial discussion on the New subsystem for<    
105 * `patch-set to add the new subsystem <https://    
106                                                   
107 Conference talks                                  
108 ----------------                                  
109                                                   
110 * `LPC 2022 Accelerators BOF outcomes summary     
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php