[P4-design] Announcing P4_16

Mihai Budiu mbudiu at vmware.com
Mon Jan 2 03:29:57 EST 2017


It is not yet on github as far as I know, but I believe that a copy has been circulated on this mailing list a couple of months back, so hopefully it can be accessed in the archives.

P4-16 allows for many architectures, in fact there are two sample architectures in the reference implementation, and each one has different intrinsic metadata.

Mihai

From: Tal Mizrahi<mailto:talmi at marvell.com>
Sent: Sunday, January 1, 2017 23:50
To: Mihai Budiu<mailto:mbudiu at vmware.com>; Changhoon Kim<mailto:chang at barefootnetworks.com>; p4-design at lists.p4.org<mailto:p4-design at lists.p4.org>
Subject: RE: [P4-design] Announcing P4_16

Hi Mihai,

Thanks for the quick response.

Is the portable architecture draft available on github, or not yet?

Regards,
Tal.

From: Mihai Budiu [mailto:mbudiu at vmware.com]
Sent: Monday, January 02, 2017 9:45 AM
To: Tal Mizrahi; Changhoon Kim; p4-design at lists.p4.org
Subject: [EXT] RE: [P4-design] Announcing P4_16

External Email
________________________________
The intrinsic metadata spec is part of each architecture. There is a draft for a portable architecture being developed.

Mihai

From: Tal Mizrahi<mailto:talmi at marvell.com>
Sent: Sunday, January 1, 2017 23:26
To: Changhoon Kim<mailto:chang at barefootnetworks.com>; p4-design at lists.p4.org<mailto:p4-design at lists.p4.org>
Subject: Re: [P4-design] Announcing P4_16

Hi,

Congrats on the new release.

Question: previous versions of the spec included a specification of intrinsic metadata fields. It seems that the new spec does not include intrinsic metadata.
Is this going to be specified in a different spec, or will intrinsic metadata be strictly vendor-specific?

Thanks,
Tal.


From: P4-announce [mailto:p4-announce-bounces at lists.p4.org] On Behalf Of Changhoon Kim
Sent: Thursday, December 22, 2016 5:36 AM
To: p4-announce at lists.p4.org<mailto:p4-announce at lists.p4.org>
Subject: [P4-announce] Announcing P4_16

________________________________
Hi P4 enthusiasts,

I'm delighted to announce that P4 Design Working Group has just released a community pre-release version of the new P4 language specification, namely P416.

The full specification of P416 is available at http://p4.org/spec/<https://urldefense.proofpoint.com/v2/url?u=http-3A__p4.org_spec_&d=DgMGaQ&c=uilaK90D4TOVoH58JNXRgQ&r=tGW6TKXajnoXSyy1S1P4DHGPe8sj54GGvw-b21n7aWg&m=RfhMaO3OltIa4A4ypOPN0ER2c5sVXuDaetp-pTliFeo&s=8kFi2hsizVrSrYgIPlTjZ-mtIwEjAsGn1Xcbai6MGg4&e=>, and the reference compiler implementation of P416 is also available at https://github.com/p4lang/p4c<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_p4lang_p4c&d=DgMGaQ&c=uilaK90D4TOVoH58JNXRgQ&r=tGW6TKXajnoXSyy1S1P4DHGPe8sj54GGvw-b21n7aWg&m=RfhMaO3OltIa4A4ypOPN0ER2c5sVXuDaetp-pTliFeo&s=nXk5d3P6tiD3VJCdwdGJvc5zB3lIm_vzJiy-ZUXGt1M&e=>.

Some of the key improvements of P416 relative to P414 (i.e., the current widely-adopted P4 specification) are as follows:

- Support for architectural heterogeneity (by separating the language from target architecture)
- Support for functional heterogeneity (by allowing language extension via extern types)
- Strong types
- Improved code reusability via parameterization
- Improved modularity (including local scoping)

This new language specification couldn't come out to the world without the huge contributions from several experts in P4.org. I'd love to thank all of them -- Mihai, Chris, Gordon, Calin, Nate, Ben, Vladimir, Antonin, Johann, Andy, Edwin, Anirudh, Dan, Nikolaj, Arjun (in no particular order), and everyone who offered feedback on the draft language specifications through various channels.

Let's keep writing exciting P4 programs with this new version, and happy holidays!

-- Chang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.p4.org/pipermail/p4-design_lists.p4.org/attachments/20170102/9e2b619c/attachment-0002.html>


More information about the P4-design mailing list