Christophe,

On 2/13/18, Christophe Fontaine <christophe.fonta...@enea.com> wrote:
> Andrew,
>
>> -----Original Message-----
>> From: vpp-dev@lists.fd.io [mailto:vpp-dev@lists.fd.io] On Behalf Of
>> Andrew
>> Yourtchenko
>> Sent: Tuesday, February 13, 2018 10:29 PM
>> To: vpp-dev@lists.fd.io
>> Cc: vpp-dev@lists.fd.io
>> Subject: Re: [vpp-dev] Experiments in compiling and running VPP on
>> Raspberry Pi (32-bit)
>>
>> Hi Christophe,
>>
>> > On 13 Feb 2018, at 21:50, Christophe Fontaine
>> <christophe.fonta...@enea.com> wrote:
>> >
>> > Hi Andrew !
>> >
>> > Happy to see someone else tried to play with the rpi ;)
>>
>> I wanna try VPP in my home network, but don’t have a lot of b/w (just
>> 2x50mbps with two ISPs), I am very strict about the power consumption for
>> the “always on” gadgets, that’s the motivation to try to squeeze it on
>> something small and see what happens :-)
>>
>
> I did the same initially, but for a lot of reasons (the main one being my
> better half didn't want to have to many stuff below the TV ) I switched to a
> unique x86 based micro server

Ah cool! I have it all in the closet, so try to do
one-function-per-device even if small. With RPi it is easy.

>
>> > I'm guilty for the initial work 1 year ago, but as you saw, I did not
>> > tried to
>> keep up with the development.
>>
>> Your work was of big help to get started, thanks a lot ! :-) though I
>> could not
>> dig enough into the archive to see whether “arm32” platform was specific
>> to
>> RPi or it was something more generic, so I went with a new platform file.
>>
>
> I tried to be as hardware independent as possible, but I tried on only 2
> platforms:
> - rpi 2
> - nvidia tegra tk1
>
>> >
>> > For the rpi timercode, it was mainly to have something standard, based
>> > on the aarch32 arch, but one thing worth mentioning is that I used a
>> > rpi2 (which is not a aarch64 running in aarch32 mode.) But this does
>> > not exclude a specific mess-up from my side ;)
>>
>> Oh, if you still have the h/w, would be curious to compare whether you
>> also
>> can observe this discrepancy in time... on my RPi3 with the kernel
>> module,
>> the “make run” would sporadically hang/crash, and since that was the
>> timer, I
>> just made a cycle taking the clib_cpu_time_now(), doing sleep(1), taking
>> another time, and printing the difference... maybe the behavior somehow
>> has changed inbetween.
>>
> Of course: I even have a rpi3 now, so I should be able to reproduce the bug
> you saw.
> Even if I can't guarantee I can spend some time this week on this, I'll do
> my best to test it next week.
> But feel free to send me a reminder.

Cool, thanks a lot!

--a

>
> Christophe
>
>
>> —a
>>
>> >
>> > Christophe
>> >
>> > -----Original Message-----
>> > From: vpp-dev@lists.fd.io [mailto:vpp-dev@lists.fd.io] On Behalf Of
>> > Andrew Yourtchenko
>> > Sent: Tuesday, February 13, 2018 6:29 PM
>> > To: vpp-dev@lists.fd.io
>> > Subject: [vpp-dev] Experiments in compiling and running VPP on
>> > Raspberry Pi (32-bit)
>> >
>> > Hi all,
>> >
>> > This past weekend (which coincided with the start of my vacation) I
>> > have
>> decided to spend a day to see if I can get VPP to compile and run on
>> Raspberry Pi.
>> >
>> > After a few cuts with a blunt pen knife, I got it working - it
>> > compiles entirely on RPi 3 itself and I can get it to the "make run",
>> > create tap interfaces, and ping the linux side. Other than also
>> > testing VAT (it works. I could create a couple of ACLs/assign them to
>> > interfaces) I did not yet test anything more sophisticated, so - no
>> > warranties whatsoever ! :-)
>> >
>> > I had a "real" HDD mounted as a checkout root - not sure how well it
>> > would
>> work using the flash, but probably should not be a problem. The only
>> other
>> thing worth mentioning - I learned RPi has a "thermometer" onscreen
>> display
>> sign, during the compile :-) The temperature of the CPU has reached 84C
>> (aka
>> "don't touch!"), that was *with* the heatsink. So, ensure you have a good
>> heat sink !
>> >
>> > I've captured the current state of my experiments here:
>> >
>> > https://gerrit.fd.io/r/#/c/10487/
>> >
>> > I boot the RPi with the additional "isolcpus=2,3" on the kernel command
>> line. I didn't test yet without that change. For the rest - it's a vanilla
>> Raspbian
>> Lite image.
>> >
>> > One note: reading the archives / wiki
>> > (https://wiki.fd.io/view/VPP/Alternative_builds),
>> > I saw the mention of the kernel module. When I ran the code with it, I
>> > saw
>> very flaky behavior, and frequent lockups/crashes.
>> >
>> > My debugging concluded that probably having the rdtsc deltas over a one
>> second interval vary more than 10x over the consecutive periods of time
>> is
>> what makes the timer code very unhappy. Not sure if this is specific to
>> the
>> hardware I have or to the way it works in RPi in general.
>> >
>> > Anyway, I found a way to create a very crude but more stable
>> > replacement
>> - RPi appears to have a 64-bit 1Mhz free-running timer/counter. Multiply
>> that
>> value by 1200... With that there were no more mysterious
>> instabilities/crashes. As a bonus - no need to load the kernel module, so
>> the
>> process is simpler. Probably the performance implications of that for
>> running
>> on Pi will be nontrivial, but it is surely better than crashing.
>> >
>> > Next 2.5 weeks I won't hack on this further (sightseeing/skiing will
>> > take precedence - vacation!), so figured I'll use this time to hear
>> > what you all think :-)
>> >
>> > --a
>> >
>> >
>> >
>>
>> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links:

You receive all messages sent to this group.

View/Reply Online (#8204): https://lists.fd.io/g/vpp-dev/message/8204
View All Messages In Topic (5): https://lists.fd.io/g/vpp-dev/topic/11145503
Mute This Topic: https://lists.fd.io/mt/11145503/21656
New Topic: https://lists.fd.io/g/vpp-dev/post

Change Your Subscription: https://lists.fd.io/g/vpp-dev/editsub/21656
Group Home: https://lists.fd.io/g/vpp-dev
Contact Group Owner: vpp-dev+ow...@lists.fd.io
Terms of Service: https://lists.fd.io/static/tos
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to