if you upgrading to Oracle 12c, sometimes seen high CPU use in the MMON_SLAVE modules.These are associated with Oracle new Automatic Report Capturing functionality.

Oracle 11g is introduced real-time SQL monitoring , for real-time monitoring of the performance of SQL in the implementation;
Oracle 12c to further expand its introduction of the historical SQL monitoring function. This function is similar to the history management of the ASH information through the background process MMON_SLAVE on a regular basis to SQL monitoring information stored in the database table.

As part of this feature, some monitoring SQLs are executed by MMON_SLAVE to identify the resource-intensive SQLs and
generate the SQL Monitoring report automatically for those SQLs. Those SQLs consume little more CPU and it is expected behavior being a new feature.Such monitoring queries can be identified from (G)V$SQLSTATS.

MMON consumes little more CPU due to the monitoring activity in 12.1, However, If the CPU consumption is significantly high then it is not an expected behavior and could be due to optimizer choosing suboptimal plan for the SQL statements.
This can happen due to Adaptive Optimization, a new feature in 12c.

High CPU consumption and time spent while executing monitor-related queries from both MMON_SLAVE like following:

TIP:
The service_name in the argument corresponds to the service_name of the v$ session view,
the module_name corresponds to the module of the v$session view,
and the action_name corresponds to the action of the v$session view. The query is as follows: