RetroBSD

2.11BSD operating system for microcontrollers
It is currently Tue Jul 16, 2019 7:28 pm

All times are UTC




Post new topic Reply to topic  [ 16 posts ] 
Author Message
PostPosted: Mon Dec 28, 2015 7:07 am 
Contributor
User avatar

Joined: Sun Oct 20, 2013 3:15 am
Posts: 322
There are now ports of dhrystone, linpack, and whetstone.
Packages available.

_________________
@__briancallahan on Twitter


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 9:50 am 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
Code:
# ./dhrystone-2.1
./dhrystone-2.1: Out of space
# ./screen-3.7.1
./screen-3.7.1: Out of space
# ./whetstone-1.2
./whetstone-1.2: Out of space
# ./linpack-19960914
./linpack-19960914: Out of space
#

Basically after 10secs all above are out of space. Downloaded binaries. My Lite build is from Dec7.

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 3:34 pm 
Contributor
User avatar

Joined: Sun Oct 20, 2013 3:15 am
Posts: 322
Those aren't the binary names (are you trying to run the package tarballs directly?).
Anyhow, you need a userland with ksh, new tar, and gzip. All of those came after December 7.

_________________
@__briancallahan on Twitter


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 5:58 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
I opened the respective .tgz with winrar and uploaded the binaries with kermit to the fs.
:)
Code:
# ls -l
total 18976
-rw-r--r--  1 root  wheel  8192000 Oct 25 03:08 AAA
-rw-r--r--  1 root  wheel  8192000 Oct 25 03:18 QQQ
-rw-r--r--  1 root  wheel   428813 Oct 25 01:48 debug.log
-rw-r--r--  1 root  wheel   428813 Oct 25 03:00 debug1.log
-rw-r--r--  1 root  wheel   428813 Oct 25 05:15 debug_en
-rwxr-xr-x  1 root  wheel   122880 Dec 27 17:46 dhrystone-2.1
-rw-r--r--  1 root  wheel   428813 Oct 25 03:00 encr.log
-rwxr-xr-x  1 root  wheel   112640 Dec 27 17:37 linpack-19960914
-rwxr-xr-x  1 root  wheel    71504 Dec  9 16:14 mandel
-rwxr-xr-x  1 root  wheel    23823 Dec  8 10:10 rc4_dropn
-rwxr-xr-x  1 root  wheel   317440 Dec 27 13:49 screen-3.7.1
-rw-r--r--  1 root  wheel   120054 Oct 25 03:52 seah.bmp
-rw-r--r--  1 root  wheel   270054 Oct 25 04:23 seah1.bmp
-rw-r--r--  1 root  wheel    67854 Oct 25 04:32 seah_test.bmp
-rw

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 7:08 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
Code:
# tar xvzf dhrystone-2.1.tgz -C /
usr
usr/local
usr/local/bin
usr/local/bin/dhry
usr/local/pkg
usr/local/pkg/plists
usr/local/pkg/plists/dhrystone-2.1
# ./dhry
ksh: ./dhry: not found
# cd usr/local/bin
# ls
dhry
# ./dhry

Dhrystone Benchmark, Version 2.1 (Language: C)

Program compiled without 'register' attribute

Please give the number of runs through the benchmark: 1000000

Execution starts, 1000000 runs through Dhrystone
Execution ends

Final values of the variables used in the benchmark:

Int_Glob:            5
        should be:   5
Bool_Glob:           1
        should be:   1
Ch_1_Glob:           A
        should be:   A
Ch_2_Glob:           B
        should be:   B
Arr_1_Glob[8]:       7
        should be:   7
Arr_2_Glob[8][7]:    1000010
        should be:   Number_Of_Runs + 10
Ptr_Glob->
  Ptr_Comp:          4263936
        should be:   (implementation-dependent)
  Discr:             0
        should be:   0
  Enum_Comp:         2
        should be:   2
  Int_Comp:          17
        should be:   17
  Str_Comp:          DHRYSTONE PROGRAM, SOME STRING
        should be:   DHRYSTONE PROGRAM, SOME STRING
Next_Ptr_Glob->
  Ptr_Comp:          4263936
        should be:   (implementation-dependent), same as above
  Discr:             0
        should be:   0
  Enum_Comp:         1
        should be:   1
  Int_Comp:          18
        should be:   18
  Str_Comp:          DHRYSTONE PROGRAM, SOME STRING
        should be:   DHRYSTONE PROGRAM, SOME STRING
Int_1_Loc:           5
        should be:   5
Int_2_Loc:           13
        should be:   13
Int_3_Loc:           7
        should be:   7
Enum_Loc:            1
        should be:   1
Str_1_Loc:           DHRYSTONE PROGRAM, 1'ST STRING
        should be:   DHRYSTONE PROGRAM, 1'ST STRING
Str_2_Loc:           DHRYSTONE PROGRAM, 2'ND STRING
        should be:   DHRYSTONE PROGRAM, 2'ND STRING

Microseconds for one run through Dhrystone:   39.0
Dhrystones per Second:                      25641.0

#

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 7:26 pm 
Contributor
User avatar

Joined: Sun Oct 20, 2013 3:15 am
Posts: 322
:D
I have a diff to add /usr/local/bin to $PATH. But it hasn't been committed yet :(

_________________
@__briancallahan on Twitter


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 7:32 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
Code:
# ls
dhry    linpack
# ./linpack
Enter array size (q to quit) [200]:  200
Memory required:  315K.


LINPACK benchmark, Double precision.
Machine precision:  15 digits.
Array size 200 X 200.
Average rolled and unrolled performance:

    Reps Time(s) DGEFA   DGESL  OVERHEAD    KFLOPS
----------------------------------------------------
       1  24.21  91.12%   3.10%   5.78%     60.208

Enter array size (q to quit) [200]:  200
Memory required:  315K.


LINPACK benchmark, Double precision.
Machine precision:  15 digits.
Array size 200 X 200.
Average rolled and unrolled performance:

    Reps Time(s) DGEFA   DGESL  OVERHEAD    KFLOPS
----------------------------------------------------
       1  24.11  90.96%   3.03%   6.01%     60.606

Enter array size (q to quit) [200]:  q
#

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 7:53 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
Code:
# ls
dhry            linpack         whetstone
# ./whetstone
      0       0       0        1e+00       -1e+00       -1e+00       -1e+00
  12000   14000   12000   -1.319e-01  -1.8218e-01  -4.3145e-01  -4.8173e-01
  14000   12000   12000   2.2103e-02  -2.7271e-02  -3.7914e-02   -8.729e-02
 345000       1       1        1e+00       -1e+00       -1e+00       -1e+00
 210000       1       2        6e+00        6e+00  -3.7914e-02   -8.729e-02
  32000       1       2   9.1176e-02   9.1176e-02   9.1174e-02   9.1174e-02
 899000       1       2        1e+00        1e+00   9.9994e-01   9.9994e-01
 616000       1       2        3e+00        2e+00        3e+00   -8.729e-02
      0       2       3        1e+00       -1e+00       -1e+00       -1e+00
  93000       2       3        1e+00        1e+00        1e+00        1e+00

Loops: 1000, Iterations: 1, Duration: 865 sec.
C Converted Double Precision Whetstones: 115.6 KIPS
#

With FPU it will be 333 KIPS, my bet :)

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 10:16 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
14.6 DMIPS with LiteBSD?
RetroBSD does 22.1 DMIPS (w/ SmallerC).
Code:
          DMIPS   MHZ_CPU   DMIPS/MHZ
 LiteBSD   14.6   200        0.073
RetroBSD   22.1   80         0.27625

Hmm :?
Provided there is none bug in LiteBSD (or in the compiler), I would bet the pic32MZ does the access to ram in 4 clocks, while pic32mx in a single one..

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 10:24 pm 
Contributor
User avatar

Joined: Sun Oct 20, 2013 3:15 am
Posts: 322
I just uploaded a new version of Dhrystrone--could you try the new one and report back on the results? This new one uses the register attribute.

_________________
@__briancallahan on Twitter


Top
 Profile  
 
PostPosted: Mon Dec 28, 2015 10:36 pm 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
Code:
# ./dhry

Dhrystone Benchmark, Version 2.1 (Language: C)

Program compiled with 'register' attribute

Please give the number of runs through the benchmark: 1000000

Execution starts, 1000000 runs through Dhrystone
Execution ends

Final values of the variables used in the benchmark:

Int_Glob:            5
        should be:   5
Bool_Glob:           1
        should be:   1
Ch_1_Glob:           A
        should be:   A
Ch_2_Glob:           B
        should be:   B
Arr_1_Glob[8]:       7
        should be:   7
Arr_2_Glob[8][7]:    1000010
        should be:   Number_Of_Runs + 10
Ptr_Glob->
  Ptr_Comp:          4263936
        should be:   (implementation-dependent)
  Discr:             0
        should be:   0
  Enum_Comp:         2
        should be:   2
  Int_Comp:          17
        should be:   17
  Str_Comp:          DHRYSTONE PROGRAM, SOME STRING
        should be:   DHRYSTONE PROGRAM, SOME STRING
Next_Ptr_Glob->
  Ptr_Comp:          4263936
        should be:   (implementation-dependent), same as above
  Discr:             0
        should be:   0
  Enum_Comp:         1
        should be:   1
  Int_Comp:          18
        should be:   18
  Str_Comp:          DHRYSTONE PROGRAM, SOME STRING
        should be:   DHRYSTONE PROGRAM, SOME STRING
Int_1_Loc:           5
        should be:   5
Int_2_Loc:           13
        should be:   13
Int_3_Loc:           7
        should be:   7
Enum_Loc:            1
        should be:   1
Str_1_Loc:           DHRYSTONE PROGRAM, 1'ST STRING
        should be:   DHRYSTONE PROGRAM, 1'ST STRING
Str_2_Loc:           DHRYSTONE PROGRAM, 2'ND STRING
        should be:   DHRYSTONE PROGRAM, 2'ND STRING

Microseconds for one run through Dhrystone:   38.0
Dhrystones per Second:                      26315.8

#

That is 4x less than I would expect (~100.000 Dhr/sec would be a good result)..
Do we run the pic32MZ full speed? A problem with cache settings? Access to sram?
A process running saturates CPU?
Hmm.. :(
PS: my rc4 benchm shows Lite is 5x slower clk2clk..

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
PostPosted: Tue Dec 29, 2015 12:33 am 
Contributor
User avatar

Joined: Sun Oct 20, 2013 3:15 am
Posts: 322
I get 714,285.7 Dhrystones per second on QEMU :D

_________________
@__briancallahan on Twitter


Top
 Profile  
 
PostPosted: Tue Dec 29, 2015 7:52 am 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
So QEMU on BananaPi would be a better platform ? :lol:

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
PostPosted: Tue Dec 29, 2015 9:00 am 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
Attachment:
dhryperf.JPG
dhryperf.JPG [ 36.02 KiB | Viewed 10240 times ]

Note:
1. SmallerC (no optim) used with RetroBSD Dhry
2. Dhry VAX MIPS = Dhrystones/sec / 1757
3. Lite TO-BE - an assumption on the proper "to be" result
4. Assumption - Serge's (Retro) and Brian's (Lite) Dhry sources are basically the same :)

PS: from http://www.roylongbottom.org.uk/dhrystone%20results.htm - how the Dhrystone scales with CPU clock, an example:
Attachment:
dhry pent.JPG
dhry pent.JPG [ 90.03 KiB | Viewed 10258 times ]

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
PostPosted: Tue Dec 29, 2015 9:55 am 
Contributor

Joined: Mon Apr 29, 2013 1:56 am
Posts: 196
Pito, it wold be nice to know what those "issue" and "OK" are. Could you explain us what the problem was with MZ/Lite? (I'm assuming it's fixed now).


Top
 Profile  
 
PostPosted: Tue Dec 29, 2015 10:53 am 
Contributor
User avatar

Joined: Thu Nov 08, 2012 7:04 am
Posts: 2401
Location: Rapa Nui
I do not know what is the issue with Lite. I would be happy to know.
Lite TO-BE means an assumed - to be - result when there is none issue (table improved - added a note to above).
Is the issue fixed? Probably not when we get those Dhrystone figures..
I indicated the Lite's performance issues with rc4 and Mandelbrot I did 2 weeks ago (viewtopic.php?f=13&t=37431)
Disclaimer: That is my interpretation of the results, yours may vary, of course..
:)

_________________
Pukao Hats Cleaning Services Ltd.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 16 posts ] 

All times are UTC


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
cron




Powered by phpBB® Forum Software © phpBB Group

BSD Daemon used with permission