[P4] Fwd: FastReact running on t4p4s now! But I need one more feature to fully test.

Sándor Laki lakis at elte.hu
Thu Apr 25 13:27:43 CEST 2019




-------- Továbbított üzenet --------
Tárgy: 	FastReact running on t4p4s now! But I need one more feature to 
fully test.
Dátum: 	Tue, 9 Apr 2019 15:46:22 +0200
Feladó: 	Jonathan Vestin <jonathan.vestin at kau.se>
Címzett: 	Sándor Laki <lakis at elte.hu>
CC: 	Andreas Kassler <andreas.kassler at kau.se>



Hi Sandor!
Thank you for your hard work!
I've after a little bit of work got the FastReact code running, and 
actually sent some traffic through it. However, one of the things that I 
need to completely test FastReact on t4p4s, is to be able to either 
prefill the registers somehow, or access the registers from an external 
userspace application, or be able to modify them from the controller. 
Are any of these things possible? If so, how?

/Jonathan

Ps. Here are some things that I encountered, just FYI: * You cannot name 
control block parameters `pkt`, as it conflicts with an internal keyword 
during C compilation. * Ingress pipeline has to be named `ingress` 
otherwise @atomic doesn't compile. At least `MyIngress` didn't work. * 
Registers have to be defined within a control block, and not outside, 
even though p4c accepts this.
From: Jonathan Vestin <jonathan.vestin at kau.se>
To: Andreas Kassler <andreas.kassler at kau.se>
Cc: Sándor Laki <lakis at elte.hu>
Bcc:
Subject: Re: T4P4S
Reply-To:
In-Reply-To: <A78031C9-6D12-47F6-85B4-1D635D37F11E at kau.se>

On Tue, Apr 02, 2019 at 06:37:59PM +0200, Andreas Kassler wrote:
> Awesome,
> This is exactly what Jonathan needed. Jonathan, please give it a try.
> Thank, Andreas
>
> Sent from my iPhone
>
> > On 2 Apr 2019, at 18:20, Sándor Laki <lakis at elte.hu> wrote:
> > > Hi Andreas and Jonathan,
> > > Registers and atomic blocks have recently been added to t4p4s. An 
> example for the usage:
> > > //... within a control block...
> > > register<bit<16>>(1) reg1;
> > bit<16> var1;
> > > apply {
> > smac.apply();
> > dmac.apply();
> > @atomic { // this block is guarded by a spinlock (if you have 
> multiple atomic blocks in the control, the same spinlock object is 
> used...)
> > reg1.read(var1,0);
> > var1 = var1 + 1;
> > reg1.write(0, var1);
> > }
> > }
> > > If you need more or experience strange behavior, please let me 
> know and I or someone from our team will dig into it. If you can share 
> the p4 code, I can also check it and help in figuring out the cause of 
> problem.
> > > Best wishes,
> > Sandor
> > > 2019.03.27. 20:19 keltezéssel, Andreas Kassler írta:
> >> Hi Sandor,
> >> Hope all good. Jonathan checked out yesterday the new version of 
> T4P4S which is much improved. Awesome work! For our P4 code we need 
> register and atomic. He mentions that still some glue parts seem to be 
> missing. Do you know when full support for reg read and write is 
> available?
> >> Thanks, Andreas
> >> >> Von meinem iPad gesendet
> > > -- > Sándor Laki, PhD
> > Assistant professor
> > Department of Information Systems
> > Eötvös Loránd University
> > Pázmány Péter stny. 1/C
> > H-1117, Budapest, Hungary
> > Room 2.506
> > Web: http://lakis.web.elte.hu
> > Phone: +36 1 372 2869 / 8477
> > Cell: +36 70 374 2646
> > > > > ---
> > Ezt az e-mailt az Avast víruskereső szoftver átvizsgálta.
> > https://www.avast.com/antivirus
> > 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://plc.inf.elte.hu/pipermail/p4/attachments/20190425/095cd47c/attachment.html>


More information about the P4 mailing list