P4C
The P4 Compiler
|
#include <power_spec.h>
Public Member Functions | |
virtual double | get_absolute_max_power_threshold () const =0 |
virtual int | get_action_latency_contribution () const |
virtual int | get_base_delay () const |
virtual int | get_base_predication_delay () const |
virtual int | get_concurrent_latency_contribution () const =0 |
virtual int | get_cycles_to_issue_credit_to_pmarb () const =0 |
virtual double | get_deferred_ram_read_power () const =0 |
virtual double | get_deferred_ram_write_power () const =0 |
virtual int | get_deparser_max_phv_valid () const =0 |
virtual int | get_deparser_throughput_scaling_starts () const =0 |
virtual double | get_excess_power_threshold () const =0 |
virtual double | get_map_ram_read_power () const =0 |
virtual double | get_map_ram_write_power () const =0 |
virtual int | get_mau_corner_turn_delay () const =0 |
virtual double | get_max_power () const =0 |
virtual int | get_meter_lpf_delay () const |
virtual int | get_min_required_egress_mau_latency () const =0 |
virtual int | get_pmarb_cycles_from_receive_credit_to_issue_phv_to_mau () const =0 |
virtual double | get_ram_read_power () const =0 |
virtual double | get_ram_scaling_factor () const =0 |
virtual double | get_ram_write_power () const =0 |
virtual int | get_selector_delay () const |
virtual int | get_stateful_delay () const |
virtual int | get_tcam_delay () const |
virtual double | get_tcam_scaling_factor () const =0 |
virtual double | get_tcam_search_power () const =0 |
virtual double | get_voltage_scaling_factor () const =0 |
Copyright (C) 2024 Intel Corporation
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
SPDX-License-Identifier: Apache-2.0 This class encapsulates MAU power-related elements of the target device model, such as the measured or modeled power consumption of a read and/or write of each memory type in the MAU. In general, raw power estimates should not be exposed to the end user, other than the final total. Instead, a unitless normalized value should be used. Since power needs MAU stage latency information (for Tofino at least), MAU stage cycle latencies are also represented here.
|
inlinevirtual |
For computing MAU stage latencies (number of clock cycles).
|
pure virtual |
For computing latency contribution of a MAU stage.
Implemented in JBayMauPowerSpec, and TofinoMauPowerSpec.
|
pure virtual |
Implemented in JBayMauPowerSpec.
|
pure virtual |
For scaling MAU power based on deparser buffer depth. The deparser limits how many PHVs may be traversing the MAU pipeline simultaneously.
Implemented in JBayMauPowerSpec, and TofinoMauPowerSpec.
|
pure virtual |
The additional power given when –disable-power-check is provided at the command line.
Implemented in JBayMauPowerSpec, and TofinoMauPowerSpec.
|
pure virtual |
Implemented in JBayMauPowerSpec.
|
pure virtual |
For enforcing minimum latency (where appropriate).
Implemented in JBayMauPowerSpec, and TofinoMauPowerSpec.
|
pure virtual |
Memory access power consumption (in Watts) Note that these numbers are not to be made available in any user-facing form.
Implemented in JBayMauPowerSpec, and TofinoMauPowerSpec.
|
pure virtual |
Implemented in TofinoMauPowerSpec.