File size: 6,490 Bytes
4fcc03d
 
5eb950d
 
 
 
 
 
 
 
 
 
4fcc03d
 
5eb950d
4fcc03d
 
 
5eb950d
4fcc03d
 
 
5eb950d
4fcc03d
 
 
 
 
5eb950d
4fcc03d
 
 
5eb950d
4fcc03d
 
 
5eb950d
4fcc03d
 
 
5eb950d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import torch

try:
    from ._ops import ops
except ImportError as e:
    # Fallback for local development.
    try:
        import _activation
        ops = torch.ops._activition
    except ImportError:
        raise e
    

def silu_and_mul(out: torch.Tensor, x: torch.Tensor) -> None:                                                                                                                                                                           
    ops.silu_and_mul(out, x)                                                                                                                                                                                                   
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        
def gelu_and_mul(out: torch.Tensor, x: torch.Tensor) -> None:                                                                                                                                                                           
    ops.gelu_and_mul(out, x)                                                                                                                                                                                                   
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        
def gelu_tanh_and_mul(out: torch.Tensor, x: torch.Tensor) -> None:                                                                                                                                                                      
    ops.gelu_tanh_and_mul(out, x)                                                                                                                                                                                              
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        
def fatrelu_and_mul(out: torch.Tensor,                                                                                                                                                                                                  
                    x: torch.Tensor,                                                                                                                                                                                                    
                    threshold: float = 0.0) -> None:                                                                                                                                                                                    
    ops.fatrelu_and_mul(out, x, threshold)                                                                                                                                                                                     
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        
def gelu_fast(out: torch.Tensor, x: torch.Tensor) -> None:                                                                                                                                                                              
    ops.gelu_fast(out, x)                                                                                                                                                                                                      
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        
def gelu_new(out: torch.Tensor, x: torch.Tensor) -> None:                                                                                                                                                                               
    ops.gelu_new(out, x)                                                                                                                                                                                                       
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        
def gelu_quick(out: torch.Tensor, x: torch.Tensor) -> None:                                                                                                                                                                             
    ops.gelu_quick(out, x)