The v++ command executes various AMD tools during kernel compilation and linking. These tools
generate messages that provide build statuses. These messages can be relevant to you depending
on your focus and design phase. The Message Rule file (.mrf) can be used to better manage these messages. It provides commands to
promote important messages to the terminal or suppress unimportant ones. This helps you better
understand the kernel build result and explore methods to optimize the kernel.
The Message Rule file is a text file consisting of comments and supported commands. Only one command is allowed on each line.
Comment
Any line with “#” as the first non-white space
character is a comment.
Supported Commands
By default, v++ recursively scans the
entire working directory and promotes all error messages to the v++ output. The promote and suppress commands below provide more control on the v++ output.
-
promote: This command indicates that matching messages need to be promoted to thev++output. -
suppress: This command indicates that matching messages need to be suppressed or filtered from thev++output. Errors cannot be suppressed.
Enter only one command per line.
Command Options
The Message Rule file can have multiple promote and suppress commands. Each command can have
one and only one of the options below. The options are case-sensitive.
-
-id [<message_id>]: All messages matching the specified message ID are promoted or suppressed. The message ID is in format of nnn-mmm. As an example, the following is a warning message from HLS. The message ID in this case is 204-68.WARNING: [V++ 204-68] Unable to enforce a carried dependence constraint (II = 1, distance = 1, offset = 1) between bus request on port 'gmem' (/matrix_multiply_cl_kernel/mmult1.cl:57) and bus request on port 'gmem'-severity [severity_level]For example, to suppress messages with message ID 204-68, specify the following:
suppress -id 204-68. -
-severity [<severity_level>]: The following are valid values for the severity level. The tool promotes or suppresses all messages that match the specified severity level.-
info -
warning -
critical_warningFor example, to promote messages with severity of 'critical-warning', specify the following:
promote -severity critical_warning.
-
Precedence of Message Rules
The suppress rules take precedence over
promote rules. If the same message ID or severity level is
passed to both promote and suppress commands in the Message Rule file, the matching messages are suppressed and
not displayed.
Example of Message Rule File
The following is an example of a valid Message Rule file:
# promote all warning, critical warning
promote -severity warning
promote -severity critical_warning
# suppress the critical warning message with id 19-2342
suppress -id 19-2342