| +---------------------------------------------------------------------+ |
| | Log file: pa.log | |
| | Compiler version: 5.1.0 (fca32d1) | |
| | Created on: Wed Sep 13 12:56:57 2017 | |
| +---------------------------------------------------------------------+ |
| |
| HLIR Version: 0.10.5 |
| PHV container sizes are: [8, 16, 32] |
| Parser state extraction bandwidth: 224 |
| 8-bit: 4 extracts |
| 16-bit: 4 extracts |
| 32-bit: 4 extracts |
| Free containers to start for 8 bits: |
| Group 4 8 bits has 16 available |
| Group 5 8 bits has 16 available |
| Group 6 8 bits has 16 available |
| Group 7 8 bits has 16 available |
| Group 16 8 bits (tagalong) has 16 available |
| Group 17 8 bits (tagalong) has 16 available |
| Free containers to start for 16 bits: |
| Group 8 16 bits has 16 available |
| Group 9 16 bits has 16 available |
| Group 10 16 bits has 16 available |
| Group 11 16 bits has 16 available |
| Group 12 16 bits has 16 available |
| Group 13 16 bits has 16 available |
| Group 18 16 bits (tagalong) has 16 available |
| Group 19 16 bits (tagalong) has 16 available |
| Group 20 16 bits (tagalong) has 16 available |
| Free containers to start for 32 bits: |
| Group 0 32 bits has 16 available |
| Group 1 32 bits has 16 available |
| Group 2 32 bits has 16 available |
| Group 3 32 bits has 16 available |
| Group 14 32 bits (tagalong) has 16 available |
| Group 15 32 bits (tagalong) has 16 available |
| |
| |
| Initializing PHV allocation... |
| Ingress intrinsic metadata fields branch on includes: |
| ig_intr_md.ingress_port |
| |
| ----------------------------------------------- |
| User added PHV constraints |
| ----------------------------------------------- |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.ucast_egress_port <9 bits ingress imeta R W> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.level2_mcast_hash <13 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.level2_exclusion_id <9 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.mcast_grp_b <16 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.level1_exclusion_id <16 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.rid <16 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.level1_mcast_hash <13 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.mcast_grp_a <16 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_mb.ingress_mirror_id <10 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: eg_intr_md.egress_port <9 bits egress parsed imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: eg_intr_md_for_mb.egress_mirror_id <10 bits egress imeta> -- max split: 1 |
| |
| ----------------------------------------------- |
| Scanning for field list calculations |
| ----------------------------------------------- |
| |
| ----------------------------------------------- |
| Eliminating unused metadata (99 instances) |
| ----------------------------------------------- |
| Removing standard_metadata.ingress_port in ingress |
| Removing standard_metadata.packet_length in ingress |
| Removing standard_metadata.egress_spec in ingress |
| Removing standard_metadata.egress_port in ingress |
| Removing standard_metadata.egress_instance in ingress |
| Removing standard_metadata.instance_type in ingress |
| Removing standard_metadata.clone_spec in ingress |
| Removing standard_metadata._padding in ingress |
| Removing standard_metadata.valid in ingress |
| Removing ig_intr_md.ingress_mac_tstamp in ingress |
| Removing ig_intr_md.valid in ingress |
| Removing ig_intr_md_for_tm._pad1 in ingress |
| Removing ig_intr_md_for_tm.bypass_egress in ingress |
| Removing ig_intr_md_for_tm.deflect_on_drop in ingress |
| Removing ig_intr_md_for_tm.ingress_cos in ingress |
| Removing ig_intr_md_for_tm.qid in ingress |
| Removing ig_intr_md_for_tm.icos_for_copy_to_cpu in ingress |
| Removing ig_intr_md_for_tm._pad2 in ingress |
| Removing ig_intr_md_for_tm.copy_to_cpu in ingress |
| Removing ig_intr_md_for_tm.packet_color in ingress |
| Removing ig_intr_md_for_tm.disable_ucast_cutthru in ingress |
| Removing ig_intr_md_for_tm.enable_mcast_cutthru in ingress |
| Removing ig_intr_md_for_tm.mcast_grp_a in ingress |
| Removing ig_intr_md_for_tm.mcast_grp_b in ingress |
| Removing ig_intr_md_for_tm._pad3 in ingress |
| Removing ig_intr_md_for_tm.level1_mcast_hash in ingress |
| Removing ig_intr_md_for_tm._pad4 in ingress |
| Removing ig_intr_md_for_tm.level2_mcast_hash in ingress |
| Removing ig_intr_md_for_tm.level1_exclusion_id in ingress |
| Removing ig_intr_md_for_tm._pad5 in ingress |
| Removing ig_intr_md_for_tm.level2_exclusion_id in ingress |
| Removing ig_intr_md_for_tm.rid in ingress |
| Removing ig_intr_md_for_tm.valid in ingress |
| Removing ig_intr_md_for_mb._pad1 in ingress |
| Removing ig_intr_md_for_mb.ingress_mirror_id in ingress |
| Removing ig_intr_md_for_mb.valid in ingress |
| Removing eg_intr_md._pad0 in ingress |
| Removing eg_intr_md.egress_port in ingress |
| Removing eg_intr_md._pad1 in ingress |
| Removing eg_intr_md.enq_qdepth in ingress |
| Removing eg_intr_md._pad2 in ingress |
| Removing eg_intr_md.enq_congest_stat in ingress |
| Removing eg_intr_md.enq_tstamp in ingress |
| Removing eg_intr_md._pad3 in ingress |
| Removing eg_intr_md.deq_qdepth in ingress |
| Removing eg_intr_md._pad4 in ingress |
| Removing eg_intr_md.deq_congest_stat in ingress |
| Removing eg_intr_md.app_pool_congest_stat in ingress |
| Removing eg_intr_md.deq_timedelta in ingress |
| Removing eg_intr_md.egress_rid in ingress |
| Removing eg_intr_md._pad5 in ingress |
| Removing eg_intr_md.egress_rid_first in ingress |
| Removing eg_intr_md._pad6 in ingress |
| Removing eg_intr_md.egress_qid in ingress |
| Removing eg_intr_md._pad7 in ingress |
| Removing eg_intr_md.egress_cos in ingress |
| Removing eg_intr_md._pad8 in ingress |
| Removing eg_intr_md.deflection_flag in ingress |
| Removing eg_intr_md.pkt_length in ingress |
| Removing eg_intr_md.valid in ingress |
| Removing eg_intr_md_for_mb._pad1 in ingress |
| Removing eg_intr_md_for_mb.egress_mirror_id in ingress |
| Removing eg_intr_md_for_mb.coalesce_flush in ingress |
| Removing eg_intr_md_for_mb.coalesce_length in ingress |
| Removing eg_intr_md_for_mb.valid in ingress |
| Removing eg_intr_md_for_oport._pad1 in ingress |
| Removing eg_intr_md_for_oport.capture_tstamp_on_tx in ingress |
| Removing eg_intr_md_for_oport.update_delay_on_tx in ingress |
| Removing eg_intr_md_for_oport.force_tx_error in ingress |
| Removing eg_intr_md_for_oport.drop_ctl in ingress |
| Removing eg_intr_md_for_oport.valid in ingress |
| Removing eg_intr_md._pad1 in egress |
| Removing eg_intr_md.enq_qdepth in egress |
| Removing eg_intr_md._pad2 in egress |
| Removing eg_intr_md.enq_congest_stat in egress |
| Removing eg_intr_md.enq_tstamp in egress |
| Removing eg_intr_md._pad3 in egress |
| Removing eg_intr_md.deq_qdepth in egress |
| Removing eg_intr_md._pad4 in egress |
| Removing eg_intr_md.deq_congest_stat in egress |
| Removing eg_intr_md.app_pool_congest_stat in egress |
| Removing eg_intr_md.deq_timedelta in egress |
| Removing eg_intr_md.egress_rid in egress |
| Removing eg_intr_md._pad5 in egress |
| Removing eg_intr_md.egress_rid_first in egress |
| Removing eg_intr_md._pad6 in egress |
| Removing eg_intr_md.egress_qid in egress |
| Removing eg_intr_md._pad8 in egress |
| Removing eg_intr_md.deflection_flag in egress |
| Removing eg_intr_md.pkt_length in egress |
| Removing eg_intr_md_for_oport._pad1 in egress |
| Removing eg_intr_md_for_oport.capture_tstamp_on_tx in egress |
| Removing eg_intr_md_for_oport.update_delay_on_tx in egress |
| Removing eg_intr_md_for_oport.force_tx_error in egress |
| Removing eg_intr_md_for_oport.drop_ctl in egress |
| Removing eg_intr_md_for_mb._pad1 in egress |
| Removing eg_intr_md_for_mb.egress_mirror_id in egress |
| Removing eg_intr_md_for_mb.coalesce_flush in egress |
| Removing eg_intr_md_for_mb.coalesce_length in egress |
| |
| ----------------------------------------------- |
| Eliminating unused packet fields (6 instances) |
| ----------------------------------------------- |
| Removing packet_in_hdr.valid in ingress |
| Removing packet_out_hdr.valid in ingress |
| Removing ethernet.valid in ingress |
| Removing ipv4.valid in ingress |
| Removing tcp.valid in ingress |
| Removing udp.valid in ingress |
| |
| -------------------------------------------- |
| ingress field instance bit width histogram |
| -------------------------------------------- |
| Total fields: 48 |
| Max value: 13 |
| |
| 1 : xxxxxxxxx (9) |
| 2 : x (1) |
| 3 : xxxxx (5) |
| 4 : xxx (3) |
| 6 : x (1) |
| 7 : xx (2) |
| 8 : xxx (3) |
| 9 : xxxx (4) |
| 13 : x (1) |
| 16 : xxxxxxxxxxxxx (13) |
| 32 : xxxx (4) |
| 48 : xx (2) |
| |
| -------------------------------------------- |
| egress field instance bit width histogram |
| -------------------------------------------- |
| Total fields: 44 |
| Max value: 13 |
| |
| 1 : xxxxxx (6) |
| 3 : xxxx (4) |
| 4 : xxx (3) |
| 5 : x (1) |
| 6 : x (1) |
| 7 : xxx (3) |
| 8 : xxx (3) |
| 9 : xxx (3) |
| 13 : x (1) |
| 16 : xxxxxxxxxxxxx (13) |
| 32 : xxxx (4) |
| 48 : xx (2) |
| |
| HLIR Version: 0.10.5 |
| PHV container sizes are: [8, 16, 32] |
| Parser state extraction bandwidth: 224 |
| 8-bit: 4 extracts |
| 16-bit: 4 extracts |
| 32-bit: 4 extracts |
| Free containers to start for 8 bits: |
| Group 4 8 bits has 16 available |
| Group 5 8 bits has 16 available |
| Group 6 8 bits has 16 available |
| Group 7 8 bits has 16 available |
| Group 16 8 bits (tagalong) has 16 available |
| Group 17 8 bits (tagalong) has 16 available |
| Free containers to start for 16 bits: |
| Group 8 16 bits has 16 available |
| Group 9 16 bits has 16 available |
| Group 10 16 bits has 16 available |
| Group 11 16 bits has 16 available |
| Group 12 16 bits has 16 available |
| Group 13 16 bits has 16 available |
| Group 18 16 bits (tagalong) has 16 available |
| Group 19 16 bits (tagalong) has 16 available |
| Group 20 16 bits (tagalong) has 16 available |
| Free containers to start for 32 bits: |
| Group 0 32 bits has 16 available |
| Group 1 32 bits has 16 available |
| Group 2 32 bits has 16 available |
| Group 3 32 bits has 16 available |
| Group 14 32 bits (tagalong) has 16 available |
| Group 15 32 bits (tagalong) has 16 available |
| |
| |
| Initializing PHV allocation... |
| Ingress intrinsic metadata fields branch on includes: |
| ig_intr_md.ingress_port |
| |
| ----------------------------------------------- |
| User added PHV constraints |
| ----------------------------------------------- |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.ucast_egress_port <9 bits ingress imeta R W> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.level2_mcast_hash <13 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.level2_exclusion_id <9 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.mcast_grp_b <16 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.level1_exclusion_id <16 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.rid <16 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.level1_mcast_hash <13 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_tm.mcast_grp_a <16 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: ig_intr_md_for_mb.ingress_mirror_id <10 bits ingress imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: eg_intr_md.egress_port <9 bits egress parsed imeta> -- max split: 1 |
| User added constraint MaxFieldSplit Constraint: eg_intr_md_for_mb.egress_mirror_id <10 bits egress imeta> -- max split: 1 |
| |
| ----------------------------------------------- |
| Scanning for field list calculations |
| ----------------------------------------------- |
| |
| ----------------------------------------------- |
| Eliminating unused metadata (99 instances) |
| ----------------------------------------------- |
| Removing standard_metadata.ingress_port in ingress |
| Removing standard_metadata.packet_length in ingress |
| Removing standard_metadata.egress_spec in ingress |
| Removing standard_metadata.egress_port in ingress |
| Removing standard_metadata.egress_instance in ingress |
| Removing standard_metadata.instance_type in ingress |
| Removing standard_metadata.clone_spec in ingress |
| Removing standard_metadata._padding in ingress |
| Removing standard_metadata.valid in ingress |
| Removing ig_intr_md.ingress_mac_tstamp in ingress |
| Removing ig_intr_md.valid in ingress |
| Removing ig_intr_md_for_tm._pad1 in ingress |
| Removing ig_intr_md_for_tm.bypass_egress in ingress |
| Removing ig_intr_md_for_tm.deflect_on_drop in ingress |
| Removing ig_intr_md_for_tm.ingress_cos in ingress |
| Removing ig_intr_md_for_tm.qid in ingress |
| Removing ig_intr_md_for_tm.icos_for_copy_to_cpu in ingress |
| Removing ig_intr_md_for_tm._pad2 in ingress |
| Removing ig_intr_md_for_tm.copy_to_cpu in ingress |
| Removing ig_intr_md_for_tm.packet_color in ingress |
| Removing ig_intr_md_for_tm.disable_ucast_cutthru in ingress |
| Removing ig_intr_md_for_tm.enable_mcast_cutthru in ingress |
| Removing ig_intr_md_for_tm.mcast_grp_a in ingress |
| Removing ig_intr_md_for_tm.mcast_grp_b in ingress |
| Removing ig_intr_md_for_tm._pad3 in ingress |
| Removing ig_intr_md_for_tm.level1_mcast_hash in ingress |
| Removing ig_intr_md_for_tm._pad4 in ingress |
| Removing ig_intr_md_for_tm.level2_mcast_hash in ingress |
| Removing ig_intr_md_for_tm.level1_exclusion_id in ingress |
| Removing ig_intr_md_for_tm._pad5 in ingress |
| Removing ig_intr_md_for_tm.level2_exclusion_id in ingress |
| Removing ig_intr_md_for_tm.rid in ingress |
| Removing ig_intr_md_for_tm.valid in ingress |
| Removing ig_intr_md_for_mb._pad1 in ingress |
| Removing ig_intr_md_for_mb.ingress_mirror_id in ingress |
| Removing ig_intr_md_for_mb.valid in ingress |
| Removing eg_intr_md._pad0 in ingress |
| Removing eg_intr_md.egress_port in ingress |
| Removing eg_intr_md._pad1 in ingress |
| Removing eg_intr_md.enq_qdepth in ingress |
| Removing eg_intr_md._pad2 in ingress |
| Removing eg_intr_md.enq_congest_stat in ingress |
| Removing eg_intr_md.enq_tstamp in ingress |
| Removing eg_intr_md._pad3 in ingress |
| Removing eg_intr_md.deq_qdepth in ingress |
| Removing eg_intr_md._pad4 in ingress |
| Removing eg_intr_md.deq_congest_stat in ingress |
| Removing eg_intr_md.app_pool_congest_stat in ingress |
| Removing eg_intr_md.deq_timedelta in ingress |
| Removing eg_intr_md.egress_rid in ingress |
| Removing eg_intr_md._pad5 in ingress |
| Removing eg_intr_md.egress_rid_first in ingress |
| Removing eg_intr_md._pad6 in ingress |
| Removing eg_intr_md.egress_qid in ingress |
| Removing eg_intr_md._pad7 in ingress |
| Removing eg_intr_md.egress_cos in ingress |
| Removing eg_intr_md._pad8 in ingress |
| Removing eg_intr_md.deflection_flag in ingress |
| Removing eg_intr_md.pkt_length in ingress |
| Removing eg_intr_md.valid in ingress |
| Removing eg_intr_md_for_mb._pad1 in ingress |
| Removing eg_intr_md_for_mb.egress_mirror_id in ingress |
| Removing eg_intr_md_for_mb.coalesce_flush in ingress |
| Removing eg_intr_md_for_mb.coalesce_length in ingress |
| Removing eg_intr_md_for_mb.valid in ingress |
| Removing eg_intr_md_for_oport._pad1 in ingress |
| Removing eg_intr_md_for_oport.capture_tstamp_on_tx in ingress |
| Removing eg_intr_md_for_oport.update_delay_on_tx in ingress |
| Removing eg_intr_md_for_oport.force_tx_error in ingress |
| Removing eg_intr_md_for_oport.drop_ctl in ingress |
| Removing eg_intr_md_for_oport.valid in ingress |
| Removing eg_intr_md._pad1 in egress |
| Removing eg_intr_md.enq_qdepth in egress |
| Removing eg_intr_md._pad2 in egress |
| Removing eg_intr_md.enq_congest_stat in egress |
| Removing eg_intr_md.enq_tstamp in egress |
| Removing eg_intr_md._pad3 in egress |
| Removing eg_intr_md.deq_qdepth in egress |
| Removing eg_intr_md._pad4 in egress |
| Removing eg_intr_md.deq_congest_stat in egress |
| Removing eg_intr_md.app_pool_congest_stat in egress |
| Removing eg_intr_md.deq_timedelta in egress |
| Removing eg_intr_md.egress_rid in egress |
| Removing eg_intr_md._pad5 in egress |
| Removing eg_intr_md.egress_rid_first in egress |
| Removing eg_intr_md._pad6 in egress |
| Removing eg_intr_md.egress_qid in egress |
| Removing eg_intr_md._pad8 in egress |
| Removing eg_intr_md.deflection_flag in egress |
| Removing eg_intr_md.pkt_length in egress |
| Removing eg_intr_md_for_oport._pad1 in egress |
| Removing eg_intr_md_for_oport.capture_tstamp_on_tx in egress |
| Removing eg_intr_md_for_oport.update_delay_on_tx in egress |
| Removing eg_intr_md_for_oport.force_tx_error in egress |
| Removing eg_intr_md_for_oport.drop_ctl in egress |
| Removing eg_intr_md_for_mb._pad1 in egress |
| Removing eg_intr_md_for_mb.egress_mirror_id in egress |
| Removing eg_intr_md_for_mb.coalesce_flush in egress |
| Removing eg_intr_md_for_mb.coalesce_length in egress |
| |
| ----------------------------------------------- |
| Eliminating unused packet fields (6 instances) |
| ----------------------------------------------- |
| Removing packet_in_hdr.valid in ingress |
| Removing packet_out_hdr.valid in ingress |
| Removing ethernet.valid in ingress |
| Removing ipv4.valid in ingress |
| Removing tcp.valid in ingress |
| Removing udp.valid in ingress |
| |
| -------------------------------------------- |
| ingress field instance bit width histogram |
| -------------------------------------------- |
| Total fields: 48 |
| Max value: 13 |
| |
| 1 : xxxxxxxxx (9) |
| 2 : x (1) |
| 3 : xxxxx (5) |
| 4 : xxx (3) |
| 6 : x (1) |
| 7 : xx (2) |
| 8 : xxx (3) |
| 9 : xxxx (4) |
| 13 : x (1) |
| 16 : xxxxxxxxxxxxx (13) |
| 32 : xxxx (4) |
| 48 : xx (2) |
| |
| -------------------------------------------- |
| egress field instance bit width histogram |
| -------------------------------------------- |
| Total fields: 44 |
| Max value: 13 |
| |
| 1 : xxxxxx (6) |
| 3 : xxxx (4) |
| 4 : xxx (3) |
| 5 : x (1) |
| 6 : x (1) |
| 7 : xxx (3) |
| 8 : xxx (3) |
| 9 : xxx (3) |
| 13 : x (1) |
| 16 : xxxxxxxxxxxxx (13) |
| 32 : xxxx (4) |
| 48 : xx (2) |
| |
| --------------------------------------------------------------------------------------------------------------------------------- |
| | Field Name | Bit Width | Direction | Parsed? | Deparsed? | Metadata? | Read in MAU? | Write in MAU? | |
| --------------------------------------------------------------------------------------------------------------------------------- |
| | --validity_check--ethernet | 1 | egress | x | x | | | | |
| | --validity_check--ipv4 | 1 | egress | x | x | | | | |
| | --validity_check--packet_in_hdr | 1 | egress | x | x | | | | |
| | --validity_check--packet_out_hdr | 1 | egress | x | x | | | | |
| | --validity_check--tcp | 1 | egress | x | x | | | | |
| | --validity_check--udp | 1 | egress | x | x | | | | |
| | eg_intr_md._pad0 | 7 | egress | x | | x | | | |
| | eg_intr_md._pad7 | 5 | egress | x | | x | | | |
| | eg_intr_md.egress_cos | 3 | egress | x | x | x | | | |
| | eg_intr_md.egress_port | 9 | egress | x | x | x | | | |
| | ethernet.dstAddr | 48 | egress | x | x | | | | |
| | ethernet.etherType | 16 | egress | x | x | | | | |
| | ethernet.srcAddr | 48 | egress | x | x | | | | |
| | ipv4.diffserv | 8 | egress | x | x | | | | |
| | ipv4.dstAddr | 32 | egress | x | x | | | | |
| | ipv4.flags | 3 | egress | x | x | | | | |
| | ipv4.fragOffset | 13 | egress | x | x | | | | |
| | ipv4.hdrChecksum | 16 | egress | x | x | | | | |
| | ipv4.identification | 16 | egress | x | x | | | | |
| | ipv4.ihl | 4 | egress | x | x | | | | |
| | ipv4.protocol | 8 | egress | x | x | | | | |
| | ipv4.srcAddr | 32 | egress | x | x | | | | |
| | ipv4.totalLen | 16 | egress | x | x | | | | |
| | ipv4.ttl | 8 | egress | x | x | | | | |
| | ipv4.version | 4 | egress | x | x | | | | |
| | packet_in_hdr._padding | 7 | egress | x | x | | | | |
| | packet_in_hdr.ingress_port | 9 | egress | x | x | | | | |
| | packet_out_hdr._padding | 7 | egress | x | x | | | | |
| | packet_out_hdr.egress_port | 9 | egress | x | x | | | | |
| | tcp.ackNo | 32 | egress | x | x | | | | |
| | tcp.checksum | 16 | egress | x | x | | | | |
| | tcp.ctrl | 6 | egress | x | x | | | | |
| | tcp.dataOffset | 4 | egress | x | x | | | | |
| | tcp.dstPort | 16 | egress | x | x | | | | |
| | tcp.ecn | 3 | egress | x | x | | | | |
| | tcp.res | 3 | egress | x | x | | | | |
| | tcp.seqNo | 32 | egress | x | x | | | | |
| | tcp.srcPort | 16 | egress | x | x | | | | |
| | tcp.urgentPtr | 16 | egress | x | x | | | | |
| | tcp.window | 16 | egress | x | x | | | | |
| | udp.checksum | 16 | egress | x | x | | | | |
| | udp.dstPort | 16 | egress | x | x | | | | |
| | udp.length_ | 16 | egress | x | x | | | | |
| | udp.srcPort | 16 | egress | x | x | | | | |
| | --validity_check--ethernet | 1 | ingress | x | x | | | | |
| | --validity_check--ipv4 | 1 | ingress | x | x | | | | |
| | --validity_check--metadata_bridge | 1 | ingress | x | x | | | | |
| | --validity_check--packet_in_hdr | 1 | ingress | x | x | | | x | |
| | --validity_check--packet_out_hdr | 1 | ingress | x | x | | x | x | |
| | --validity_check--tcp | 1 | ingress | x | x | | | | |
| | --validity_check--udp | 1 | ingress | x | x | | | | |
| | ethernet.dstAddr | 48 | ingress | x | x | | x | | |
| | ethernet.etherType | 16 | ingress | x | x | | x | | |
| | ethernet.srcAddr | 48 | ingress | x | x | | x | | |
| | ig_intr_md._pad1 | 1 | ingress | x | | x | | | |
| | ig_intr_md._pad2 | 2 | ingress | x | | x | | | |
| | ig_intr_md._pad3 | 3 | ingress | x | | x | | | |
| | ig_intr_md.ingress_port | 9 | ingress | x | x | x | x | | |
| | ig_intr_md.resubmit_flag | 1 | ingress | x | | x | | | |
| | ig_intr_md_for_tm.drop_ctl | 3 | ingress | | x | x | | x | |
| | ig_intr_md_for_tm.ucast_egress_port | 9 | ingress | | x | x | x | x | |
| | ipv4.diffserv | 8 | ingress | x | x | | | | |
| | ipv4.dstAddr | 32 | ingress | x | x | | | | |
| | ipv4.flags | 3 | ingress | x | x | | | | |
| | ipv4.fragOffset | 13 | ingress | x | x | | | | |
| | ipv4.hdrChecksum | 16 | ingress | x | x | | | | |
| | ipv4.identification | 16 | ingress | x | x | | | | |
| | ipv4.ihl | 4 | ingress | x | x | | | | |
| | ipv4.protocol | 8 | ingress | x | x | | | | |
| | ipv4.srcAddr | 32 | ingress | x | x | | | | |
| | ipv4.totalLen | 16 | ingress | x | x | | | | |
| | ipv4.ttl | 8 | ingress | x | x | | | | |
| | ipv4.version | 4 | ingress | x | x | | | | |
| | packet_in_hdr._padding | 7 | ingress | x | x | | | | |
| | packet_in_hdr.ingress_port | 9 | ingress | x | x | | | x | |
| | packet_out_hdr._padding | 7 | ingress | x | x | | | | |
| | packet_out_hdr.egress_port | 9 | ingress | x | x | | x | | |
| | tcp.ackNo | 32 | ingress | x | x | | | | |
| | tcp.checksum | 16 | ingress | x | x | | | | |
| | tcp.ctrl | 6 | ingress | x | x | | | | |
| | tcp.dataOffset | 4 | ingress | x | x | | | | |
| | tcp.dstPort | 16 | ingress | x | x | | | | |
| | tcp.ecn | 3 | ingress | x | x | | | | |
| | tcp.res | 3 | ingress | x | x | | | | |
| | tcp.seqNo | 32 | ingress | x | x | | | | |
| | tcp.srcPort | 16 | ingress | x | x | | | | |
| | tcp.urgentPtr | 16 | ingress | x | x | | | | |
| | tcp.window | 16 | ingress | x | x | | | | |
| | udp.checksum | 16 | ingress | x | x | | | | |
| | udp.dstPort | 16 | ingress | x | x | | | | |
| | udp.length_ | 16 | ingress | x | x | | | | |
| | udp.srcPort | 16 | ingress | x | x | | | | |
| --------------------------------------------------------------------------------------------------------------------------------- |
| |
| Performing PHV allocation... |
| ingress_parser critical path: 464 bits |
| start of 0 bits |
| ingress_intrinsic_metadata of 16 bits |
| default_parser of 0 bits |
| parse_pkt_out of 16 bits |
| parse_ethernet of 112 bits |
| parse_ipv4 of 160 bits |
| parse_tcp of 160 bits |
| --ingress-- of 0 bits |
| |
| -------------------------------------- |
| Exclusive parse states in ingress_parser |
| -------------------------------------- |
| parse_pkt_in and default_parser are exclusive parse states |
| parse_pkt_in and parse_pkt_out are exclusive parse states |
| parse_tcp and parse_udp are exclusive parse states |
| |
| egress_parser critical path: 472 bits |
| start of 0 bits |
| egress_intrinsic_metadata of 24 bits |
| default_parser of 0 bits |
| parse_pkt_out of 16 bits |
| parse_ethernet of 112 bits |
| parse_ipv4 of 160 bits |
| parse_tcp of 160 bits |
| egress_for_mirror_buffer of 0 bits |
| --egress-- of 0 bits |
| |
| -------------------------------------- |
| Exclusive parse states in egress_parser |
| -------------------------------------- |
| parse_pkt_in and default_parser are exclusive parse states |
| parse_pkt_in and parse_pkt_out are exclusive parse states |
| parse_tcp and parse_udp are exclusive parse states |
| |
| >>Event 'pa_init' at time 1505307419.30 |
| Took 0.01 seconds |
| -------------------------------------------- |
| PHV MAU Groups: 90 |
| -------------------------------------------- |
| Phv Mau Group (ingress) -- 2 instances for total bit width of 18. |
| ig_intr_md.ingress_port <9 bits ingress parsed imeta R> |
| packet_in_hdr.ingress_port <9 bits ingress parsed W> |
| |
| Phv Mau Group (ingress) -- 2 instances for total bit width of 18. |
| ig_intr_md_for_tm.ucast_egress_port <9 bits ingress imeta R W> |
| packet_out_hdr.egress_port <9 bits ingress parsed R> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 1. |
| ig_intr_md.resubmit_flag <1 bits ingress parsed imeta> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 1. |
| ig_intr_md._pad1 <1 bits ingress parsed imeta> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 2. |
| ig_intr_md._pad2 <2 bits ingress parsed imeta> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 3. |
| ig_intr_md._pad3 <3 bits ingress parsed imeta> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 3. |
| ig_intr_md_for_tm.drop_ctl <3 bits ingress imeta W> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 1. |
| --validity_check--packet_in_hdr <1 bits ingress parsed pov W> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 7. |
| packet_in_hdr._padding <7 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 1. |
| --validity_check--packet_out_hdr <1 bits ingress parsed pov R W> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 7. |
| packet_out_hdr._padding <7 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 48. |
| ethernet.dstAddr <48 bits ingress parsed R> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 1. |
| --validity_check--ethernet <1 bits ingress parsed pov> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 48. |
| ethernet.srcAddr <48 bits ingress parsed R> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| ethernet.etherType <16 bits ingress parsed R> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 4. |
| ipv4.version <4 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 1. |
| --validity_check--ipv4 <1 bits ingress parsed pov> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 4. |
| ipv4.ihl <4 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 8. |
| ipv4.diffserv <8 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| ipv4.totalLen <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| ipv4.identification <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 3. |
| ipv4.flags <3 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 13. |
| ipv4.fragOffset <13 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 8. |
| ipv4.ttl <8 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 8. |
| ipv4.protocol <8 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| ipv4.hdrChecksum <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 32. |
| ipv4.srcAddr <32 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 32. |
| ipv4.dstAddr <32 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| tcp.srcPort <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 1. |
| --validity_check--tcp <1 bits ingress parsed pov> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| tcp.dstPort <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 32. |
| tcp.seqNo <32 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 32. |
| tcp.ackNo <32 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 4. |
| tcp.dataOffset <4 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 3. |
| tcp.res <3 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 3. |
| tcp.ecn <3 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 6. |
| tcp.ctrl <6 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| tcp.window <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| tcp.checksum <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| tcp.urgentPtr <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| udp.srcPort <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 1. |
| --validity_check--udp <1 bits ingress parsed pov> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| udp.dstPort <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| udp.length_ <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 16. |
| udp.checksum <16 bits ingress parsed tagalong> |
| |
| Phv Mau Group (ingress) -- 1 instance for total bit width of 1. |
| --validity_check--metadata_bridge <1 bits ingress parsed pov> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 9. |
| packet_in_hdr.ingress_port <9 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 1. |
| --validity_check--packet_in_hdr <1 bits egress parsed pov> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 7. |
| packet_in_hdr._padding <7 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 9. |
| packet_out_hdr.egress_port <9 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 1. |
| --validity_check--packet_out_hdr <1 bits egress parsed pov> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 7. |
| packet_out_hdr._padding <7 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 48. |
| ethernet.dstAddr <48 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 1. |
| --validity_check--ethernet <1 bits egress parsed pov> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 48. |
| ethernet.srcAddr <48 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| ethernet.etherType <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 4. |
| ipv4.version <4 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 1. |
| --validity_check--ipv4 <1 bits egress parsed pov> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 4. |
| ipv4.ihl <4 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 8. |
| ipv4.diffserv <8 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| ipv4.totalLen <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| ipv4.identification <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 3. |
| ipv4.flags <3 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 13. |
| ipv4.fragOffset <13 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 8. |
| ipv4.ttl <8 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 8. |
| ipv4.protocol <8 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| ipv4.hdrChecksum <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 32. |
| ipv4.srcAddr <32 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 32. |
| ipv4.dstAddr <32 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| tcp.srcPort <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 1. |
| --validity_check--tcp <1 bits egress parsed pov> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| tcp.dstPort <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 32. |
| tcp.seqNo <32 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 32. |
| tcp.ackNo <32 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 4. |
| tcp.dataOffset <4 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 3. |
| tcp.res <3 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 3. |
| tcp.ecn <3 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 6. |
| tcp.ctrl <6 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| tcp.window <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| tcp.checksum <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| tcp.urgentPtr <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| udp.srcPort <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 1. |
| --validity_check--udp <1 bits egress parsed pov> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| udp.dstPort <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| udp.length_ <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 16. |
| udp.checksum <16 bits egress parsed tagalong> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 7. |
| eg_intr_md._pad0 <7 bits egress parsed imeta> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 9. |
| eg_intr_md.egress_port <9 bits egress parsed imeta> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 5. |
| eg_intr_md._pad7 <5 bits egress parsed imeta> |
| |
| Phv Mau Group (egress) -- 1 instance for total bit width of 3. |
| eg_intr_md.egress_cos <3 bits egress parsed imeta> |
| |
| |
| >>Event 'pa_resv' at time 1505307419.30 |
| Took 0.00 seconds |
| |
| ----------------------------------------------- |
| Container reservations |
| ----------------------------------------------- |
| Allocation Step |
| ingress reservations: |
| 8-bit containers: 0 |
| 16-bit containers: 0 |
| 32-bit containers: 0 |
| egress reservations: |
| 8-bit containers: 0 |
| 16-bit containers: 0 |
| 32-bit containers: 0 |
| None required. |
| |
| ----------------------------------------------- |
| Tagalong container reservations |
| ----------------------------------------------- |
| Allocation Step |
| ingress reservations: |
| 8-bit containers: 0 |
| 16-bit containers: 0 |
| 32-bit containers: 0 |
| egress reservations: |
| 8-bit containers: 0 |
| 16-bit containers: 0 |
| 32-bit containers: 0 |
| None required. |
| |
| ----------------------------------------------- |
| POV bit index reservations |
| ----------------------------------------------- |
| Allocation Step |
| POV bit indicies requested for ingress: [16] |
| |
| MAU groups: 3 |
| Group 0 32 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 12 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv0 |
| Group 2 32 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 12 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv32 |
| Group 3 32 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 12 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv48 |
| Reserving 32-bit container for ingress: phv0 |
| >>Event 'pa_bridge' at time 1505307419.34 |
| Took 0.04 seconds |
| |
| ----------------------------------------------- |
| Allocating fields related to bridged metadata |
| ----------------------------------------------- |
| Allocation Step |
| No bridged metadata field instances required |
| |
| After allocating bridged metadata: |
| Allocation state: Final Allocation |
| --------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| --------------------------------------------------------------------------- |
| | 0 (32) | 1 (6.25%) | 32 (6.25%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 1 (1.56%) | 32 (1.56%) | 2048 | |
| | | | | | |
| | 4 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 5 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 512 | |
| | | | | | |
| | 8 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 9 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 0 (0.00%) | 0 (0.00%) | 1536 | |
| | | | | | |
| | 14 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 0 (0.00%) | 0 (0.00%) | 1024 | |
| | | | | | |
| | 16 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 256 | |
| | | | | | |
| | 18 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 19 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 0 (0.00%) | 0 (0.00%) | 768 | |
| | | | | | |
| | MAU total | 1 (0.45%) | 32 (0.78%) | 4096 | |
| | Tagalong total | 0 (0.00%) | 0 (0.00%) | 2048 | |
| | Overall total | 1 (0.30%) | 32 (0.52%) | 6144 | |
| --------------------------------------------------------------------------- |
| |
| >>Event 'pa_phase0' at time 1505307419.34 |
| Took 0.00 seconds |
| |
| ----------------------------------------------- |
| Allocating Phase 0-related metadata |
| ----------------------------------------------- |
| Allocation Step |
| Phase 0 not in use. |
| |
| After allocating data written by Phase 0: |
| Allocation state: Final Allocation |
| --------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| --------------------------------------------------------------------------- |
| | 0 (32) | 1 (6.25%) | 32 (6.25%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 1 (1.56%) | 32 (1.56%) | 2048 | |
| | | | | | |
| | 4 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 5 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 512 | |
| | | | | | |
| | 8 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 9 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 0 (0.00%) | 0 (0.00%) | 1536 | |
| | | | | | |
| | 14 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 0 (0.00%) | 0 (0.00%) | 1024 | |
| | | | | | |
| | 16 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 256 | |
| | | | | | |
| | 18 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 19 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 0 (0.00%) | 0 (0.00%) | 768 | |
| | | | | | |
| | MAU total | 1 (0.45%) | 32 (0.78%) | 4096 | |
| | Tagalong total | 0 (0.00%) | 0 (0.00%) | 2048 | |
| | Overall total | 1 (0.30%) | 32 (0.52%) | 6144 | |
| --------------------------------------------------------------------------- |
| |
| >>Event 'pa_critical' at time 1505307419.34 |
| Took 0.00 seconds |
| |
| ----------------------------------------------- |
| Allocating headers on longest parse paths |
| ----------------------------------------------- |
| Allocation Step |
| |
| All Sorted parse nodes: |
| ingress_intrinsic_metadata (ingress) with bits = 16 and max = 2 |
| parse_pkt_out (ingress) with bits = 16 and max = 2 |
| parse_ipv4 (ingress) with bits = 160 and max = 1 |
| parse_tcp (ingress) with bits = 160 and max = 1 |
| parse_ipv4 (egress) with bits = 160 and max = 1 |
| parse_tcp (egress) with bits = 160 and max = 1 |
| parse_ethernet (ingress) with bits = 112 and max = 1 |
| parse_ethernet (egress) with bits = 112 and max = 1 |
| egress_intrinsic_metadata (egress) with bits = 24 and max = 1 |
| parse_pkt_out (egress) with bits = 16 and max = 1 |
| start () with bits = 0 and max = 0 |
| default_parser () with bits = 0 and max = 0 |
| --ingress-- () with bits = 0 and max = 0 |
| start () with bits = 0 and max = 0 |
| default_parser () with bits = 0 and max = 0 |
| egress_for_mirror_buffer () with bits = 0 and max = 0 |
| --egress-- () with bits = 0 and max = 0 |
| Total packet bits: 936 |
| Total meta bits: 0 |
| Total bits: 936 |
| Working on parse node ingress_intrinsic_metadata (9) (ingress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (5) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 16 |
| Set metadata bits: 0 |
| Gress: ingress |
| bits_will_need_to_parse = 16 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 16 |
| Parse state 0 (16 bits) |
| ig_intr_md.resubmit_flag [0:0] |
| ig_intr_md._pad1 [0:0] |
| ig_intr_md._pad2 [1:0] |
| ig_intr_md._pad3 [2:0] |
| ig_intr_md.ingress_port [8:0] |
| ----------------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ----------------------------------------------------------------------------------------------- |
| | ig_intr_md.resubmit_flag | 1 | False | - | - | - | 1 | 1 | |
| | ig_intr_md._pad1 | 1 | False | - | - | - | 1 | 1 | |
| | ig_intr_md._pad2 | 2 | False | - | - | - | 1 | 1 | |
| | ig_intr_md._pad3 | 3 | False | - | - | - | 1 | 1 | |
| | ig_intr_md.ingress_port | 9 | False | - | - | [32] | 2 | 2 | |
| ----------------------------------------------------------------------------------------------- |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 2 |
| MAU containers available: |
| 8-bit: 48 |
| 16-bit: 80 |
| 32-bit: 47 |
| Tagalong containers available: |
| 8-bit: 32 |
| 16-bit: 48 |
| 32-bit: 32 |
| Initial packing options: 2 |
| |
| Packing option 0: [16] |
| MAU containers after: |
| 8-bit: 48 |
| 16-bit: 78 |
| 32-bit: 47 |
| +-----------------------------------+ |
| | ig_intr_md.resubmit_flag [0:0] | |
| | ig_intr_md._pad1 [0:0] | |
| | ig_intr_md._pad2 [1:0] | |
| | ig_intr_md._pad3 [2:0] | |
| | ig_intr_md.ingress_port [8:0] | |
| +-----------------------------------+ |
| |
| Looking at ig_intr_md.resubmit_flag (ingress) [0:0], with test_alloc = True |
| ----> ig_intr_md.resubmit_flag (ingress) is allocated? False |
| Looking at ig_intr_md._pad1 (ingress) [0:0], with test_alloc = True |
| Looking at ig_intr_md._pad2 (ingress) [1:0], with test_alloc = True |
| Looking at ig_intr_md._pad3 (ingress) [2:0], with test_alloc = True |
| Looking at ig_intr_md.ingress_port (ingress) [8:0], with test_alloc = True |
| Checking if can overlay metadata field. |
| No required PHV group. |
| Could not find container to overlay in. |
| |
| MAU groups: 5 |
| Group 8 16 bits -- avail 16 -- ingress avail 16 and remain 14 and promised 2 and req 2 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv128 |
| Group 10 16 bits -- avail 16 -- ingress avail 16 and remain 14 and promised 2 and req 2 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv160 |
| Group 11 16 bits -- avail 16 -- ingress avail 16 and remain 14 and promised 2 and req 2 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv176 |
| Group 12 16 bits -- avail 16 -- ingress avail 16 and remain 14 and promised 2 and req 2 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv192 |
| Group 13 16 bits -- avail 16 -- ingress avail 16 and remain 14 and promised 2 and req 2 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv208 |
| ***Allocating phv128[15:15] for ig_intr_md.resubmit_flag[0:0] |
| ***Allocating phv128[14:14] for ig_intr_md._pad1[0:0] |
| ***Allocating phv128[13:12] for ig_intr_md._pad2[1:0] |
| ***Allocating phv128[11:9] for ig_intr_md._pad3[2:0] |
| ***Allocating phv128[8:0] for ig_intr_md.ingress_port[8:0] |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| |
| Working on parse node parse_pkt_out (4) (ingress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (2) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 16 |
| Set metadata bits: 0 |
| Gress: ingress |
| bits_will_need_to_parse = 16 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 16 |
| Parse state 0 (16 bits) |
| packet_out_hdr.egress_port [8:0] |
| packet_out_hdr._padding [6:0] |
| ------------------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ------------------------------------------------------------------------------------------------- |
| | packet_out_hdr.egress_port | 9 | False | - | - | [8, 32] | 2 | 2 | |
| | packet_out_hdr._padding | 7 | True | - | - | [32] | 1 | 1 | |
| ------------------------------------------------------------------------------------------------- |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 2 |
| MAU containers available: |
| 8-bit: 48 |
| 16-bit: 78 |
| 32-bit: 47 |
| Tagalong containers available: |
| 8-bit: 32 |
| 16-bit: 48 |
| 32-bit: 32 |
| Initial packing options: 2 |
| |
| Packing option 0: [16] |
| MAU containers after: |
| 8-bit: 48 |
| 16-bit: 76 |
| 32-bit: 47 |
| +-------------------------------------+ |
| | packet_out_hdr.egress_port [8:0] | |
| | packet_out_hdr._padding [6:0] | |
| +-------------------------------------+ |
| |
| Looking at packet_out_hdr.egress_port (ingress) [8:0], with test_alloc = True |
| ----> packet_out_hdr.egress_port (ingress) is allocated? False |
| Looking at packet_out_hdr._padding (ingress) [6:0], with test_alloc = True |
| |
| MAU groups: 5 |
| Group 8 16 bits -- avail 15 -- ingress avail 15 and remain 13 and promised 2 and req 2 -- egress avail 8 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv129 |
| Group 10 16 bits -- avail 16 -- ingress avail 16 and remain 14 and promised 2 and req 2 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv160 |
| Group 11 16 bits -- avail 16 -- ingress avail 16 and remain 14 and promised 2 and req 2 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv176 |
| Group 12 16 bits -- avail 16 -- ingress avail 16 and remain 14 and promised 2 and req 2 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv192 |
| Group 13 16 bits -- avail 16 -- ingress avail 16 and remain 14 and promised 2 and req 2 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv208 |
| ***Allocating phv129[15:7] for packet_out_hdr.egress_port[8:0] |
| ***Allocating phv129[6:0] for packet_out_hdr._padding[6:0] |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| |
| Working on parse node parse_ipv4 (6) (ingress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (12) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 160 |
| Set metadata bits: 0 |
| Gress: ingress |
| bits_will_need_to_parse = 160 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 160 |
| Parse state 0 (160 bits) |
| ipv4.version [3:0] |
| ipv4.ihl [3:0] |
| ipv4.diffserv [7:0] |
| ipv4.totalLen [15:0] |
| ipv4.identification [15:0] |
| ipv4.flags [2:0] |
| ipv4.fragOffset [12:0] |
| ipv4.ttl [7:0] |
| ipv4.protocol [7:0] |
| ipv4.hdrChecksum [15:0] |
| ipv4.srcAddr [31:0] |
| ipv4.dstAddr [31:0] |
| ------------------------------------------------------------------------------------------ |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ------------------------------------------------------------------------------------------ |
| | ipv4.version | 4 | True | - | - | - | 1 | 1 | |
| | ipv4.ihl | 4 | True | - | - | - | 1 | 1 | |
| | ipv4.diffserv | 8 | True | - | - | - | 1 | 1 | |
| | ipv4.totalLen | 16 | True | - | - | - | 2 | 1 | |
| | ipv4.identification | 16 | True | - | - | - | 2 | 1 | |
| | ipv4.flags | 3 | True | - | - | - | 1 | 1 | |
| | ipv4.fragOffset | 13 | True | - | - | - | 2 | 1 | |
| | ipv4.ttl | 8 | True | - | - | - | 1 | 1 | |
| | ipv4.protocol | 8 | True | - | - | - | 1 | 1 | |
| | ipv4.hdrChecksum | 16 | True | - | - | - | 2 | 1 | |
| | ipv4.srcAddr | 32 | True | - | - | - | 4 | 1 | |
| | ipv4.dstAddr | 32 | True | - | - | - | 4 | 1 | |
| ------------------------------------------------------------------------------------------ |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 5196 |
| MAU containers available: |
| 8-bit: 48 |
| 16-bit: 77 |
| 32-bit: 47 |
| Tagalong containers available: |
| 8-bit: 32 |
| 16-bit: 48 |
| 32-bit: 32 |
| Initial packing options: 5196 |
| |
| Packing option 0: [8, 8, 16, 16, 16, 32, 32, 32] |
| MAU containers after: |
| 8-bit: 48 |
| 16-bit: 77 |
| 32-bit: 47 |
| +------------------------------+ |
| | ipv4.version [3:0] | |
| | ipv4.ihl [3:0] | |
| +------------------------------+ |
| | ipv4.diffserv [7:0] | |
| +------------------------------+ |
| | ipv4.totalLen [15:0] | |
| +------------------------------+ |
| | ipv4.identification [15:0] | |
| +------------------------------+ |
| | ipv4.flags [2:0] | |
| | ipv4.fragOffset [12:0] | |
| +------------------------------+ |
| | ipv4.ttl [7:0] | |
| | ipv4.protocol [7:0] | |
| | ipv4.hdrChecksum [15:0] | |
| +------------------------------+ |
| | ipv4.srcAddr [31:0] | |
| +------------------------------+ |
| | ipv4.dstAddr [31:0] | |
| +------------------------------+ |
| |
| Looking at ipv4.version (ingress) [3:0], with test_alloc = True |
| ----> ipv4.version (ingress) is allocated? False |
| Looking at ipv4.ihl (ingress) [3:0], with test_alloc = True |
| ***Allocating phv288[7:4] for ipv4.version[3:0] |
| ***Allocating phv288[3:0] for ipv4.ihl[3:0] |
| Looking at ipv4.diffserv (ingress) [7:0], with test_alloc = True |
| ----> ipv4.diffserv (ingress) is allocated? False |
| ***Allocating phv289[7:0] for ipv4.diffserv[7:0] |
| Looking at ipv4.totalLen (ingress) [15:0], with test_alloc = True |
| ----> ipv4.totalLen (ingress) is allocated? False |
| ***Allocating phv320[15:0] for ipv4.totalLen[15:0] |
| Looking at ipv4.identification (ingress) [15:0], with test_alloc = True |
| ----> ipv4.identification (ingress) is allocated? False |
| ***Allocating phv321[15:0] for ipv4.identification[15:0] |
| Looking at ipv4.flags (ingress) [2:0], with test_alloc = True |
| ----> ipv4.flags (ingress) is allocated? False |
| Looking at ipv4.fragOffset (ingress) [12:0], with test_alloc = True |
| ***Allocating phv322[15:13] for ipv4.flags[2:0] |
| ***Allocating phv322[12:0] for ipv4.fragOffset[12:0] |
| Looking at ipv4.ttl (ingress) [7:0], with test_alloc = True |
| ----> ipv4.ttl (ingress) is allocated? False |
| Looking at ipv4.protocol (ingress) [7:0], with test_alloc = True |
| Looking at ipv4.hdrChecksum (ingress) [15:0], with test_alloc = True |
| ***Allocating phv256[31:24] for ipv4.ttl[7:0] |
| ***Allocating phv256[23:16] for ipv4.protocol[7:0] |
| ***Allocating phv256[15:0] for ipv4.hdrChecksum[15:0] |
| Looking at ipv4.srcAddr (ingress) [31:0], with test_alloc = True |
| ----> ipv4.srcAddr (ingress) is allocated? False |
| ***Allocating phv257[31:0] for ipv4.srcAddr[31:0] |
| Looking at ipv4.dstAddr (ingress) [31:0], with test_alloc = True |
| ----> ipv4.dstAddr (ingress) is allocated? False |
| ***Allocating phv258[31:0] for ipv4.dstAddr[31:0] |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| |
| Working on parse node parse_tcp (7) (ingress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (11) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 160 |
| Set metadata bits: 0 |
| Gress: ingress |
| bits_will_need_to_parse = 160 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 160 |
| Parse state 0 (160 bits) |
| tcp.srcPort [15:0] |
| tcp.dstPort [15:0] |
| tcp.seqNo [31:0] |
| tcp.ackNo [31:0] |
| tcp.dataOffset [3:0] |
| tcp.res [2:0] |
| tcp.ecn [2:0] |
| tcp.ctrl [5:0] |
| tcp.window [15:0] |
| tcp.checksum [15:0] |
| tcp.urgentPtr [15:0] |
| ------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ------------------------------------------------------------------------------------- |
| | tcp.srcPort | 16 | True | - | - | - | 2 | 1 | |
| | tcp.dstPort | 16 | True | - | - | - | 2 | 1 | |
| | tcp.seqNo | 32 | True | - | - | - | 4 | 1 | |
| | tcp.ackNo | 32 | True | - | - | - | 4 | 1 | |
| | tcp.dataOffset | 4 | True | - | - | - | 1 | 1 | |
| | tcp.res | 3 | True | - | - | - | 1 | 1 | |
| | tcp.ecn | 3 | True | - | - | - | 2 | 1 | |
| | tcp.ctrl | 6 | True | - | - | - | 1 | 1 | |
| | tcp.window | 16 | True | - | - | - | 2 | 1 | |
| | tcp.checksum | 16 | True | - | - | - | 2 | 1 | |
| | tcp.urgentPtr | 16 | True | - | - | - | 2 | 1 | |
| ------------------------------------------------------------------------------------- |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 5196 |
| MAU containers available: |
| 8-bit: 48 |
| 16-bit: 77 |
| 32-bit: 47 |
| Tagalong containers available: |
| 8-bit: 30 |
| 16-bit: 45 |
| 32-bit: 29 |
| Initial packing options: 5196 |
| |
| Packing option 0: [8, 8, 8, 8, 16, 16, 16, 16, 32, 32] |
| MAU containers after: |
| 8-bit: 48 |
| 16-bit: 77 |
| 32-bit: 47 |
| +-------------------------+ |
| | tcp.srcPort [15:8] | |
| +-------------------------+ |
| | tcp.srcPort [7:0] | |
| +-------------------------+ |
| | tcp.dstPort [15:8] | |
| +-------------------------+ |
| | tcp.dstPort [7:0] | |
| +-------------------------+ |
| | tcp.seqNo [31:16] | |
| +-------------------------+ |
| | tcp.seqNo [15:0] | |
| +-------------------------+ |
| | tcp.ackNo [31:16] | |
| +-------------------------+ |
| | tcp.ackNo [15:0] | |
| +-------------------------+ |
| | tcp.dataOffset [3:0] | |
| | tcp.res [2:0] | |
| | tcp.ecn [2:0] | |
| | tcp.ctrl [5:0] | |
| | tcp.window [15:0] | |
| +-------------------------+ |
| | tcp.checksum [15:0] | |
| | tcp.urgentPtr [15:0] | |
| +-------------------------+ |
| |
| Looking at tcp.srcPort (ingress) [15:8], with test_alloc = True |
| ----> tcp.srcPort (ingress) is allocated? False |
| ***Allocating phv290[7:0] for tcp.srcPort[15:8] |
| Looking at tcp.srcPort (ingress) [7:0], with test_alloc = True |
| ----> tcp.srcPort (ingress) is allocated? False |
| ***Allocating phv291[7:0] for tcp.srcPort[7:0] |
| Looking at tcp.dstPort (ingress) [15:8], with test_alloc = True |
| ----> tcp.dstPort (ingress) is allocated? False |
| ***Allocating phv292[7:0] for tcp.dstPort[15:8] |
| Looking at tcp.dstPort (ingress) [7:0], with test_alloc = True |
| ----> tcp.dstPort (ingress) is allocated? False |
| ***Allocating phv293[7:0] for tcp.dstPort[7:0] |
| Looking at tcp.seqNo (ingress) [31:16], with test_alloc = True |
| ----> tcp.seqNo (ingress) is allocated? False |
| ***Allocating phv323[15:0] for tcp.seqNo[31:16] |
| Looking at tcp.seqNo (ingress) [15:0], with test_alloc = True |
| ----> tcp.seqNo (ingress) is allocated? False |
| ***Allocating phv324[15:0] for tcp.seqNo[15:0] |
| Looking at tcp.ackNo (ingress) [31:16], with test_alloc = True |
| ----> tcp.ackNo (ingress) is allocated? False |
| ***Allocating phv325[15:0] for tcp.ackNo[31:16] |
| Looking at tcp.ackNo (ingress) [15:0], with test_alloc = True |
| ----> tcp.ackNo (ingress) is allocated? False |
| ***Allocating phv326[15:0] for tcp.ackNo[15:0] |
| Looking at tcp.dataOffset (ingress) [3:0], with test_alloc = True |
| ----> tcp.dataOffset (ingress) is allocated? False |
| Looking at tcp.res (ingress) [2:0], with test_alloc = True |
| Looking at tcp.ecn (ingress) [2:0], with test_alloc = True |
| Looking at tcp.ctrl (ingress) [5:0], with test_alloc = True |
| Looking at tcp.window (ingress) [15:0], with test_alloc = True |
| ***Allocating phv259[31:28] for tcp.dataOffset[3:0] |
| ***Allocating phv259[27:25] for tcp.res[2:0] |
| ***Allocating phv259[24:22] for tcp.ecn[2:0] |
| ***Allocating phv259[21:16] for tcp.ctrl[5:0] |
| ***Allocating phv259[15:0] for tcp.window[15:0] |
| Looking at tcp.checksum (ingress) [15:0], with test_alloc = True |
| ----> tcp.checksum (ingress) is allocated? False |
| Looking at tcp.urgentPtr (ingress) [15:0], with test_alloc = True |
| ***Allocating phv260[31:16] for tcp.checksum[15:0] |
| ***Allocating phv260[15:0] for tcp.urgentPtr[15:0] |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| |
| Working on parse node parse_ipv4 (6) (egress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (12) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 160 |
| Set metadata bits: 0 |
| Gress: egress |
| bits_will_need_to_parse = 160 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 160 |
| Parse state 0 (160 bits) |
| ipv4.version [3:0] |
| ipv4.ihl [3:0] |
| ipv4.diffserv [7:0] |
| ipv4.totalLen [15:0] |
| ipv4.identification [15:0] |
| ipv4.flags [2:0] |
| ipv4.fragOffset [12:0] |
| ipv4.ttl [7:0] |
| ipv4.protocol [7:0] |
| ipv4.hdrChecksum [15:0] |
| ipv4.srcAddr [31:0] |
| ipv4.dstAddr [31:0] |
| ------------------------------------------------------------------------------------------ |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ------------------------------------------------------------------------------------------ |
| | ipv4.version | 4 | True | - | - | - | 1 | 1 | |
| | ipv4.ihl | 4 | True | - | - | - | 1 | 1 | |
| | ipv4.diffserv | 8 | True | - | - | - | 1 | 1 | |
| | ipv4.totalLen | 16 | True | - | - | - | 2 | 1 | |
| | ipv4.identification | 16 | True | - | - | - | 2 | 1 | |
| | ipv4.flags | 3 | True | - | - | - | 1 | 1 | |
| | ipv4.fragOffset | 13 | True | - | - | - | 2 | 1 | |
| | ipv4.ttl | 8 | True | - | - | - | 1 | 1 | |
| | ipv4.protocol | 8 | True | - | - | - | 1 | 1 | |
| | ipv4.hdrChecksum | 16 | True | - | - | - | 2 | 1 | |
| | ipv4.srcAddr | 32 | True | - | - | - | 4 | 1 | |
| | ipv4.dstAddr | 32 | True | - | - | - | 4 | 1 | |
| ------------------------------------------------------------------------------------------ |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 5196 |
| MAU containers available: |
| 8-bit: 48 |
| 16-bit: 80 |
| 32-bit: 48 |
| Tagalong containers available: |
| 8-bit: 24 |
| 16-bit: 36 |
| 32-bit: 24 |
| Initial packing options: 5196 |
| |
| Packing option 0: [8, 8, 16, 16, 16, 32, 32, 32] |
| MAU containers after: |
| 8-bit: 48 |
| 16-bit: 80 |
| 32-bit: 48 |
| +------------------------------+ |
| | ipv4.version [3:0] | |
| | ipv4.ihl [3:0] | |
| +------------------------------+ |
| | ipv4.diffserv [7:0] | |
| +------------------------------+ |
| | ipv4.totalLen [15:0] | |
| +------------------------------+ |
| | ipv4.identification [15:0] | |
| +------------------------------+ |
| | ipv4.flags [2:0] | |
| | ipv4.fragOffset [12:0] | |
| +------------------------------+ |
| | ipv4.ttl [7:0] | |
| | ipv4.protocol [7:0] | |
| | ipv4.hdrChecksum [15:0] | |
| +------------------------------+ |
| | ipv4.srcAddr [31:0] | |
| +------------------------------+ |
| | ipv4.dstAddr [31:0] | |
| +------------------------------+ |
| |
| Looking at ipv4.version (egress) [3:0], with test_alloc = True |
| ----> ipv4.version (egress) is allocated? False |
| Looking at ipv4.ihl (egress) [3:0], with test_alloc = True |
| ***Allocating phv296[7:4] for ipv4.version[3:0] |
| ***Allocating phv296[3:0] for ipv4.ihl[3:0] |
| Looking at ipv4.diffserv (egress) [7:0], with test_alloc = True |
| ----> ipv4.diffserv (egress) is allocated? False |
| ***Allocating phv297[7:0] for ipv4.diffserv[7:0] |
| Looking at ipv4.totalLen (egress) [15:0], with test_alloc = True |
| ----> ipv4.totalLen (egress) is allocated? False |
| ***Allocating phv332[15:0] for ipv4.totalLen[15:0] |
| Looking at ipv4.identification (egress) [15:0], with test_alloc = True |
| ----> ipv4.identification (egress) is allocated? False |
| ***Allocating phv333[15:0] for ipv4.identification[15:0] |
| Looking at ipv4.flags (egress) [2:0], with test_alloc = True |
| ----> ipv4.flags (egress) is allocated? False |
| Looking at ipv4.fragOffset (egress) [12:0], with test_alloc = True |
| ***Allocating phv334[15:13] for ipv4.flags[2:0] |
| ***Allocating phv334[12:0] for ipv4.fragOffset[12:0] |
| Looking at ipv4.ttl (egress) [7:0], with test_alloc = True |
| ----> ipv4.ttl (egress) is allocated? False |
| Looking at ipv4.protocol (egress) [7:0], with test_alloc = True |
| Looking at ipv4.hdrChecksum (egress) [15:0], with test_alloc = True |
| ***Allocating phv264[31:24] for ipv4.ttl[7:0] |
| ***Allocating phv264[23:16] for ipv4.protocol[7:0] |
| ***Allocating phv264[15:0] for ipv4.hdrChecksum[15:0] |
| Looking at ipv4.srcAddr (egress) [31:0], with test_alloc = True |
| ----> ipv4.srcAddr (egress) is allocated? False |
| ***Allocating phv265[31:0] for ipv4.srcAddr[31:0] |
| Looking at ipv4.dstAddr (egress) [31:0], with test_alloc = True |
| ----> ipv4.dstAddr (egress) is allocated? False |
| ***Allocating phv266[31:0] for ipv4.dstAddr[31:0] |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| |
| Working on parse node parse_tcp (7) (egress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (11) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 160 |
| Set metadata bits: 0 |
| Gress: egress |
| bits_will_need_to_parse = 160 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 160 |
| Parse state 0 (160 bits) |
| tcp.srcPort [15:0] |
| tcp.dstPort [15:0] |
| tcp.seqNo [31:0] |
| tcp.ackNo [31:0] |
| tcp.dataOffset [3:0] |
| tcp.res [2:0] |
| tcp.ecn [2:0] |
| tcp.ctrl [5:0] |
| tcp.window [15:0] |
| tcp.checksum [15:0] |
| tcp.urgentPtr [15:0] |
| ------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ------------------------------------------------------------------------------------- |
| | tcp.srcPort | 16 | True | - | - | - | 2 | 1 | |
| | tcp.dstPort | 16 | True | - | - | - | 2 | 1 | |
| | tcp.seqNo | 32 | True | - | - | - | 4 | 1 | |
| | tcp.ackNo | 32 | True | - | - | - | 4 | 1 | |
| | tcp.dataOffset | 4 | True | - | - | - | 1 | 1 | |
| | tcp.res | 3 | True | - | - | - | 1 | 1 | |
| | tcp.ecn | 3 | True | - | - | - | 2 | 1 | |
| | tcp.ctrl | 6 | True | - | - | - | 1 | 1 | |
| | tcp.window | 16 | True | - | - | - | 2 | 1 | |
| | tcp.checksum | 16 | True | - | - | - | 2 | 1 | |
| | tcp.urgentPtr | 16 | True | - | - | - | 2 | 1 | |
| ------------------------------------------------------------------------------------- |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 5196 |
| MAU containers available: |
| 8-bit: 48 |
| 16-bit: 80 |
| 32-bit: 48 |
| Tagalong containers available: |
| 8-bit: 22 |
| 16-bit: 33 |
| 32-bit: 21 |
| Initial packing options: 5196 |
| |
| Packing option 0: [8, 8, 16, 16, 16, 32, 32, 32] |
| MAU containers after: |
| 8-bit: 48 |
| 16-bit: 80 |
| 32-bit: 48 |
| +-------------------------+ |
| | tcp.srcPort [15:8] | |
| +-------------------------+ |
| | tcp.srcPort [7:0] | |
| +-------------------------+ |
| | tcp.dstPort [15:0] | |
| +-------------------------+ |
| | tcp.seqNo [31:16] | |
| +-------------------------+ |
| | tcp.seqNo [15:0] | |
| +-------------------------+ |
| | tcp.ackNo [31:0] | |
| +-------------------------+ |
| | tcp.dataOffset [3:0] | |
| | tcp.res [2:0] | |
| | tcp.ecn [2:0] | |
| | tcp.ctrl [5:0] | |
| | tcp.window [15:0] | |
| +-------------------------+ |
| | tcp.checksum [15:0] | |
| | tcp.urgentPtr [15:0] | |
| +-------------------------+ |
| |
| Looking at tcp.srcPort (egress) [15:8], with test_alloc = True |
| ----> tcp.srcPort (egress) is allocated? False |
| ***Allocating phv298[7:0] for tcp.srcPort[15:8] |
| Looking at tcp.srcPort (egress) [7:0], with test_alloc = True |
| ----> tcp.srcPort (egress) is allocated? False |
| ***Allocating phv299[7:0] for tcp.srcPort[7:0] |
| Looking at tcp.dstPort (egress) [15:0], with test_alloc = True |
| ----> tcp.dstPort (egress) is allocated? False |
| ***Allocating phv335[15:0] for tcp.dstPort[15:0] |
| Looking at tcp.seqNo (egress) [31:16], with test_alloc = True |
| ----> tcp.seqNo (egress) is allocated? False |
| ***Allocating phv336[15:0] for tcp.seqNo[31:16] |
| Looking at tcp.seqNo (egress) [15:0], with test_alloc = True |
| ----> tcp.seqNo (egress) is allocated? False |
| ***Allocating phv337[15:0] for tcp.seqNo[15:0] |
| Looking at tcp.ackNo (egress) [31:0], with test_alloc = True |
| ----> tcp.ackNo (egress) is allocated? False |
| ***Allocating phv267[31:0] for tcp.ackNo[31:0] |
| Looking at tcp.dataOffset (egress) [3:0], with test_alloc = True |
| ----> tcp.dataOffset (egress) is allocated? False |
| Looking at tcp.res (egress) [2:0], with test_alloc = True |
| Looking at tcp.ecn (egress) [2:0], with test_alloc = True |
| Looking at tcp.ctrl (egress) [5:0], with test_alloc = True |
| Looking at tcp.window (egress) [15:0], with test_alloc = True |
| ***Allocating phv268[31:28] for tcp.dataOffset[3:0] |
| ***Allocating phv268[27:25] for tcp.res[2:0] |
| ***Allocating phv268[24:22] for tcp.ecn[2:0] |
| ***Allocating phv268[21:16] for tcp.ctrl[5:0] |
| ***Allocating phv268[15:0] for tcp.window[15:0] |
| Looking at tcp.checksum (egress) [15:0], with test_alloc = True |
| ----> tcp.checksum (egress) is allocated? False |
| Looking at tcp.urgentPtr (egress) [15:0], with test_alloc = True |
| ***Allocating phv269[31:16] for tcp.checksum[15:0] |
| ***Allocating phv269[15:0] for tcp.urgentPtr[15:0] |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| |
| Working on parse node parse_ethernet (5) (ingress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (3) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 112 |
| Set metadata bits: 0 |
| Gress: ingress |
| bits_will_need_to_parse = 112 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 112 |
| Parse state 0 (112 bits) |
| ethernet.dstAddr [47:0] |
| ethernet.srcAddr [47:0] |
| ethernet.etherType [15:0] |
| ----------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ----------------------------------------------------------------------------------------- |
| | ethernet.dstAddr | 48 | False | - | - | - | 6 | 1 | |
| | ethernet.srcAddr | 48 | False | - | - | - | 6 | 1 | |
| | ethernet.etherType | 16 | False | - | - | - | 2 | 1 | |
| ----------------------------------------------------------------------------------------- |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 604 |
| MAU containers available: |
| 8-bit: 48 |
| 16-bit: 77 |
| 32-bit: 47 |
| Tagalong containers available: |
| 8-bit: 18 |
| 16-bit: 29 |
| 32-bit: 19 |
| Initial packing options: 604 |
| |
| Packing option 0: [8, 32, 16, 8, 32, 16] |
| MAU containers after: |
| 8-bit: 46 |
| 16-bit: 75 |
| 32-bit: 45 |
| +-----------------------------+ |
| | ethernet.dstAddr [47:40] | |
| +-----------------------------+ |
| | ethernet.dstAddr [39:8] | |
| +-----------------------------+ |
| | ethernet.dstAddr [7:0] | |
| | ethernet.srcAddr [47:40] | |
| +-----------------------------+ |
| | ethernet.srcAddr [39:32] | |
| +-----------------------------+ |
| | ethernet.srcAddr [31:0] | |
| +-----------------------------+ |
| | ethernet.etherType [15:0] | |
| +-----------------------------+ |
| |
| Looking at ethernet.dstAddr (ingress) [47:40], with test_alloc = True |
| ----> ethernet.dstAddr (ingress) is allocated? False |
| |
| MAU groups: 3 |
| Group 4 8 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv64 |
| Group 6 8 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv96 |
| Group 7 8 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv112 |
| ***Allocating phv64[7:0] for ethernet.dstAddr[47:40] |
| Looking at ethernet.dstAddr (ingress) [39:8], with test_alloc = True |
| ----> ethernet.dstAddr (ingress) is allocated? False |
| |
| MAU groups: 3 |
| Group 0 32 bits -- avail 15 -- ingress avail 15 and remain 14 and promised 1 and req 1 -- egress avail 12 and remain 12 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv1 |
| Group 2 32 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 12 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv32 |
| Group 3 32 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 12 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv48 |
| ***Allocating phv1[31:0] for ethernet.dstAddr[39:8] |
| Looking at ethernet.dstAddr (ingress) [7:0], with test_alloc = True |
| ----> ethernet.dstAddr (ingress) is allocated? False |
| Looking at ethernet.srcAddr (ingress) [47:40], with test_alloc = True |
| |
| MAU groups: 5 |
| Group 8 16 bits -- avail 14 -- ingress avail 14 and remain 12 and promised 2 and req 2 -- egress avail 8 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv131 |
| Group 10 16 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv160 |
| Group 11 16 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv176 |
| Group 12 16 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv192 |
| Group 13 16 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv208 |
| ***Allocating phv131[15:8] for ethernet.dstAddr[7:0] |
| ***Allocating phv131[7:0] for ethernet.srcAddr[47:40] |
| Looking at ethernet.srcAddr (ingress) [39:32], with test_alloc = True |
| ----> ethernet.srcAddr (ingress) is allocated? False |
| |
| MAU groups: 3 |
| Group 4 8 bits -- avail 15 -- ingress avail 15 and remain 14 and promised 1 and req 1 -- egress avail 8 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv65 |
| Group 6 8 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv96 |
| Group 7 8 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv112 |
| ***Allocating phv65[7:0] for ethernet.srcAddr[39:32] |
| Looking at ethernet.srcAddr (ingress) [31:0], with test_alloc = True |
| ----> ethernet.srcAddr (ingress) is allocated? False |
| |
| MAU groups: 3 |
| Group 0 32 bits -- avail 14 -- ingress avail 14 and remain 13 and promised 1 and req 1 -- egress avail 12 and remain 12 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv2 |
| Group 2 32 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 12 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv32 |
| Group 3 32 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 12 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv48 |
| ***Allocating phv2[31:0] for ethernet.srcAddr[31:0] |
| Looking at ethernet.etherType (ingress) [15:0], with test_alloc = True |
| ----> ethernet.etherType (ingress) is allocated? False |
| |
| MAU groups: 5 |
| Group 8 16 bits -- avail 13 -- ingress avail 13 and remain 11 and promised 2 and req 2 -- egress avail 8 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv132 |
| Group 10 16 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv160 |
| Group 11 16 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv176 |
| Group 12 16 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv192 |
| Group 13 16 bits -- avail 16 -- ingress avail 16 and remain 15 and promised 1 and req 1 -- egress avail 16 and remain 8 and promised 0 and req 0 -- as if deparsed True -- container_to_use phv208 |
| ***Allocating phv132[15:0] for ethernet.etherType[15:0] |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| |
| Working on parse node parse_ethernet (5) (egress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (3) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 112 |
| Set metadata bits: 0 |
| Gress: egress |
| bits_will_need_to_parse = 112 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 112 |
| Parse state 0 (112 bits) |
| ethernet.dstAddr [47:0] |
| ethernet.srcAddr [47:0] |
| ethernet.etherType [15:0] |
| ----------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ----------------------------------------------------------------------------------------- |
| | ethernet.dstAddr | 48 | True | - | - | - | 6 | 1 | |
| | ethernet.srcAddr | 48 | True | - | - | - | 6 | 1 | |
| | ethernet.etherType | 16 | True | - | - | - | 2 | 1 | |
| ----------------------------------------------------------------------------------------- |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 604 |
| MAU containers available: |
| 8-bit: 48 |
| 16-bit: 80 |
| 32-bit: 48 |
| Tagalong containers available: |
| 8-bit: 20 |
| 16-bit: 30 |
| 32-bit: 18 |
| Initial packing options: 604 |
| |
| Packing option 0: [8, 32, 16, 8, 32, 16] |
| MAU containers after: |
| 8-bit: 48 |
| 16-bit: 80 |
| 32-bit: 48 |
| +-----------------------------+ |
| | ethernet.dstAddr [47:40] | |
| +-----------------------------+ |
| | ethernet.dstAddr [39:8] | |
| +-----------------------------+ |
| | ethernet.dstAddr [7:0] | |
| | ethernet.srcAddr [47:40] | |
| +-----------------------------+ |
| | ethernet.srcAddr [39:32] | |
| +-----------------------------+ |
| | ethernet.srcAddr [31:0] | |
| +-----------------------------+ |
| | ethernet.etherType [15:0] | |
| +-----------------------------+ |
| |
| Looking at ethernet.dstAddr (egress) [47:40], with test_alloc = True |
| ----> ethernet.dstAddr (egress) is allocated? False |
| ***Allocating phv300[7:0] for ethernet.dstAddr[47:40] |
| Looking at ethernet.dstAddr (egress) [39:8], with test_alloc = True |
| ----> ethernet.dstAddr (egress) is allocated? False |
| ***Allocating phv270[31:0] for ethernet.dstAddr[39:8] |
| Looking at ethernet.dstAddr (egress) [7:0], with test_alloc = True |
| ----> ethernet.dstAddr (egress) is allocated? False |
| Looking at ethernet.srcAddr (egress) [47:40], with test_alloc = True |
| ***Allocating phv338[15:8] for ethernet.dstAddr[7:0] |
| ***Allocating phv338[7:0] for ethernet.srcAddr[47:40] |
| Looking at ethernet.srcAddr (egress) [39:32], with test_alloc = True |
| ----> ethernet.srcAddr (egress) is allocated? False |
| ***Allocating phv301[7:0] for ethernet.srcAddr[39:32] |
| Looking at ethernet.srcAddr (egress) [31:0], with test_alloc = True |
| ----> ethernet.srcAddr (egress) is allocated? False |
| ***Allocating phv271[31:0] for ethernet.srcAddr[31:0] |
| Looking at ethernet.etherType (egress) [15:0], with test_alloc = True |
| ----> ethernet.etherType (egress) is allocated? False |
| ***Allocating phv339[15:0] for ethernet.etherType[15:0] |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| |
| Working on parse node egress_intrinsic_metadata (9) (egress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (4) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 24 |
| Set metadata bits: 0 |
| Gress: egress |
| bits_will_need_to_parse = 24 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 24 |
| Parse state 0 (24 bits) |
| eg_intr_md._pad0 [6:0] |
| eg_intr_md.egress_port [8:0] |
| eg_intr_md._pad7 [4:0] |
| eg_intr_md.egress_cos [2:0] |
| --------------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| --------------------------------------------------------------------------------------------- |
| | eg_intr_md._pad0 | 7 | False | - | - | - | 1 | 1 | |
| | eg_intr_md.egress_port | 9 | False | - | - | [8] | 1 | 1 | |
| | eg_intr_md._pad7 | 5 | False | - | - | - | 1 | 1 | |
| | eg_intr_md.egress_cos | 3 | False | - | - | - | 1 | 1 | |
| --------------------------------------------------------------------------------------------- |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 3 |
| MAU containers available: |
| 8-bit: 48 |
| 16-bit: 80 |
| 32-bit: 48 |
| Tagalong containers available: |
| 8-bit: 18 |
| 16-bit: 28 |
| 32-bit: 16 |
| Initial packing options: 3 |
| |
| Packing option 1: [16, 8] |
| MAU containers after: |
| 8-bit: 47 |
| 16-bit: 79 |
| 32-bit: 48 |
| +---------------------------------+ |
| | eg_intr_md._pad0 [6:0] | |
| | eg_intr_md.egress_port [8:0] | |
| +---------------------------------+ |
| | eg_intr_md._pad7 [4:0] | |
| | eg_intr_md.egress_cos [2:0] | |
| +---------------------------------+ |
| |
| Looking at eg_intr_md._pad0 (egress) [6:0], with test_alloc = True |
| ----> eg_intr_md._pad0 (egress) is allocated? False |
| Looking at eg_intr_md.egress_port (egress) [8:0], with test_alloc = True |
| Checking if can overlay metadata field. |
| No required PHV group. |
| Could not find container to overlay in. |
| |
| MAU groups: 5 |
| Group 9 16 bits -- avail 16 -- ingress avail 16 and remain 8 and promised 0 and req 0 -- egress avail 16 and remain 15 and promised 1 and req 1 -- as if deparsed True -- container_to_use phv144 |
| Group 10 16 bits -- avail 16 -- ingress avail 16 and remain 8 and promised 0 and req 0 -- egress avail 16 and remain 15 and promised 1 and req 1 -- as if deparsed True -- container_to_use phv160 |
| Group 11 16 bits -- avail 16 -- ingress avail 16 and remain 8 and promised 0 and req 0 -- egress avail 16 and remain 15 and promised 1 and req 1 -- as if deparsed True -- container_to_use phv176 |
| Group 12 16 bits -- avail 16 -- ingress avail 16 and remain 8 and promised 0 and req 0 -- egress avail 16 and remain 15 and promised 1 and req 1 -- as if deparsed True -- container_to_use phv192 |
| Group 13 16 bits -- avail 16 -- ingress avail 16 and remain 8 and promised 0 and req 0 -- egress avail 16 and remain 15 and promised 1 and req 1 -- as if deparsed True -- container_to_use phv208 |
| ***Allocating phv144[15:9] for eg_intr_md._pad0[6:0] |
| ***Allocating phv144[8:0] for eg_intr_md.egress_port[8:0] |
| Looking at eg_intr_md._pad7 (egress) [4:0], with test_alloc = True |
| ----> eg_intr_md._pad7 (egress) is allocated? False |
| Looking at eg_intr_md.egress_cos (egress) [2:0], with test_alloc = True |
| Checking if can overlay metadata field. |
| No required PHV group. |
| Could not find container to overlay in. |
| |
| MAU groups: 3 |
| Group 5 8 bits -- avail 16 -- ingress avail 16 and remain 8 and promised 0 and req 0 -- egress avail 16 and remain 15 and promised 1 and req 1 -- as if deparsed True -- container_to_use phv80 |
| Group 6 8 bits -- avail 16 -- ingress avail 16 and remain 8 and promised 0 and req 0 -- egress avail 16 and remain 15 and promised 1 and req 1 -- as if deparsed True -- container_to_use phv96 |
| Group 7 8 bits -- avail 16 -- ingress avail 16 and remain 8 and promised 0 and req 0 -- egress avail 16 and remain 15 and promised 1 and req 1 -- as if deparsed True -- container_to_use phv112 |
| ***Allocating phv80[7:3] for eg_intr_md._pad7[4:0] |
| ***Allocating phv80[2:0] for eg_intr_md.egress_cos[2:0] |
| Packing options tried: 2 |
| Packing options skipped: 0 |
| Failure Reasons: |
| Field in disallowed list (case 3) -- tried 1 variants |
| field: eg_intr_md.egress_port |
| with constraints: [ |
| ParsedAlignment Constraint: eg_intr_md.egress_cos <3 bits egress parsed imeta> -- lsb bit: 0 |
| MaxFieldSplit Constraint: eg_intr_md.egress_cos <3 bits egress parsed imeta> -- max split: 1 |
| RightAdjacentAlignment Constraint: (left) eg_intr_md._pad7 <5 bits egress parsed imeta> -- (right) eg_intr_md.egress_cos <3 bits egress parsed imeta> |
| ContainerAlignment Constraint: eg_intr_md.egress_cos <3 bits egress parsed imeta> -- field_bit: 0 -- bits_list: [0, 1, 2, 3, 4, 5, 6, 7] |
| ] |
| |
| Working on parse node parse_pkt_out (4) (egress) |
| |
| ------------------------------------------- |
| Allocating parsed header: pkt fields (2) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 16 |
| Set metadata bits: 0 |
| Gress: egress |
| bits_will_need_to_parse = 16 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 16 |
| Parse state 0 (16 bits) |
| packet_out_hdr.egress_port [8:0] |
| packet_out_hdr._padding [6:0] |
| ------------------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ------------------------------------------------------------------------------------------------- |
| | packet_out_hdr.egress_port | 9 | True | - | - | [32] | 2 | 1 | |
| | packet_out_hdr._padding | 7 | True | - | - | [32] | 1 | 1 | |
| ------------------------------------------------------------------------------------------------- |
| |
| min_extracts[8] = 1 |
| min_extracts[16] = 1 |
| min_extracts[32] = 1 |
| Packing options: 2 |
| MAU containers available: |
| 8-bit: 47 |
| 16-bit: 79 |
| 32-bit: 48 |
| Tagalong containers available: |
| 8-bit: 18 |
| 16-bit: 28 |
| 32-bit: 16 |
| Initial packing options: 2 |
| |
| Packing option 0: [16] |
| MAU containers after: |
| 8-bit: 47 |
| 16-bit: 79 |
| 32-bit: 48 |
| +-------------------------------------+ |
| | packet_out_hdr.egress_port [8:0] | |
| | packet_out_hdr._padding [6:0] | |
| +-------------------------------------+ |
| |
| Looking at packet_out_hdr.egress_port (egress) [8:0], with test_alloc = True |
| ----> packet_out_hdr.egress_port (egress) is allocated? False |
| Looking at packet_out_hdr._padding (egress) [6:0], with test_alloc = True |
| ***Allocating phv340[15:7] for packet_out_hdr.egress_port[8:0] |
| ***Allocating phv340[6:0] for packet_out_hdr._padding[6:0] |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| |
| Working on parse node start (1) () |
| Working on parse node default_parser (3) () |
| Working on parse node --ingress-- (0) () |
| Working on parse node start (1) () |
| Working on parse node default_parser (3) () |
| Working on parse node egress_for_mirror_buffer (10) () |
| Working on parse node --egress-- (0) () |
| |
| After allocating critical parse paths: |
| Allocation state: Final Allocation |
| ----------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| ----------------------------------------------------------------------------- |
| | 0 (32) | 3 (18.75%) | 96 (18.75%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 3 (4.69%) | 96 (4.69%) | 2048 | |
| | | | | | |
| | 4 (8) | 2 (12.50%) | 16 (12.50%) | 128 | |
| | 5 (8) | 1 (6.25%) | 8 (6.25%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 3 (4.69%) | 24 (4.69%) | 512 | |
| | | | | | |
| | 8 (16) | 4 (25.00%) | 64 (25.00%) | 256 | |
| | 9 (16) | 1 (6.25%) | 16 (6.25%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 5 (5.21%) | 80 (5.21%) | 1536 | |
| | | | | | |
| | 14 (32) T | 13 (81.25%) | 416 (81.25%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 13 (40.62%) | 416 (40.62%) | 1024 | |
| | | | | | |
| | 16 (8) T | 12 (75.00%) | 96 (75.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 12 (37.50%) | 96 (37.50%) | 256 | |
| | | | | | |
| | 18 (16) T | 11 (68.75%) | 176 (68.75%) | 256 | |
| | 19 (16) T | 5 (31.25%) | 80 (31.25%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 16 (33.33%) | 256 (33.33%) | 768 | |
| | | | | | |
| | MAU total | 11 (4.91%) | 200 (4.88%) | 4096 | |
| | Tagalong total | 41 (36.61%) | 768 (37.50%) | 2048 | |
| | Overall total | 52 (15.48%) | 968 (15.76%) | 6144 | |
| ----------------------------------------------------------------------------- |
| |
| >>Event 'pa_overlay' at time 1505307428.45 |
| Took 9.11 seconds |
| |
| ----------------------------------------------- |
| Allocating remaining parsed fields |
| ----------------------------------------------- |
| Allocation Step |
| |
| All Sorted parse nodes (non-critical): |
| parse_pkt_in (ingress) with bits = 16 and max = 2 |
| parse_udp (ingress) with bits = 64 and max = 1 |
| parse_udp (egress) with bits = 64 and max = 1 |
| parse_pkt_in (egress) with bits = 16 and max = 1 |
| Total packet bits: 160 |
| Total meta bits: 0 |
| Total bits: 160 |
| Working on parse node parse_pkt_in (2) (ingress) |
| |
| ------------------------------------------- |
| Overlaying parsed header: pkt fields (2) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 16 |
| Set metadata bits: 0 |
| Gress: ingress |
| bits_will_need_to_parse = 16 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 16 |
| Parse state 0 (16 bits) |
| packet_in_hdr.ingress_port [8:0] |
| packet_in_hdr._padding [6:0] |
| ------------------------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ------------------------------------------------------------------------------------------------------- |
| | packet_in_hdr.ingress_port | 9 | False | [(16, 9)] | - | [32] | 2 | 2 | |
| | packet_in_hdr._padding | 7 | True | - | - | [32] | 1 | 1 | |
| ------------------------------------------------------------------------------------------------------- |
| |
| MAU containers available: |
| 8-bit: 46 |
| 16-bit: 75 |
| 32-bit: 45 |
| Packing options: 2 |
| Initial packing options: 2 |
| |
| Packing option 0: [16] |
| >>Can pack using [16] if open up 0 new containers. |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| Trying to place using best packing [16] |
| ***Allocating phv129[15:7] for packet_in_hdr.ingress_port[8:0] |
| ***Allocating phv129[6:0] for packet_in_hdr._padding[6:0] |
| Working on parse node parse_udp (8) (ingress) |
| |
| ------------------------------------------- |
| Overlaying parsed header: pkt fields (4) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 64 |
| Set metadata bits: 0 |
| Gress: ingress |
| bits_will_need_to_parse = 64 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 64 |
| Parse state 0 (64 bits) |
| udp.srcPort [15:0] |
| udp.dstPort [15:0] |
| udp.length_ [15:0] |
| udp.checksum [15:0] |
| ----------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ----------------------------------------------------------------------------------- |
| | udp.srcPort | 16 | True | - | - | - | 2 | 1 | |
| | udp.dstPort | 16 | True | - | - | - | 2 | 1 | |
| | udp.length_ | 16 | True | - | - | - | 2 | 1 | |
| | udp.checksum | 16 | True | - | - | - | 2 | 1 | |
| ----------------------------------------------------------------------------------- |
| |
| MAU containers available: |
| 8-bit: 46 |
| 16-bit: 75 |
| 32-bit: 45 |
| Packing options: 47 |
| Initial packing options: 47 |
| |
| Packing option 0: [8, 8, 16, 32] |
| >>Can pack using [8, 8, 16, 32] if open up 0 new containers. |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| Trying to place using best packing [8, 8, 16, 32] |
| ***Allocating phv290[7:0] for udp.srcPort[15:8] |
| ***Allocating phv291[7:0] for udp.srcPort[7:0] |
| ***Allocating phv323[15:0] for udp.dstPort[15:0] |
| ***Allocating phv259[31:16] for udp.length_[15:0] |
| ***Allocating phv259[15:0] for udp.checksum[15:0] |
| Working on parse node parse_udp (8) (egress) |
| |
| ------------------------------------------- |
| Overlaying parsed header: pkt fields (4) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 64 |
| Set metadata bits: 0 |
| Gress: egress |
| bits_will_need_to_parse = 64 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 64 |
| Parse state 0 (64 bits) |
| udp.srcPort [15:0] |
| udp.dstPort [15:0] |
| udp.length_ [15:0] |
| udp.checksum [15:0] |
| ----------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ----------------------------------------------------------------------------------- |
| | udp.srcPort | 16 | True | - | - | - | 2 | 1 | |
| | udp.dstPort | 16 | True | - | - | - | 2 | 1 | |
| | udp.length_ | 16 | True | - | - | - | 2 | 1 | |
| | udp.checksum | 16 | True | - | - | - | 2 | 1 | |
| ----------------------------------------------------------------------------------- |
| |
| MAU containers available: |
| 8-bit: 47 |
| 16-bit: 79 |
| 32-bit: 48 |
| Packing options: 47 |
| Initial packing options: 47 |
| |
| Packing option 0: [8, 8, 16, 32] |
| >>Can pack using [8, 8, 16, 32] if open up 0 new containers. |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| Trying to place using best packing [8, 8, 16, 32] |
| ***Allocating phv298[7:0] for udp.srcPort[15:8] |
| ***Allocating phv299[7:0] for udp.srcPort[7:0] |
| ***Allocating phv336[15:0] for udp.dstPort[15:0] |
| ***Allocating phv267[31:16] for udp.length_[15:0] |
| ***Allocating phv267[15:0] for udp.checksum[15:0] |
| Working on parse node parse_pkt_in (2) (egress) |
| |
| ------------------------------------------- |
| Overlaying parsed header: pkt fields (2) / meta fields (0) using extraction bandwidth 224 |
| ------------------------------------------- |
| Extracted bits: 16 |
| Set metadata bits: 0 |
| Gress: egress |
| bits_will_need_to_parse = 16 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 16 |
| Parse state 0 (16 bits) |
| packet_in_hdr.ingress_port [8:0] |
| packet_in_hdr._padding [6:0] |
| ------------------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ------------------------------------------------------------------------------------------------- |
| | packet_in_hdr.ingress_port | 9 | True | - | - | [32] | 2 | 1 | |
| | packet_in_hdr._padding | 7 | True | - | - | [32] | 1 | 1 | |
| ------------------------------------------------------------------------------------------------- |
| |
| MAU containers available: |
| 8-bit: 47 |
| 16-bit: 79 |
| 32-bit: 48 |
| Packing options: 2 |
| Initial packing options: 2 |
| |
| Packing option 0: [16] |
| >>Can pack using [16] if open up 0 new containers. |
| Packing options tried: 1 |
| Packing options skipped: 0 |
| Trying to place using best packing [16] |
| ***Allocating phv340[15:7] for packet_in_hdr.ingress_port[8:0] |
| ***Allocating phv340[6:0] for packet_in_hdr._padding[6:0] |
| |
| After allocating remaining parse nodes: |
| Allocation state: Final Allocation |
| ----------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| ----------------------------------------------------------------------------- |
| | 0 (32) | 3 (18.75%) | 96 (18.75%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 3 (4.69%) | 96 (4.69%) | 2048 | |
| | | | | | |
| | 4 (8) | 2 (12.50%) | 16 (12.50%) | 128 | |
| | 5 (8) | 1 (6.25%) | 8 (6.25%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 3 (4.69%) | 24 (4.69%) | 512 | |
| | | | | | |
| | 8 (16) | 4 (25.00%) | 64 (25.00%) | 256 | |
| | 9 (16) | 1 (6.25%) | 16 (6.25%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 5 (5.21%) | 80 (5.21%) | 1536 | |
| | | | | | |
| | 14 (32) T | 13 (81.25%) | 416 (81.25%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 13 (40.62%) | 416 (40.62%) | 1024 | |
| | | | | | |
| | 16 (8) T | 12 (75.00%) | 96 (75.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 12 (37.50%) | 96 (37.50%) | 256 | |
| | | | | | |
| | 18 (16) T | 11 (68.75%) | 176 (68.75%) | 256 | |
| | 19 (16) T | 5 (31.25%) | 80 (31.25%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 16 (33.33%) | 256 (33.33%) | 768 | |
| | | | | | |
| | MAU total | 11 (4.91%) | 200 (4.88%) | 4096 | |
| | Tagalong total | 41 (36.61%) | 768 (37.50%) | 2048 | |
| | Overall total | 52 (15.48%) | 968 (15.76%) | 6144 | |
| ----------------------------------------------------------------------------- |
| |
| |
| |
| Difference in allocation between critical parse path and overlaying headers: |
| Allocation state: Diff |
| -------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| -------------------------------------------------------------------------- |
| | 0 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 0 (0.00%) | 0 (0.00%) | 2048 | |
| | | | | | |
| | 4 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 5 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 512 | |
| | | | | | |
| | 8 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 9 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 0 (0.00%) | 0 (0.00%) | 1536 | |
| | | | | | |
| | 14 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 0 (0.00%) | 0 (0.00%) | 1024 | |
| | | | | | |
| | 16 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 256 | |
| | | | | | |
| | 18 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 19 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 0 (0.00%) | 0 (0.00%) | 768 | |
| | | | | | |
| | MAU total | 0 (0.00%) | 0 (0.00%) | 4096 | |
| | Tagalong total | 0 (0.00%) | 0 (0.00%) | 2048 | |
| | Overall total | 0 (0.00%) | 0 (0.00%) | 6144 | |
| -------------------------------------------------------------------------- |
| |
| >>Event 'pa_meta1' at time 1505307428.97 |
| Took 0.51 seconds |
| |
| ----------------------------------------------- |
| Allocating metadata (pass 1) |
| ----------------------------------------------- |
| Allocation Step |
| @@@ overlaying ig_intr_md_for_tm.drop_ctl (ingress) and ig_intr_md.resubmit_flag (ingress) will require table injection to initialize. |
| @@@ overlaying ig_intr_md_for_tm.drop_ctl (ingress) and ig_intr_md._pad1 (ingress) will require table injection to initialize. |
| @@@ overlaying ig_intr_md_for_tm.drop_ctl (ingress) and ig_intr_md._pad2 (ingress) will require table injection to initialize. |
| @@@ overlaying ig_intr_md_for_tm.drop_ctl (ingress) and ig_intr_md._pad3 (ingress) will require table injection to initialize. |
| Total metadata field instances to allocate: 2 / 12 bits (12 ingress bits and 0 egress bits) |
| Promised metadata field instances to allocate: 1 / 9 bits (9 ingress bits and 0 egress bits) |
| 0: ig_intr_md_for_tm.ucast_egress_port (ingress) (highly=0, mau_group_size=2, max_overlay=0, max_share=0, max_split=1, bit_width=9, initial_usage_read=2, earliest_use=0, latest_use=12) |
| |
| -------------- |
| Working on: |
| ig_intr_md_for_tm.ucast_egress_port <9 bits ingress imeta R W> |
| bits_will_need_to_parse = 9 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 16 |
| extracted_bits = 9 while meta_fi.bit_width = 9 |
| Parse state 0 (9 bits) |
| ig_intr_md_for_tm.ucast_egress_port [8:0] |
| ---------------------------------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ---------------------------------------------------------------------------------------------------------------- |
| | ig_intr_md_for_tm.ucast_egress_port | 9 | False | [(16, 9)] | - | [8, 32] | 1 | 2 | |
| ---------------------------------------------------------------------------------------------------------------- |
| |
| max_split = 1, adj = False |
| required_packing = [(16, 9)] |
| Packing options: 1 |
| Valid packing options: 1 |
| |
| Attempting to overlay... |
| [16] |
| case 2: looking at allowed start bits [0] |
| final start_bit = 0 |
| (1) msb_offset = 9 |
| >> HEY!: Adjusted msb_offset! |
| >>Can pack using [16] if open up 1 new containers. |
| |
| Attempting to share... |
| |
| [16] |
| (2a) msb_offset = 16 |
| >>Can pack using [16] if open up 1 new containers. |
| |
| >>Choose overlay option |
| case 2: looking at allowed start bits [0] |
| final start_bit = 0 |
| (1) msb_offset = 9 |
| >> HEY!: Adjusted msb_offset! |
| ***Allocating phv130[8:0] for ig_intr_md_for_tm.ucast_egress_port[8:0] |
| Allocation state after promised meta allocated: |
| Allocation state: Final Allocation |
| ----------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| ----------------------------------------------------------------------------- |
| | 0 (32) | 3 (18.75%) | 96 (18.75%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 3 (4.69%) | 96 (4.69%) | 2048 | |
| | | | | | |
| | 4 (8) | 2 (12.50%) | 16 (12.50%) | 128 | |
| | 5 (8) | 1 (6.25%) | 8 (6.25%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 3 (4.69%) | 24 (4.69%) | 512 | |
| | | | | | |
| | 8 (16) | 5 (31.25%) | 73 (28.52%) | 256 | |
| | 9 (16) | 1 (6.25%) | 16 (6.25%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 6 (6.25%) | 89 (5.79%) | 1536 | |
| | | | | | |
| | 14 (32) T | 13 (81.25%) | 416 (81.25%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 13 (40.62%) | 416 (40.62%) | 1024 | |
| | | | | | |
| | 16 (8) T | 12 (75.00%) | 96 (75.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 12 (37.50%) | 96 (37.50%) | 256 | |
| | | | | | |
| | 18 (16) T | 11 (68.75%) | 176 (68.75%) | 256 | |
| | 19 (16) T | 5 (31.25%) | 80 (31.25%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 16 (33.33%) | 256 (33.33%) | 768 | |
| | | | | | |
| | MAU total | 12 (5.36%) | 209 (5.10%) | 4096 | |
| | Tagalong total | 41 (36.61%) | 768 (37.50%) | 2048 | |
| | Overall total | 53 (15.77%) | 977 (15.90%) | 6144 | |
| ----------------------------------------------------------------------------- |
| |
| Allocation state difference after promised meta allocated: |
| Allocation state: Diff |
| -------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| -------------------------------------------------------------------------- |
| | 0 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 0 (0.00%) | 0 (0.00%) | 2048 | |
| | | | | | |
| | 4 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 5 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 512 | |
| | | | | | |
| | 8 (16) | 1 (6.25%) | 9 (3.52%) | 256 | |
| | 9 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 1 (1.04%) | 9 (0.59%) | 1536 | |
| | | | | | |
| | 14 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 0 (0.00%) | 0 (0.00%) | 1024 | |
| | | | | | |
| | 16 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 256 | |
| | | | | | |
| | 18 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 19 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 0 (0.00%) | 0 (0.00%) | 768 | |
| | | | | | |
| | MAU total | 1 (0.45%) | 9 (0.22%) | 4096 | |
| | Tagalong total | 0 (0.00%) | 0 (0.00%) | 2048 | |
| | Overall total | 1 (0.30%) | 9 (0.15%) | 6144 | |
| -------------------------------------------------------------------------- |
| |
| Sorted metadata field instances to allocate: 0 / 0 bits (0 ingress bits and 0 egress bits) |
| >>Event 'pa_pov' at time 1505307429.04 |
| Took 0.07 seconds |
| |
| ----------------------------------------------- |
| Allocating POV |
| ----------------------------------------------- |
| Allocation Step |
| Allocation state: Final Allocation |
| ----------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| ----------------------------------------------------------------------------- |
| | 0 (32) | 3 (18.75%) | 96 (18.75%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 3 (4.69%) | 96 (4.69%) | 2048 | |
| | | | | | |
| | 4 (8) | 2 (12.50%) | 16 (12.50%) | 128 | |
| | 5 (8) | 1 (6.25%) | 8 (6.25%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 3 (4.69%) | 24 (4.69%) | 512 | |
| | | | | | |
| | 8 (16) | 5 (31.25%) | 73 (28.52%) | 256 | |
| | 9 (16) | 1 (6.25%) | 16 (6.25%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 6 (6.25%) | 89 (5.79%) | 1536 | |
| | | | | | |
| | 14 (32) T | 13 (81.25%) | 416 (81.25%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 13 (40.62%) | 416 (40.62%) | 1024 | |
| | | | | | |
| | 16 (8) T | 12 (75.00%) | 96 (75.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 12 (37.50%) | 96 (37.50%) | 256 | |
| | | | | | |
| | 18 (16) T | 11 (68.75%) | 176 (68.75%) | 256 | |
| | 19 (16) T | 5 (31.25%) | 80 (31.25%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 16 (33.33%) | 256 (33.33%) | 768 | |
| | | | | | |
| | MAU total | 12 (5.36%) | 209 (5.10%) | 4096 | |
| | Tagalong total | 41 (36.61%) | 768 (37.50%) | 2048 | |
| | Overall total | 53 (15.77%) | 977 (15.90%) | 6144 | |
| ----------------------------------------------------------------------------- |
| |
| Sorted POV field instances to allocate (with best pack): 13 |
| 0: --validity_check--packet_in_hdr (ingress) -- max pov share 6 / best pack 5 |
| 1: --validity_check--packet_out_hdr (ingress) -- max pov share 6 / best pack 5 |
| 2: --validity_check--ethernet (ingress) -- max pov share 6 / best pack 5 |
| 3: --validity_check--ipv4 (ingress) -- max pov share 6 / best pack 5 |
| 4: --validity_check--tcp (ingress) -- max pov share 6 / best pack 5 |
| 5: --validity_check--udp (ingress) -- max pov share 6 / best pack 5 |
| 6: --validity_check--metadata_bridge (ingress) -- max pov share 6 / best pack 5 |
| 7: --validity_check--packet_in_hdr (egress) -- max pov share 5 / best pack 4 |
| 8: --validity_check--packet_out_hdr (egress) -- max pov share 5 / best pack 4 |
| 9: --validity_check--ethernet (egress) -- max pov share 5 / best pack 4 |
| 10: --validity_check--ipv4 (egress) -- max pov share 5 / best pack 4 |
| 11: --validity_check--tcp (egress) -- max pov share 5 / best pack 4 |
| 12: --validity_check--udp (egress) -- max pov share 5 / best pack 4 |
| |
| Working on |
| --validity_check--packet_in_hdr <1 bits ingress parsed pov W> |
| Call to _allocate_pov_helper for: |
| --validity_check--packet_in_hdr (ingress) |
| Best pack group: (6) |
| |
| Looking for container to share POV bit in from already allocated containers for POV. |
| Container availability (not used yet for POV): total 198 / partial 1 |
| |
| Looking for container to share POV bit in from already allocated containers that have not been used for POV. |
| >>Choose container phv66, starting at container bit 0, which results in 7 bits still available (unused = 8 and could fit = 7). |
| >> Decided to allocate new container |
| Required container phv66 |
| ***Allocating phv66[0:0] for --validity_check--packet_in_hdr[0:0] |
| ***Allocating phv66[1:1] for --validity_check--packet_out_hdr[0:0] |
| ***Allocating phv66[2:2] for --validity_check--ethernet[0:0] |
| ***Allocating phv66[3:3] for --validity_check--ipv4[0:0] |
| ***Allocating phv66[4:4] for --validity_check--tcp[0:0] |
| ***Allocating phv66[5:5] for --validity_check--udp[0:0] |
| ***Allocating phv66[6:6] for --validity_check--metadata_bridge[0:0] |
| |
| Working on |
| --validity_check--packet_out_hdr <1 bits ingress parsed pov R W> |
| Already allocated. |
| |
| Working on |
| --validity_check--ethernet <1 bits ingress parsed pov> |
| Already allocated. |
| |
| Working on |
| --validity_check--ipv4 <1 bits ingress parsed pov> |
| Already allocated. |
| |
| Working on |
| --validity_check--tcp <1 bits ingress parsed pov> |
| Already allocated. |
| |
| Working on |
| --validity_check--udp <1 bits ingress parsed pov> |
| Already allocated. |
| |
| Working on |
| --validity_check--metadata_bridge <1 bits ingress parsed pov> |
| Already allocated. |
| |
| Working on |
| --validity_check--packet_in_hdr <1 bits egress parsed pov> |
| Call to _allocate_pov_helper for: |
| --validity_check--packet_in_hdr (egress) |
| Best pack group: (5) |
| |
| Looking for container to share POV bit in from already allocated containers for POV. |
| Container availability (not used yet for POV): total 202 / partial 0 |
| |
| Looking for container to share POV bit in from already allocated containers that have not been used for POV. |
| >>Choose container phv81, starting at container bit 0, which results in 7 bits still available (unused = 8 and could fit = 6). |
| >> Decided to allocate new container |
| Required container phv81 |
| ***Allocating phv81[0:0] for --validity_check--packet_in_hdr[0:0] |
| ***Allocating phv81[1:1] for --validity_check--packet_out_hdr[0:0] |
| ***Allocating phv81[2:2] for --validity_check--ethernet[0:0] |
| ***Allocating phv81[3:3] for --validity_check--ipv4[0:0] |
| ***Allocating phv81[4:4] for --validity_check--tcp[0:0] |
| ***Allocating phv81[5:5] for --validity_check--udp[0:0] |
| |
| Working on |
| --validity_check--packet_out_hdr <1 bits egress parsed pov> |
| Already allocated. |
| |
| Working on |
| --validity_check--ethernet <1 bits egress parsed pov> |
| Already allocated. |
| |
| Working on |
| --validity_check--ipv4 <1 bits egress parsed pov> |
| Already allocated. |
| |
| Working on |
| --validity_check--tcp <1 bits egress parsed pov> |
| Already allocated. |
| |
| Working on |
| --validity_check--udp <1 bits egress parsed pov> |
| Already allocated. |
| |
| Sum of container bit widths POVs found in: 16 |
| ingress |
| phv66 (8 bits) |
| >> 8 total bits |
| egress |
| phv81 (8 bits) |
| >> 8 total bits |
| >>Event 'pa_meta2' at time 1505307429.16 |
| Took 0.12 seconds |
| |
| ----------------------------------------------- |
| Allocating metadata (pass 2) |
| ----------------------------------------------- |
| Allocation Step |
| Total metadata field instances to allocate: 1 / 3 bits (3 ingress bits and 0 egress bits) |
| Promised metadata field instances to allocate: 0 / 0 bits (0 ingress bits and 0 egress bits) |
| Allocation state after promised meta allocated: |
| Allocation state: Final Allocation |
| ----------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| ----------------------------------------------------------------------------- |
| | 0 (32) | 3 (18.75%) | 96 (18.75%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 3 (4.69%) | 96 (4.69%) | 2048 | |
| | | | | | |
| | 4 (8) | 3 (18.75%) | 23 (17.97%) | 128 | |
| | 5 (8) | 2 (12.50%) | 14 (10.94%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 5 (7.81%) | 37 (7.23%) | 512 | |
| | | | | | |
| | 8 (16) | 5 (31.25%) | 73 (28.52%) | 256 | |
| | 9 (16) | 1 (6.25%) | 16 (6.25%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 6 (6.25%) | 89 (5.79%) | 1536 | |
| | | | | | |
| | 14 (32) T | 13 (81.25%) | 416 (81.25%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 13 (40.62%) | 416 (40.62%) | 1024 | |
| | | | | | |
| | 16 (8) T | 12 (75.00%) | 96 (75.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 12 (37.50%) | 96 (37.50%) | 256 | |
| | | | | | |
| | 18 (16) T | 11 (68.75%) | 176 (68.75%) | 256 | |
| | 19 (16) T | 5 (31.25%) | 80 (31.25%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 16 (33.33%) | 256 (33.33%) | 768 | |
| | | | | | |
| | MAU total | 14 (6.25%) | 222 (5.42%) | 4096 | |
| | Tagalong total | 41 (36.61%) | 768 (37.50%) | 2048 | |
| | Overall total | 55 (16.37%) | 990 (16.11%) | 6144 | |
| ----------------------------------------------------------------------------- |
| |
| Allocation state difference after promised meta allocated: |
| Allocation state: Diff |
| -------------------------------------------------------------------------- |
| | PHV Group | Containers Used | Bits Used | Bits Available | |
| | (container bit widths) | (% used) | (% used) | | |
| -------------------------------------------------------------------------- |
| | 0 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 1 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 2 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 3 (32) | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 0 (0.00%) | 0 (0.00%) | 2048 | |
| | | | | | |
| | 4 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 5 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 6 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 7 (8) | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 512 | |
| | | | | | |
| | 8 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 9 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 10 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 11 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 12 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 13 (16) | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 0 (0.00%) | 0 (0.00%) | 1536 | |
| | | | | | |
| | 14 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | 15 (32) T | 0 (0.00%) | 0 (0.00%) | 512 | |
| | Total for 32 bit | 0 (0.00%) | 0 (0.00%) | 1024 | |
| | | | | | |
| | 16 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | 17 (8) T | 0 (0.00%) | 0 (0.00%) | 128 | |
| | Total for 8 bit | 0 (0.00%) | 0 (0.00%) | 256 | |
| | | | | | |
| | 18 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 19 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | 20 (16) T | 0 (0.00%) | 0 (0.00%) | 256 | |
| | Total for 16 bit | 0 (0.00%) | 0 (0.00%) | 768 | |
| | | | | | |
| | MAU total | 0 (0.00%) | 0 (0.00%) | 4096 | |
| | Tagalong total | 0 (0.00%) | 0 (0.00%) | 2048 | |
| | Overall total | 0 (0.00%) | 0 (0.00%) | 6144 | |
| -------------------------------------------------------------------------- |
| |
| Sorted metadata field instances to allocate: 1 / 3 bits (3 ingress bits and 0 egress bits) |
| 0: ig_intr_md_for_tm.drop_ctl (ingress) (highly=0, mau_group_size=1, max_overlay=0, best_overlay_pack=0, max_share=0, best_share_pack=0, max_split=1, bit_width=3, initial_usage_read=2, earliest_use=0, latest_use=12) |
| |
| --------------------------------------- |
| Working on: |
| ig_intr_md_for_tm.drop_ctl <3 bits ingress imeta W> |
| max_split = 1, adj = False |
| Of remaining metadata fields to allocate |
| max_overlay = 0 (0 bits) |
| max_share = 0 (0 bits) |
| bits_will_need_to_parse = 3 |
| unused_metadata_container_bits = 0 |
| min_parse_states = 1 |
| bits_per_state = 8 |
| Parse state 0 (3 bits) |
| ig_intr_md_for_tm.drop_ctl [2:0] |
| ------------------------------------------------------------------------------------------------- |
| | Name | BW | Tagalong? | Req | Pref | Not Allow | MaxSplit | Group Size | |
| ------------------------------------------------------------------------------------------------- |
| | ig_intr_md_for_tm.drop_ctl | 3 | False | - | - | - | 1 | 1 | |
| ------------------------------------------------------------------------------------------------- |
| |
| req packing: [None] |
| disallowed packing: [None] |
| Group 0 32 bits -- avail 13 and promised 1 -- ingress promised 1 and remain 12 and req 1 -- egress promised 0 and remain 12 and req 0 -- as if deparsed True -- container_to_use phv3 -- fails False |
| Group 1 32 bits -- avail 16 and promised None -- ingress promised None and remain None and req None -- egress promised None and remain None and req None -- as if deparsed False -- container_to_use None -- fails True |
| Group 2 32 bits -- avail 16 and promised 1 -- ingress promised 1 and remain 15 and req 1 -- egress promised 0 and remain 12 and req 0 -- as if deparsed True -- container_to_use phv32 -- fails False |
| Group 3 32 bits -- avail 16 and promised 1 -- ingress promised 1 and remain 15 and req 1 -- egress promised 0 and remain 12 and req 0 -- as if deparsed True -- container_to_use phv48 -- fails False |
| Group 4 8 bits -- avail 13 and promised 1 -- ingress promised 1 and remain 12 and req 1 -- egress promised 0 and remain 8 and req 0 -- as if deparsed True -- container_to_use phv67 -- fails False |
| Group 5 8 bits -- avail 14 and promised None -- ingress promised None and remain None and req None -- egress promised None and remain None and req None -- as if deparsed False -- container_to_use None -- fails True |
| Group 6 8 bits -- avail 16 and promised 1 -- ingress promised 1 and remain 15 and req 1 -- egress promised 0 and remain 8 and req 0 -- as if deparsed True -- container_to_use phv96 -- fails False |
| Group 7 8 bits -- avail 16 and promised 1 -- ingress promised 1 and remain 15 and req 1 -- egress promised 0 and remain 8 and req 0 -- as if deparsed True -- container_to_use phv112 -- fails False |
| Group 8 16 bits -- avail 11 and promised 1 -- ingress promised 1 and remain 10 and req 1 -- egress promised 0 and remain 8 and req 0 -- as if deparsed True -- container_to_use phv133 -- fails False |
| Group 9 16 bits -- avail 15 and promised None -- ingress promised None and remain None and req None -- egress promised None and remain None and req None -- as if deparsed False -- container_to_use None -- fails True |
| Group 10 16 bits -- avail 16 and promised 1 -- ingress promised 1 and remain 15 and req 1 -- egress promised 0 and remain 8 and req 0 -- as if deparsed True -- container_to_use phv160 -- fails False |
| Group 11 16 bits -- avail 16 and promised 1 -- ingress promised 1 and remain 15 and req 1 -- egress promised 0 and remain 8 and req 0 -- as if deparsed True -- container_to_use phv176 -- fails False |
| Group 12 16 bits -- avail 16 and promised 1 -- ingress promised 1 and remain 15 and req 1 -- egress promised 0 and remain 8 and req 0 -- as if deparsed True -- container_to_use phv192 -- fails False |
| Group 13 16 bits -- avail 16 and promised 1 -- ingress promised 1 and remain 15 and req 1 -- egress promised 0 and remain 8 and req 0 -- as if deparsed True -- container_to_use phv208 -- fails False |
| Metadata instance: ig_intr_md_for_tm.drop_ctl <3 bits ingress imeta W> |
| >>req_alignment = None |
| >>allowed_container_start_bits = [0, 1, 2, 3, 4, 5, 6, 7] |
| >>req_container = None |
| case 2: looking at allowed start bits [0, 1, 2, 3, 4, 5, 6, 7] |
| final start_bit = 5 |
| (1) msb_offset = 8 |
| ***Allocating phv67[7:5] for ig_intr_md_for_tm.drop_ctl[2:0] |
| >>Event 'pa_meta_init' at time 1505307429.22 |
| Took 0.06 seconds |
| |
| ----------------------------------------------- |
| Adding metadata initialization |
| ----------------------------------------------- |
| |
| +------------------------+ |
| |
| Performing inject metadata initialization instructions: (0) |
| tbl_name_to_common_edge_groups: 0 |
| all_edge: 0 |
| |
| Performing replace metadata initialization instructions: (0) |
| |
| Performing remove metadata initialization instructions: (0) |
| |
| Performing clear metadata initialization instructions: (0) |
| |
| Performing invalidate metadata initialization instructions: (0) |
| |
| Total overlay containers examined for initialization: 0 |
| |
| ----------------------------------------------- |
| Checking constraints satisfied |
| ----------------------------------------------- |
| No constraints violated. |