options

exec - 2025-04-04 01:25:21 - MAQAO 2.21.1

Help is available by moving the cursor above any symbol or by checking MAQAO website.

Optimizer

Loop IDAnalysisPenalty Score
Loop 258 - exec+Execution Time: 9 % - Vectorization Ratio: 47.47 % - Vector Length Use: 37.05 %
Loop Computation Issues+56
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 14 issues (= instructions) costing 4 points each.56
Data Access Issues+1024
[SA] Presence of constant non unit stride data access - Use array restructuring, perform loop interchange or use gather instructions to lower a bit the cost. There are 272 issues ( = data accesses) costing 2 point each.544
[SA] Presence of special instructions executing on a single port (INSERT/EXTRACT, BLEND/MERGE, BROADCAST, Other_packing) - Simplify data access and try to get stride 1 access. There are 480 issues (= instructions) costing 1 point each.480
Vectorization Roadblocks+544
[SA] Presence of constant non unit stride data access - Use array restructuring, perform loop interchange or use gather instructions to lower a bit the cost. There are 272 issues ( = data accesses) costing 2 point each.544
Inefficient Vectorization+482
[SA] Presence of special instructions executing on a single port (INSERT/EXTRACT, BLEND/MERGE, BROADCAST, Other_packing) - Simplify data access and try to get stride 1 access. There are 480 issues (= instructions) costing 1 point each.480
[SA] Inefficient vectorization: use of masked instructions - Simplify control structure. The issue costs 2 points.2
Loop 728 - exec+Execution Time: 7 % - Vectorization Ratio: 10.98 % - Vector Length Use: 13.87 %
Loop Computation Issues+40
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 10 issues (= instructions) costing 4 points each.40
Control Flow Issues+9
[SA] Too many paths (5 paths) - Simplify control structure. There are 5 issues ( = paths) costing 1 point each with a malus of 4 points.9
Vectorization Roadblocks+9
[SA] Too many paths (5 paths) - Simplify control structure. There are 5 issues ( = paths) costing 1 point each with a malus of 4 points.9
Loop 340 - exec+Execution Time: 5 % - Vectorization Ratio: 100.00 % - Vector Length Use: 100.00 %
Loop Computation Issues+12
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 3 issues (= instructions) costing 4 points each.12
Data Access Issues+2
[SA] Inefficient vectorization: more than 10% of the vector loads instructions are unaligned - When allocating arrays, don’t forget to align them. There are 0 issues ( = arrays) costing 2 points each0
[SA] More than 20% of the loads are accessing the stack - Perform loop splitting to decrease pressure on registers. This issue costs 2 points.2
Loop 215 - exec+Execution Time: 5 % - Vectorization Ratio: 48.25 % - Vector Length Use: 39.02 %
Loop Computation Issues+24
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 6 issues (= instructions) costing 4 points each.24
Data Access Issues+349
[SA] Presence of constant non unit stride data access - Use array restructuring, perform loop interchange or use gather instructions to lower a bit the cost. There are 26 issues ( = data accesses) costing 2 point each.52
[SA] Presence of indirect accesses - Use array restructuring or gather instructions to lower the cost. There are 7 issues ( = indirect data accesses) costing 4 point each.28
[SA] Inefficient vectorization: more than 10% of the vector loads instructions are unaligned - When allocating arrays, don’t forget to align them. There are 0 issues ( = arrays) costing 2 points each0
[SA] Presence of special instructions executing on a single port (INSERT/EXTRACT, BLEND/MERGE, BROADCAST, Other_packing) - Simplify data access and try to get stride 1 access. There are 267 issues (= instructions) costing 1 point each.267
[SA] More than 20% of the loads are accessing the stack - Perform loop splitting to decrease pressure on registers. This issue costs 2 points.2
Vectorization Roadblocks+80
[SA] Presence of constant non unit stride data access - Use array restructuring, perform loop interchange or use gather instructions to lower a bit the cost. There are 26 issues ( = data accesses) costing 2 point each.52
[SA] Presence of indirect accesses - Use array restructuring or gather instructions to lower the cost. There are 7 issues ( = indirect data accesses) costing 4 point each.28
Inefficient Vectorization+269
[SA] Presence of special instructions executing on a single port (INSERT/EXTRACT, BLEND/MERGE, BROADCAST, Other_packing) - Simplify data access and try to get stride 1 access. There are 267 issues (= instructions) costing 1 point each.267
[SA] Inefficient vectorization: use of masked instructions - Simplify control structure. The issue costs 2 points.2
Loop 337 - exec+Execution Time: 4 % - Vectorization Ratio: 100.00 % - Vector Length Use: 100.00 %
Loop Computation Issues+12
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 3 issues (= instructions) costing 4 points each.12
Data Access Issues+2
[SA] Inefficient vectorization: more than 10% of the vector loads instructions are unaligned - When allocating arrays, don’t forget to align them. There are 0 issues ( = arrays) costing 2 points each0
[SA] More than 20% of the loads are accessing the stack - Perform loop splitting to decrease pressure on registers. This issue costs 2 points.2
Loop 290 - exec+Execution Time: 4 % - Vectorization Ratio: 100.00 % - Vector Length Use: 100.00 %
Loop Computation Issues+36
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 8 issues (= instructions) costing 4 points each.32
[SA] Less than 10% of the FP ADD/SUB/MUL arithmetic operations are performed using FMA - Reorganize arithmetic expressions to exhibit potential for FMA. This issue costs 4 points.4
Data Access Issues+0
[SA] Inefficient vectorization: more than 10% of the vector loads instructions are unaligned - When allocating arrays, don’t forget to align them. There are 0 issues ( = arrays) costing 2 points each0
Loop 212 - exec+Execution Time: 4 % - Vectorization Ratio: 46.23 % - Vector Length Use: 37.83 %
Loop Computation Issues+24
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 6 issues (= instructions) costing 4 points each.24
Data Access Issues+288
[SA] Presence of constant non unit stride data access - Use array restructuring, perform loop interchange or use gather instructions to lower a bit the cost. There are 25 issues ( = data accesses) costing 2 point each.50
[SA] Presence of indirect accesses - Use array restructuring or gather instructions to lower the cost. There are 8 issues ( = indirect data accesses) costing 4 point each.32
[SA] Inefficient vectorization: more than 10% of the vector loads instructions are unaligned - When allocating arrays, don’t forget to align them. There are 0 issues ( = arrays) costing 2 points each0
[SA] Presence of special instructions executing on a single port (INSERT/EXTRACT, BLEND/MERGE, Other_packing) - Simplify data access and try to get stride 1 access. There are 204 issues (= instructions) costing 1 point each.204
[SA] More than 20% of the loads are accessing the stack - Perform loop splitting to decrease pressure on registers. This issue costs 2 points.2
Vectorization Roadblocks+82
[SA] Presence of constant non unit stride data access - Use array restructuring, perform loop interchange or use gather instructions to lower a bit the cost. There are 25 issues ( = data accesses) costing 2 point each.50
[SA] Presence of indirect accesses - Use array restructuring or gather instructions to lower the cost. There are 8 issues ( = indirect data accesses) costing 4 point each.32
Inefficient Vectorization+206
[SA] Presence of special instructions executing on a single port (INSERT/EXTRACT, BLEND/MERGE, Other_packing) - Simplify data access and try to get stride 1 access. There are 204 issues (= instructions) costing 1 point each.204
[SA] Inefficient vectorization: use of masked instructions - Simplify control structure. The issue costs 2 points.2
Loop 195 - exec+Execution Time: 4 % - Vectorization Ratio: 100.00 % - Vector Length Use: 100.00 %
Loop Computation Issues+6
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 1 issues (= instructions) costing 4 points each.4
[SA] Presence of a large number of scalar integer instructions - Simplify loop structure, perform loop splitting or perform unroll and jam. This issue costs 2 points.2
Data Access Issues+2
[SA] Inefficient vectorization: more than 10% of the vector loads instructions are unaligned - When allocating arrays, don’t forget to align them. There are 0 issues ( = arrays) costing 2 points each0
[SA] More than 20% of the loads are accessing the stack - Perform loop splitting to decrease pressure on registers. This issue costs 2 points.2
Loop 230 - exec+Execution Time: 3 % - Vectorization Ratio: 100.00 % - Vector Length Use: 100.00 %
Loop Computation Issues+16
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 4 issues (= instructions) costing 4 points each.16
Data Access Issues+0
[SA] Inefficient vectorization: more than 10% of the vector loads instructions are unaligned - When allocating arrays, don’t forget to align them. There are 0 issues ( = arrays) costing 2 points each0
Loop 236 - exec+Execution Time: 3 % - Vectorization Ratio: 100.00 % - Vector Length Use: 100.00 %
Loop Computation Issues+16
[SA] Presence of expensive FP instructions - Perform hoisting, change algorithm, use SVML or proper numerical library or perform value profiling (count the number of distinct input values). There are 4 issues (= instructions) costing 4 points each.16
Data Access Issues+0
[SA] Inefficient vectorization: more than 10% of the vector loads instructions are unaligned - When allocating arrays, don’t forget to align them. There are 0 issues ( = arrays) costing 2 points each0
×