# Guided Auto Parallelism Messages

### Note

This feature is only available for ifort.

The Guided Auto Parallelism (GAP) messages provide advice that should improve optimizations.

The messages provide suggestions for:

- Automatic parallelization of loop nests

- Automatic vectorization of inner loops

- Data transformation

You must decide whether to follow a particular suggestion. For example, if the advice is to apply a particular directive, you must understand the semantics of the directive and carefully consider whether it can be safely applied to the loop (or loop nest) in question.

If you apply the directive improperly, the compiler may generate incorrect code, causing the application to execute incorrectly.

If you do not fully understand the suggested advice, please refer to the relevant topics in the compiler documentation before applying that advice.

Once you apply the suggested advice, the compiler assumes that it is correct and it does not perform any checks or issue any warnings.

In general, messages that relate to loops tend to target vectorization and/or parallelization of loops. If you are not familiar with loop optimizations, please refer to the compiler documentation on this kind of optimization.

Optimizations can be helped or hindered when data is fetched from or stored to memory. Sometimes these fetch and store operations are referred to as reads and writes, but do not confuse these with `READ` and `WRITE` input/output statements. A `READ` statement (input) is only one of many ways to cause a store to memory, and a `WRITE` statement (output) is only one of many ways to cause a fetch from memory. Values in an expression must be fetched from (read from) memory before the expression can be evaluated. Variables on the left-hand side of an assignment will be the target of a store to (write to) memory. Actual arguments passed to called procedures can be fetched from and stored to memory.

Parent topic: Guided Auto Parallelism

- GAP Message (Diagnostic ID 30506)
- GAP Message (Diagnostic ID 30513)
- GAP Message (Diagnostic ID 30515)
- GAP Message (Diagnostic ID 30519)
- GAP Message (Diagnostic ID 30521)
- GAP Message (Diagnostic ID 30522)
- GAP Message (Diagnostic ID 30523)
- GAP Message (Diagnostic ID 30525)
- GAP Message (Diagnostic ID 30526)
- GAP Message (Diagnostic ID 30528)
- GAP Message (Diagnostic ID 30531)
- GAP Message (Diagnostic ID 30532)
- GAP Message (Diagnostic ID 30533)
- GAP Message (Diagnostic ID 30538)

## See Also

Using Guided Auto Parallelism
Guided Auto Parallelism
Enabling Auto-parallelization
Enabling Further Loop Parallelization for Multicore Platforms
Loop Constructs