ultralytics-thop 0.2.8__tar.gz → 0.2.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/PKG-INFO +1 -1
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/tests/test_relu.py +1 -2
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/thop/__init__.py +1 -1
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/thop/fx_profile.py +3 -4
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/thop/vision/basic_hooks.py +1 -8
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/ultralytics_thop.egg-info/PKG-INFO +1 -1
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/LICENSE +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/README.md +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/pyproject.toml +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/setup.cfg +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/tests/test_conv2d.py +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/tests/test_matmul.py +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/tests/test_utils.py +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/thop/profile.py +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/thop/rnn_hooks.py +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/thop/utils.py +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/thop/vision/__init__.py +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/thop/vision/calc_func.py +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/ultralytics_thop.egg-info/SOURCES.txt +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/ultralytics_thop.egg-info/dependency_links.txt +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/ultralytics_thop.egg-info/requires.txt +0 -0
 - {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/ultralytics_thop.egg-info/top_level.txt +0 -0
 
| 
         @@ -9,8 +9,7 @@ class TestUtils: 
     | 
|
| 
       9 
9 
     | 
    
         
             
                    """Tests the ReLU activation function to ensure it has zero FLOPs and checks parameter count using THOP
         
     | 
| 
       10 
10 
     | 
    
         
             
                    profiling.
         
     | 
| 
       11 
11 
     | 
    
         
             
                    """
         
     | 
| 
       12 
     | 
    
         
            -
                    n, in_c,  
     | 
| 
       13 
     | 
    
         
            -
                    data = torch.randn(n, in_c)
         
     | 
| 
      
 12 
     | 
    
         
            +
                    n, in_c, _out_c = 1, 100, 200
         
     | 
| 
       14 
13 
     | 
    
         
             
                    net = nn.ReLU()
         
     | 
| 
       15 
14 
     | 
    
         
             
                    flops, params = profile(net, inputs=(torch.randn(n, in_c),))
         
     | 
| 
       16 
15 
     | 
    
         
             
                    print(flops, params)
         
     | 
| 
         @@ -33,10 +33,10 @@ def count_matmul(input_shapes, output_shapes): 
     | 
|
| 
       33 
33 
     | 
    
         | 
| 
       34 
34 
     | 
    
         
             
            def count_fn_linear(input_shapes, output_shapes, *args, **kwargs):
         
     | 
| 
       35 
35 
     | 
    
         
             
                """Calculates total operations (FLOPs) for a linear layer given input and output shapes."""
         
     | 
| 
       36 
     | 
    
         
            -
                 
     | 
| 
      
 36 
     | 
    
         
            +
                flops = count_matmul(input_shapes, output_shapes)
         
     | 
| 
       37 
37 
     | 
    
         
             
                if "bias" in kwargs:
         
     | 
| 
       38 
     | 
    
         
            -
                     
     | 
| 
       39 
     | 
    
         
            -
                return  
     | 
| 
      
 38 
     | 
    
         
            +
                    flops += output_shapes[0].numel()
         
     | 
| 
      
 39 
     | 
    
         
            +
                return flops
         
     | 
| 
       40 
40 
     | 
    
         | 
| 
       41 
41 
     | 
    
         | 
| 
       42 
42 
     | 
    
         
             
            from .vision.calc_func import calculate_conv
         
     | 
| 
         @@ -131,7 +131,6 @@ def fx_profile(mod: nn.Module, input: th.Tensor, verbose=False): 
     | 
|
| 
       131 
131 
     | 
    
         
             
                information if verbose.
         
     | 
| 
       132 
132 
     | 
    
         
             
                """
         
     | 
| 
       133 
133 
     | 
    
         
             
                gm: torch.fx.GraphModule = symbolic_trace(mod)
         
     | 
| 
       134 
     | 
    
         
            -
                g = gm.graph
         
     | 
| 
       135 
134 
     | 
    
         
             
                ShapeProp(gm).propagate(input)
         
     | 
| 
       136 
135 
     | 
    
         | 
| 
       137 
136 
     | 
    
         
             
                fprint = null_print
         
     | 
| 
         @@ -10,7 +10,6 @@ multiply_adds = 1 
     | 
|
| 
       10 
10 
     | 
    
         | 
| 
       11 
11 
     | 
    
         
             
            def count_parameters(m, x, y):
         
     | 
| 
       12 
12 
     | 
    
         
             
                """Calculate and update the total number of parameters in a given PyTorch model."""
         
     | 
| 
       13 
     | 
    
         
            -
                total_params = sum(torch.DoubleTensor([p.numel()]) for p in m.parameters())
         
     | 
| 
       14 
13 
     | 
    
         
             
                m.total_params[0] = calculate_parameters(m.parameters())
         
     | 
| 
       15 
14 
     | 
    
         | 
| 
       16 
15 
     | 
    
         | 
| 
         @@ -22,10 +21,7 @@ def zero_ops(m, x, y): 
     | 
|
| 
       22 
21 
     | 
    
         
             
            def count_convNd(m: _ConvNd, x, y: torch.Tensor):
         
     | 
| 
       23 
22 
     | 
    
         
             
                """Calculate and add the number of convolutional operations (FLOPs) to the model's total operations count."""
         
     | 
| 
       24 
23 
     | 
    
         
             
                x = x[0]
         
     | 
| 
       25 
     | 
    
         
            -
             
     | 
| 
       26 
     | 
    
         
            -
                kernel_ops = torch.zeros(m.weight.size()[2:]).numel()  # Kw x Kh
         
     | 
| 
       27 
     | 
    
         
            -
                bias_ops = 1 if m.bias is not None else 0
         
     | 
| 
       28 
     | 
    
         
            -
             
     | 
| 
      
 24 
     | 
    
         
            +
                
         
     | 
| 
       29 
25 
     | 
    
         
             
                m.total_ops += calculate_conv2d_flops(
         
     | 
| 
       30 
26 
     | 
    
         
             
                    input_size=list(x.shape),
         
     | 
| 
       31 
27 
     | 
    
         
             
                    output_size=list(y.shape),
         
     | 
| 
         @@ -95,9 +91,6 @@ def count_prelu(m, x, y): 
     | 
|
| 
       95 
91 
     | 
    
         
             
            def count_relu(m, x, y):
         
     | 
| 
       96 
92 
     | 
    
         
             
                """Calculate and update the total operation counts for a ReLU layer."""
         
     | 
| 
       97 
93 
     | 
    
         
             
                x = x[0]
         
     | 
| 
       98 
     | 
    
         
            -
             
     | 
| 
       99 
     | 
    
         
            -
                nelements = x.numel()
         
     | 
| 
       100 
     | 
    
         
            -
             
     | 
| 
       101 
94 
     | 
    
         
             
                m.total_ops += calculate_relu_flops(list(x.shape))
         
     | 
| 
       102 
95 
     | 
    
         | 
| 
       103 
96 
     | 
    
         | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
    
        {ultralytics_thop-0.2.8 → ultralytics_thop-0.2.9}/ultralytics_thop.egg-info/dependency_links.txt
    RENAMED
    
    | 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     |