Parallella, Raspberry Pi, FPGA & All That Stuff

robl
robl
Joined: 2 Jan 13
Posts: 1709
Credit: 1454481721
RAC: 8753

Maybe this fits here or maybe

Maybe this fits here or maybe it does not (if not please remove) but I have installed Ubuntu 19.10 on a Pi 4.  I posted this in another thread.  You can read about it here:  http://usefulramblings.org/?page_id=12166  I have had a few hits but no comments either way as success/failure rates so caution might be advised.  I have not tried to crunch with this Pi4.  

PorkyPies
PorkyPies
Joined: 27 Apr 16
Posts: 197
Credit: 28021004
RAC: 8685

robl wrote:Maybe this fits

robl wrote:
Maybe this fits here or maybe it does not (if not please remove) but I have installed Ubuntu 19.10 on a Pi 4.  I posted this in another thread.  You can read about it here:  http://usefulramblings.org/?page_id=12166  I have had a few hits but no comments either way as success/failure rates so caution might be advised.  I have not tried to crunch with this Pi4.  

Could you post the values for uname -a and the cpu features line from /proc/cpuinfo please. Note that it repeats the cpu details for each of the 4 cores, so just one is enough.

N30dG-ARM
N30dG-ARM
Joined: 20 Oct 17
Posts: 23
Credit: 22094059
RAC: 0

PorkyPies wrote:Does the Pi

PorkyPies wrote:

Does the Pi 4 model B have FMA capability?

This is not a easy question to answer (At least not when I have to do it in english Wink). Short: Yes it has! but it is not that simple.

Let's start by take a look at 64bit vs. 32bit on ARM. In 64bit-Mode the CPU uses the new ARMv8-Instruction's (ISA). When you switch the CPU to 32bit-State, it is more(or less) some kind compatibility mode to ARMv7, so you are using the "old" ARMv7-Instructions. That is why your CPU reports itself back as a ARMv7-CPU even when it is a ARMv8-CPU. Both ARMv7 and ARMv8 have FMA-Instructions. But  they have different ones. On a ARMv7-CPU, FMA was optional, so the CPU-Manufacture could decide to include it or not. On ARMv8 this is standart. So yes your PI4 has FMA-Instructions, but two different one's, depending on running in 32 or 64bit Mode.

Now let's take a look at what FMA actually is: FMA stand's for Fused Multiply Accumulate. Which concatenate's a Multiply and a Addition into one single Operation, without any rounding Issue. So in general FMA is a good thing to have, as it speeds up computation and increases the precision of your results. But you can implement FMA in different ways. e.g. you can add first and than multiply or you can multiply first and than add something to it. On ARM a FMA does always the additon first and than the multiplication d = (a+b) * c. On a Intel/AMD-CPU you can choose what a FMA-Instruction should do, d=a+(b*c) or d=(a+b)*c. The main difference between ARMv7 and ARMv8 is that a ARMv8-CPU has a FMS(Fused-Multiply-Subtract)-Instruction in addition to FMA(Intel also has that). Now imagine a large Formula, with lot of multiplication's, addition's and subtraction's. This gives the compiler a great degree of freedom in how to arrange it into FMA, FMS, MUL, ADD, SUB - Instructions. Normally this is not a great deal, but in case of Boinc where you compare your results against the results of some on other Machine, it can be. e.g.: Comparing the results of 2x PI's one running a 64bit-App against 32bit-App, the 64bit-App uses FMS-Instructions the 32bit doesn't, there will be a rounding-Issue when comparing both results. In case of the BRP-App there is one part of the code(the resampling) that is really critical to even very small differences.

But don't panic: You can simply tell the compiler to don't use FMA-Instructions at all, which in case of BRP help's. Simply pass a -ffp-contract=off to gcc and you are good to go, because it is only this new FMS-Instruction that hurt's.

 

PorkyPies wrote:

If it does perhaps we could get this added as a project supplied beta app if you’re willing. They might also be interested in the FGRP app as well. Can you PM Bernd and let him know, assuming you are willing to give build instructions and source code.

As for the BRP: I was working with Christian Beer on a official Aarch64-Support, some Years ago but then Christian Beer left the MPI and the Project died.

As for the FGRP: Bernd know this, I've visited him around two year's ago and we are talking about all of this. Also Bernd granted me access to the FGRP-Code, which is closed source. And he know's that I have ported it to Aarch64. But there is a Boinc-limitation that prevent's this to be useful as an official App. Boinc can't send different App's based on System-Memory and the FGRP will only work on devices with >=0,8GB/Core. Most ARM-Devices have less memory. I'm not allowed to speak about detail's of the code, but Bernd allowed me to give the Binary's to interessed ARM-enthusiast.

So everybody who is interested in running the FGRP on his ARM-Device(64bit) can send me a PM an I send back the App and some instructions.

(But maybe as the PI4 now has a offical 64bit-OS and enough RAM, I should upload it someware and make a thread about it. Interest will probably grow over the next day's/week's.)

robl
robl
Joined: 2 Jan 13
Posts: 1709
Credit: 1454481721
RAC: 8753

PorkyPies wrote:robl

PorkyPies wrote:
robl wrote:
Maybe this fits here or maybe it does not (if not please remove) but I have installed Ubuntu 19.10 on a Pi 4.  I posted this in another thread.  You can read about it here:  http://usefulramblings.org/?page_id=12166  I have had a few hits but no comments either way as success/failure rates so caution might be advised.  I have not tried to crunch with this Pi4.  

Could you post the values for uname -a and the cpu features line from /proc/cpuinfo please. Note that it repeats the cpu details for each of the 4 cores, so just one is enough.

PorkyPies:

Here is the info you requested:

uname -a

Linux ubuntu 5.3.0-1008-raspi2 #9-Ubuntu SMP Fri Oct 18 13:26:35 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux     

and

    

cat /proc/cpuinfo
processor : 0
BogoMIPS : 108.00
Features : fp asimd evtstrm crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x0
CPU part : 0xd08
CPU revision : 3

I also offer the following:

cat /sys/firmware/devicetree/base/serial-number:  100000003dcd361b

and

cat /sys/firmware/devicetree/base/model:  Raspberry Pi 4 Model B Rev 1.1

EDIT:  I came across this website defining some of the features for the Pi4.  Many of the features are ARMv8.0 which seems to be a "+".  The website is:  http://javathunderx.blogspot.com/2018/11/cheat-sheet-for-cpuinfo-features-on.html

 

 

robl
robl
Joined: 2 Jan 13
Posts: 1709
Credit: 1454481721
RAC: 8753

Hey!!!!  Over in "Problems

I deleted this comment because of an enormous stupid senior moment.  

poppageek
poppageek
Joined: 13 Aug 10
Posts: 259
Credit: 2473733122
RAC: 0

Raspberry Pi 4: New Firmware

Raspberry Pi 4: New Firmware Reduces Power Consumption and Board Temperatures

 

"Few days ago, a new firmware has been released that updates the VL805 code to the version 000137ab. According to several sources, this new firmware reduces the power consumption and board temperatures by enabling the power-saving functionality in the VL805 USB 3.0 controller."

 

http://www.geeks3d.com/20191101/raspberry-pi-4-new-firmware-reduces-power-consumption-and-boards-temperatures/#more-9947

Bryant Stewart
Bryant Stewart
Joined: 30 Sep 19
Posts: 7
Credit: 784313
RAC: 0

Which client app are people

Which client app are people using for their RPi4 boards? N30DG-ARM's RPi3 BRP-App still?

bowguy
bowguy
Joined: 2 Oct 17
Posts: 37
Credit: 10710509
RAC: 3845

I am

I am using https://einsteinathome.org/content/high-speed-linux-brp-app-raspberry-pi-3

Recent average credit is about 1500, run time is about 13,000

Bryant Stewart
Bryant Stewart
Joined: 30 Sep 19
Posts: 7
Credit: 784313
RAC: 0

I am using the same. My

bowguy wrote:

I am using https://einsteinathome.org/content/high-speed-linux-brp-app-raspberry-pi-3

Recent average credit is about 1500, run time is about 13,000

I am using the same app. Are you PXE booting your PIs or booting from a SD card?

bowguy
bowguy
Joined: 2 Oct 17
Posts: 37
Credit: 10710509
RAC: 3845

SD card but using POE for

SD card but using POE for power.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.